Mostrando entradas con la etiqueta Diccionario. Mostrar todas las entradas
Mostrando entradas con la etiqueta Diccionario. Mostrar todas las entradas

martes, 19 de abril de 2022

Archivo jboss-web.xml

El jboss-web.xml es un archivo XML que contiene el comportamiento específico de JBossWeb de una aplicación web.

Por ejemplo he necesitado cambiar el nombre del contexto de la aplicación y he añadido entre las etiquetas jboss-web  <context-root>nombre</context-root>   


martes, 29 de enero de 2019

Jenkins

Es un software de integración continua ,gratuito, open source escrito en Java y basado en Hudson.

Con la integración continua, podemos saber el estado del software, que funciona, que no y los errores que contiene.

Se puede utilizar esta herramienta para automatizar todo tipo de tareas relacionadas con la creación, prueba y entrega o implementación de software.

martes, 4 de junio de 2013

Git

Git es una sistema de control de versiones distribuido. Su forma de almacenar la información es de forma muy diferente a CVS, Subversion ..,pero su interfaz tiene una formar muy parecida.


Cada vez que se va a guardar, git hace una foto del aspecto de todos los archivos en ese momento, y guarda una referencia a esa instantánea, aquellos archivos que no han sido modificados, se guarda un enlace de la ultima copia que se tiene de ese archivo.
Otra ventaja es que casi todas sus operaciones son en local , lo que hace las operaciones más rápida, al no depender de ningun otro ordenador en la red.

Continuara......

martes, 28 de mayo de 2013

Direct Web Remoting (DWR)

Es una librería Javascript que permite el uso de Ajax  de forma mucho más simple, y sí vamos a usar Java para nuestra aplicación DWR es la mejor opción que podemos usar , otras de las ventajas de esta librería es que no necesitamos implementar servlets sino solo necesitamos clases Java POJO ya que DWR esta basado en servlets internamente.

sábado, 25 de mayo de 2013

ManagedBean

Una clase java asociada a un formulario Jsf se les denomina ManagedBean, tenemos dos formas de declarar una clase como ManagedBean:
  • En el fichero face-config.xml:
  • @ManagedBean: 
                                       import javax.faces.bean.ManagedBean
                                       import javax.faces.bean.SessionScoped
                                      @ManagedBean
                                      @SessionScoped
                                       public class NombreBean {
                                      String mensaje="Hola";
                                     
                                          public String getMensaje() {
                                            return mensaje;
                                         }

                                         public void setMensaje(String mensaje) {
                                            this.mensaje = mensaje;
                                         }
                                       }
         Si no añadimos a la anotación (name="nombre") se utilizará por defecto el nombre de la clase en      minúscula y para usarlo en la clase jsf se utiliza la siguiente sintaxis  #{nombreBean.mensaje}

jueves, 23 de mayo de 2013

Java Message Service (JMS)

Esta API es creada para solucionar los problemas de uso de colas de mensajería, permite a los componentes de aplicaciones basados en la plataforma Java2 crear, enviar, recibir y leer mensajes y hace posible la comunicación tanto de manera síncrona y asíncrona.
Forma parte de la plataforma J2EE para acceder a Sistemas de mensajería (MOM).

Existen 2 modelos de esta API:
  1. Modelo Punto a Punto:  uno envía el mensaje y otro lo recibe, el receptor envia un acuse de recibo y en caso de que no este disponible se queda guardado en un cola en espera.
  2. Modelo Publicador /Suscriptor: uno publica el mensaje y lo reciben todos los usuarios que estén suscripto al servicio donde se envió ese mensaje.
Los elementos de la Api se dividen en:
  • Clientes JMS: aplicaciones que envian o reciben mensajes a través de JMS
  • Mensajes: los mensajes que se intercambian, se componen de 3 elementos:
    • Header.
    • Properties.
    • Body.
  • Objetos administrados: para enviar o recibir mensajes los clientes tienen que conectarse por medio de los objetos. Hay dos tipos de objetos administrados en JMS:
    • ConnectionFactory: Se usa para crear una conexión al proveedor del sistema de mensajes.
    • Destination: Son los destinos de los mensajes que se envían y el recipiente de los mensajes que se reciben.
 Para enviar o recibir mensajes tienen que tener una serie de pasos :
  • Conseguir un objeto ConnectionFactory a través de JNDI.
  • Conseguir un destino, mediante el objeto Destination a través de JNDI.
  • Usar ConnectionFactory para conseguir un objeto Connection.
  • Usar Destination para crear un objeto Session.
Desde la versión 1.3 de la plataforma J2ee viene integrado esta API:

lunes, 16 de enero de 2012

Encapsulación

Este concepto consiste en la ocultación del estado o de los datos miembro de un objeto, de forma que sólo es posible modificar los mismos mediante los métodos definidos para dicho objeto.

