Java Conversion Utils
Java – comparing strings
Use == for primitive data types like int
If (mystring == null)
Use the equals() method to compare objects
Use .equals for strings : if (a.equals(“cat”))
Java - Converting int to string
String myString = Integer.toString(my int value) or String str = “” + i
Java - Converting String to int
int i = Integer.parseInt(str); or int i = Integer.valueOf(str).intValue();
double to String:
String str = Double.toString(i);
long to String:
String str = Long.toString(l);
float to String:
String str = Float.toString(f);
String to double:
double d = Double.valueOf(str).doubleValue();
String to long:
long l = Long.valueOf(str).longValue(); or long l = Long.parseLong(str);
String to float:
float f = Float.valueOf(str).floatValue();
decimal to binary:
int i = 42;
String binstr = Integer.toBinaryString(i);
decimal to hexadecimal:
int i = 42; String hexstr = Integer.toString(i, 16); or String hexstr = Integer.toHexString(i); or (with leading zeroes and uppercase) public class Hex { public static void main(String args[]){ int i = 42; System.out.print (Integer.toHexString( 0×10000 | i).substring(1).toUpperCase()); } }
hexadecimal to integer:
int i = Integer.valueOf(”B8DA3″, 16).intValue(); or int i = Integer.parseInt(”B8DA3″, 16);
ASCII code to String
int i = 64;
String aChar = new Character((char)i).toString();
integer to ASCII code (byte)
char c = ‘A’;
int i = (int) c; // i will have the value 65 decimal
integer to boolean
b = (i != 0);
boolean to integer
i = (b)?1:0;
Paso de parámetros entre paginas jspx.
Passing parameters between jspx pages
Cuando trabajamos en ADF Faces muchas veces tenemos la necesidad de pasarnos información entre páginas. Pero no queremos hacerlo mediante la url del tipo http://url?parametro=valorparametro.
Para ello podemos usar la map de sesión, donde iremos añadiendo los parámetros que queramos antes de efectuar la regla de navegación que nos lleva a la pagina destino, la cual queremos que reciba los parámetros.
FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("param","valorparam");
Para recogerlo:
FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("param");
Nota: esta no es la única forma de pasar parámetros entre paginas.
Logging ADF
How to use and configure ADF Logger
El sistema de trazas o logging que utiliza ADF se denomina Java Logging . Este sistema de trazas no requeire el uso de ninguna librería extra ya que viene incluida en el propio JDK, desde la version 1.4.
Para poder hacer uso de este sitema de trazas en nuestro proyecto bastara con registrar un logger en la clase:
private static Logger logger = Logger.getLogger("milog");
logger.info("info");
logger.fine("fine");
El fichero dec onfiguración del sistema de trazas se llama logging.properties y se encuentra en: /jdk/jre/lib/logging.propertiesTambién podemos indicar un fichero propio, en tiempo de diseño, idicándolo en JDEV_HOME/jdev/bin/jdev.conf mediante la siguiente linea:
AddVMOption -Djava.util.logging.config.file=path y nombre del fichero propertiesPor otro lado todos los loggers que ADF utiliza los tiene registrados y configurados en el fichero j2ee-logging.xml que lo encontramos…
Dentro del Jdeveloper en: /jdev/system/oracle.j2ee.10.1.3.xx.xx/embedded-oc4j/config
en el OAS: /j2ee//config
Y en un OC4J en: /j2ee/home/configOtra opción, y quizá la mas extendida, es configurar nuestro proyecto para Jakarta-Log4j.
Mas información: ADF-Logging
Extracción de ficheros desde JAR
Creating the self-extracting jar file
Hace ya algún tiempo recibí, un correo consultandome sobre la extracción de ficheros desde un jar. Es decir, como extraer ficheros desde el jar que se esta ejecutando, en tiempo de ejecución.
Mas concretamente, el tema era el siguiente: Desplegar una aplicación en formato JAR, mediante JavaWebStart, y al ejecutar la aplicación extraer una serie de ficheros de configuración del propio jar y copiarlos en un lugar determinado.
Lo principal es como conseguir la URL de nuestro JAR y jugar con la clase ZipFile para extraer los archivos del mismo.
myClassName = this.getClass().getName() + ".class"; URL urlJar = this.getClass().getClassLoader().getSystemResource(myClassName);
Les dejo un articulo de javaworld donde se trata este tema con mas profundidad.
Crear Thumbnails de imágenes en Java con JIMI
How to create image thumbnails programmatically cropping a region of an image instead of scaling it. We explain how JIMI (Java Image Management Interface) can provide a easy solution.
Si lo que queremos es generar una imagen en miniatura a partir de otra imagen, dentro de una aplicación java, pero con un tamaño fijo, podemos hacerlo de una forma muy sencilla. Para ello necesitamos la librería JIMI (Java Image Management Interface), una api propia de Sun para leer, crear y manipular imágenes en múltiples formatos.
En nuestro caso estamos desarrollando en struts una galeria de imágenes al estilo de Flickr y necesitamos crear miniaturas de las imágenes con un HxW fijo, por ejemplo 100×100, sin modificar la imagen al escalarla. Por lo que si la imagen original es rectangular para evitar deformarla necesitamos recortar una parte de ésta con las medidas adecuadas, con JIMI es posible.
Primero, necesitamos incluir las clases de JIMI en nuestro proyecto, para ello primero descargamos la librería en la página oficial de Sun:
http://java.sun.com/products/jimi/
Después descomprimimos el zip en local, renombramos el archivo JimiProClasses.zip como jimi-1.0.jar y lo copiamos en el path /WEB-INF/lib de nuestro proyecto y lo añadimos al Build Path del proyecto desde Eclipse:
Project –> Properties –> Java Build Path –> pestaña Libraries –> Add JARs…
Una vez hecho este paso nuestra aplicación ya puede reconocer las clases de jimi, lo último que queda por hacer es incluir este pequeño código:
import java.awt.image.*;
import com.sun.jimi.core.Jimi;
(...)
ImageProducer p1=Jimi.getImageProducer("image.jpg");
ImageFilter f=new CropImageFilter(0,0,100,100);
ImageProducer p2=new FilteredImageSource(f, p1);
Jimi.putImage(p2, "image.jpg");
Instalar JDK en Ubuntu Feisty(7.04)
How to install jdk in Ubuntu Feisty
La opción mas rápida y sencilla es hacerlo, como casi todo, desde los repositorios.
Pero muchas veces queremos una JDK concreta para nuestro trabajo o proyecto, por eso aqui explicaremos la manera de instalar el JDK que hayamos descargado de la web de Sun.
Una vez tengamos descargado el archivo,en nuestro caso jdk-6-linux-i586.bin
Le damos permiso de ejecucion y lo instalamos:
chmod +x jdk-6-linux-i586.bin $ sudo ./jdk-6-linux-i586.bin
Una vez instalado el JDK.
Seteamos el nuevo Java como una de las “alternativas de java”:
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/local/jdk1.6.0/bin/java" 1 sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/local/jdk1.6.0/bin/javac" 1
Finalmente configuramos que java queremos tener por defecto. Y a programar!
sudo update-alternatives --config java
Mas información en la guía ubuntu
Eclipse: proyectos con diferentes versiones de java y Tomcat
How to change java jdk and Tomcat version in Eclipse
Si trabajamos con varios proyectos java en Eclipse, cada uno de ellos con una versión diferente de jdk o una versión diferente de Tomcat deberemos configurar a cada momento Eclipse con el consecuente lío. Podemos volvernos locos con este tema ya que hay varios sitios donde se debe cambiar:
Para cambiar el tomcat de 4.1 a 5.0 por ejemplo:
Vamos a Window –> Preferences –> Tomcat –> en Tomcat version seleccionamos la versión 5.0, y en Tomcat home seleccionamos el path
En la misma rama Tomcat (la abrimos) –> Advanced –> en Tomcat base seleccionamos la versión
Para cambiar la versión de java de 1.4 a 5.0 por ejemplo:
Vamos a Window –> Preferences –> Java –> Compiler –> Compiler compliance level y seleccionamos la 5.0
Menú Dinámico con ADF
Fetishcode sigue colaborando con el equipo de Jdeveloperla
Hace unos días hemos subido un articulo sobre la Construcción de un Menú Dinámico en ADF/JSF en el portal de Jdeveloperla.
Aqui tienen el enlace, Construcción de un Menú Dinámico con ADF
Espero que les sea de utilidad.
JDeveloper 10.1.3.3 Available
Guia rápida: eclipse-tomcat
A fast guide for the eclipse-tomcat installation.
Nuevos proyectos y nuevas secciones en nuestro blog.
Ahora que voy a volver a trabajar con Struts, he tenido que recordar los primeros pasos a la hora de crear un proyecto web con Eclipse y Tomcat, os dejó aquí una guía rápida de instalación del entorno Tomcat- Eclipse.