Cada objeto está aislado del exterior, de forma que la aplicación es un conjunto de objetos que colaboran entre sí mediante el paso de mensajes invocando sus operaciones o métodos. De esta forma, los detalles de implementación permanecen "ocultos" a las personas que usan las clases, evitando así modificaciones o accesos indebidos a los datos que almacenan las clases.

Además, el usuario de la clase no se tiene que preocuparse de cómo están implementados los métodos y propiedades, concentrándose sólo en cómo debe usarlos.

La encapsulación es una de las principales ventajas que proporciona la programación orientada a objetos.

miércoles, 14 de octubre de 2009

Datawarehouse

http://www.sinnexus.com/business_intelligence/datawarehouse.aspx

Datamart

Un Datamart es una base de datos departamental, especializada en el almacenamiento de los datos de un área de negocio específica. Se caracteriza por disponer la estructura óptima de datos para analizar la información al detalle desde todas las perspectivas que afecten a los procesos de dicho departamento.

Por tanto, para crear el datamart de un área funcional de la empresa es preciso encontrar la estructura óptima para el análisis de su información, estructura que puede estar montada sobre una base de datos OLTP, como el propio datawarehouse, o sobre una base de datos OLAP. La designación de una u otra dependerá de los datos, los requisitos y las características específicas de cada departamento. De esta forma se pueden plantear dos tipos de datamarts:

  • Datamart OLAP --> Se basan en los populares cubos OLAP, que se construyen agregando, según los requisitos de cada área o departamento, las dimensiones y los indicadores necesarios de cada cubo relacional. El modo de creación, explotación y mantenimiento de los cubos OLAP es muy heterogéneo, en función de la herramienta final que se utilice.
  • Datamart OLTP -- >Pueden basarse en un simple extracto del datawarehouse, no obstante, lo común es introducir mejoras en su rendimiento (las agregaciones y los filtrados suelen ser las operaciones más usuales) aprovechando las características particulares de cada área de la empresa. Las estructuras más comunes en este sentido son las tablas report, que vienen a ser fact-tables reducidas (que agregan las dimensiones oportunas), y las vistas materializadas, que se construyen con la misma estructura que las anteriores, pero con el objetivo de explotar la reescritura de queries (aunque sólo es posibles en algunos SGBD avanzados, como Oracle).

Información sacada del siguiente enlace:
http://www.sinnexus.com/business_intelligence/datamart.aspx

Alterian

Es un software cuyo funcionamiento se basa en bases de datos optimizadas con el fin de realizar consultas mas rapidas sobre una cantidad de datos grandes.

Para ello el SGBD indexas las columnas y traspone las filas de las tablas por columnas.

lunes, 28 de septiembre de 2009

Lenguaje Ensamblador

Lenguaje de bajo nivel que se utiliza para escribir programas informaticos.Estos programas son generalmente más rápidos y consumen menos recursos del sistema.

lunes, 31 de agosto de 2009

SimpleDateFormat

La clase SimpleDateFormat nos ayuda a mostrar las fechas en el formato que queramos o a reconstruirlas a partir de una cadena de texto.

Si queremos por ejemplo obtener un fecha en formto dd/mm/aaaa seri de la siguente forma:

SimpleDateFormat parsear = new SimpleDateFormat("dd/MM/yyyy");

pasear.format(fecha);

Donde fecha es la que vamos a formatear.

Podemos realizar otras funciones para mas información mirar en la API

jueves, 2 de julio de 2009

Jaxb

http://www.programacion.com/java/tutorial/jaxb/

lunes, 22 de junio de 2009

Crear Excel desde Java

Introducción
POI consiste en APIs para manipular varios formatos de ficheros basados en el formato de Documento Compuesto OLE 2 de Microsoft, utilizando Java puro. En concreto, se pueden leer y escribir ficheros MS Excel utilizando Java.

Voy a poner un ejemplo que yo tuve que hacer:

public class Prueba(){

public String actionExportarExcel(){
ExportarUtils exportar= ExportarUtils.getInstance();
Vector v= new Vector();
// cabecera del excel
v.addElement("Cabecera1, cabecera2,....");
v.addElement(dato1, dato2,dato3,........);

// Generar el fichero
try {
exportar.crearExcel(v, "Titulo", "nombreFichero.xls");
} catch (Exception e) {
log.debug(e.getMessage());
}
return null;
}
}//fin de clase

//Clase para la preparacion del fichero Excel

import java.io.FileOutputStream;
import java.io.InputStream;
import java.util.StringTokenizer;
import java.util.Vector;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFFont;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;



public class ExportarUtils {
private ExportarUtils() {
}

public static ExportarUtils getInstance() {
if (singleton == null) {
singleton=new ExportarUtils();
}
return singleton;
}

public static void createCell(HSSFRow row, short i, String value, HSSFCellStyle style) {
HSSFCell cell = row.createCell(i);
value = value+" ";
cell.setCellValue(value);
// si no hay estilo, no se aplica
if (style != null)
cell.setCellStyle(style);
}

public void crearExcel(Vector v, String namesheet, String filename)
throws Exception {
try {
workbook = new HSSFWorkbook();
HSSFSheet sheet=workbook.createSheet("Nueva Hoja");
int filas = v.size();
for (int i = 0; i < filas; i++) {
String fila = (String) v.elementAt(i);
StringTokenizer st = new StringTokenizer(fila, ",");
HSSFRow row = sheet.createRow((short) i);
int j = 0;
while (st.hasMoreTokens()) {
String token = st.nextToken();
// para la cabecera, la primera fila, aplicamos un estilo (negrita y color de fondo azul)
if (i == 0) {
HSSFCellStyle style = workbook.createCellStyle();
//style.setFillForegroundColor(IndexedColors.BLUE_GREY.getIndex()); );

style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
HSSFFont font = workbook.createFont();
font.setFontHeightInPoints((short)10);
font.setFontName("Courier New");
font.setItalic(true);
// font.setStrikeout(true);
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
//font.setColor(Short.parseShort("#ffffff"));
style.setFont(font);
createCell(row, (short)j, token, style);
} else
createCell(row, (short)j, token, null);

j = j + 1;

}

}

// Asignar automaticamente el tamaño de las celdas en funcion del contenido
//for (int i = 0; i < filas; i++) {
sheet.setDefaultColumnWidth((short) 55);
// }

// Escribir el fichero.
FileOutputStream fileOut = new FileOutputStream(filename);
workbook.write(fileOut);
fileOut.close();

} catch (Exception e)
{
e.printStackTrace();
}
}


Aui en este enlace bien mejor explicado POI

miércoles, 10 de junio de 2009

Problema con File

Necesitaba saber si un fichero es correcto o no y para ello utilicé :

File fichero = new File(rutaFichero);
if(fichero.exists()){

}

Pues esto siempre me decía que no existía ese fichero cuando si existía perfectamente.Entonces vi que había una opción de createNewFile() lo utilicé en vez del exists() y esto si me funcionaba, y me dijeron que esto podía ser porque File crea una referencia pero puede ser que todavía no se ha relacionado con el fichero físico y por eso me daba siempre false al comprobarlo con exists().

Una vez hecho esto del createNewFile ya si podemos hacerle el exists().

martes, 9 de junio de 2009

INNER CLASS

Una clase embebida es una clase que se define dentro de otra.

Se puede definir una clase embebida de la siguiente forma:
class Externa {
. . .
class Interna {
. . .
}

Una diferencia importante es que un objeto de la clase embebida está relacionado siempre con un objeto de la clase que la envuelve, de tal forma que las instancias de la clase embebida deben ser creadas por una instancia de la clase que la envuelve. Desde el exterior estas referencias pueden manejarse, pero calificandolas completamente, es decir nombrando la clase externa y luego la interna. Además una instancia de la clase embebida tiene acceso a todos los datos miembros de la clase que la envuelve sin usar ningún calificador de acceso especial (como si le pertenecieran).

miércoles, 20 de mayo de 2009

Métodos y Variables estáticas

Los utilizamos para realizar acciones que no están asociados a ningún objeto en particular, son
comunes para todos los objetos de la clase.

Para acceder a ellos ponemos NombreClase.metodoStatic, no se instancia como los métodos y variables objetos.

No conviene usar muchos métodos estáticos, pues si bien se aumenta la rapidez de ejecución, se pierde flexibilidad, no se hace un uso efectivo de la memoria y no se trabaja según los principios de la Programación Orientada a Objetos.

Para crear atributos o métodos estaticos se usa la palabra static.
static String nombre
static int nombreMetodo(){}

lunes, 18 de mayo de 2009

Errores de lógica

Los errores de lógica son conocidos como BUGS. Estos son los errores que nos tomarán tiempo hasta encontrarlos
Puede costar encontrarlo y para ello hacemos el debug cuando suceden errores de lógica, para ir viendo pasao a paso el programa y ver donde hemos podio fallar.

Errores de ejecución

Los errores en tiempo de ejecución son errores que aparecen mientras se ejecuta su programa. Estos errores aparecen normalmente cuando su programa intenta una operación que es imposible que se lleve a cabo.

Errores de compilación

Los errores de compilación son errores que impiden que su programa se ejecute, es decir si el compilar Java (javac) no puede reconocer la sentencia,este devuelve un mensaje de error, usualmente con una línea de código de referencia. También se conoce a los errores de sintaxis como errores en tiempo de compilación.