Está en la página 1de 108

Facultad de Ingeniera

Industrial
Departamento de
Ingeniera Informtica










RESPONSABLES DEL PROYECTO :






Ing. Jorge L. Sandoval Rivera.

Ing. Pedro Criollo Gonzles

ndice
Pgina
Resumen
Introduccin
Materiales y mtodos
Resultados y discusin
Conclusiones y recomendaciones
Esquema del contenido

Capitulo I: Terminologa y Entornos de Desarrollo Integrado 10
1.- Terminologa
1.1. JRE ("Java Runtime Environment")
1.2. JDK,SDK,J2SE
1.3. J2EE (Java 2 Enterprise Edition)
1.4. Otros detalles de Importancia al trabajar con estos ambientes.
1.4.1. CLASSPATH
1.4.2. JARS
1.4.3. Recomendacin para J ARS y CLASSPATH

2. Entornos de Desarrollo Integrado
2.1. IDE's del Lenguaje de Programacin J ava
2.1.1. JCreator
2.1.2. Eclipse
2.1.3. NetBeans
2.1.4. JDeveloper

Capitulo II: IDE ORACLE JDEVELOPER 19
2.1. Historia
2.2 Caractersticas
2.3. Ventajas
2.4. Interfaz principal


Capitulo III: Conociendo el Entorno de JDeveloper 24
3.1. Introduccin al editor grfico
3.2. Creando una primera aplicacin
3.2.1. Iniciar Jdeveloper
3.2.2. Crear la aplicacin
3.2.3. Crear una clase
3.3. Explorando el editor de cdigo
3.3.1. Plantillas de cdigo
3.4. Compilar y ejecutar una clase
3.5. Trabajando con el asistente de cdigo (code assist)
3.6. Refactoring code
3.7. Ver Historial de Modificacin de cdigo
3.8. Navegando a travs del cdigo
3.9. Depuracin de programas

Capitulo IV: Desarrollo de Aplicaciones 62
4.1. Desarrollo de una aplicacin de escritorio
4.2. Aplicacin Conversin de temperaturas
4.3. Creando Tablas
4.4. Base de Datos
4.4.1. Conexin a la base de datos
4.4.2. Creando interfaz de acceso a la base de datos

BIBLIOGRAFIA
ANEXOS

Resumen
El presente manual contiene informacin sobre el manejo del entorno de desarrollo
integrado Oracle J Developer con el lenguaje de programacin orientado a objetos java.
Aqu podemos encontrar la descripcin de cmo trabajar en este IDE, as como una
descripcin del contexto de este entorno.
Para poder utilizar este entorno de desarrollo se debe tener conocimientos del lenguaje
de programacin java tanto a nivel de consola como en entorno grfico y as poder
desarrollar aplicaciones de propsito general con java y applets.
Se ha dado un enfoque principalmente al uso del IDE Oracle JDeveloper, a pesar que se
utiliza con el lenguaje de programacin java, el trabajo esta orientado bsicamente a
utilizar java dentro de este entorno de desarrollo, explotar las ventajas del editor de
texto, los navegadores tanto de aplicaciones como de base de datos, la paleta de
componentes, su herramienta de dibujo que traduce los objetos en cdigo de java,
El manual esta diseado de tal manera que el aprendizaje del lenguaje de programacin
java con este entorno de desarrollado integrado sea sencilla y esta estructurado de la
siguiente manera:
El primer capitulo, presenta los aspectos bsicos y necesarios que permitan al alumno
entender el siguiente capitulo. Aspectos como la terminologa que diferencian los
diferentes programas o software como JRE, JDK, J2SE, SDK, JDEE, J ARS, etc.
Tambin la definicin de un IDE, los diferentes IDEs que existen para diferentes
lenguajes de programacin incluido java.

El segundo capitulo esta enfocado bsicamente a describir el software JDeveloper, la
historia, caractersticas, ventajas y la interfaz principal de este programa.

El tercer capitulo esta diseado para explorar las ventajas de este IDE, se presentan
ejemplos de aplicaciones sobre las diversas herramientas como el editor de cdigo,
plantillas de cdigo, renombrar elementos de los programas, navegar por el cdigo, etc.

El cuarto capitulo incluye el desarrollo de aplicaciones desde una aplicacin bsica
hasta aplicaciones con base de datos, tratando de mostrar todas las bondades del
entorno de desarrollado integrado Oracle Jdeveloper.

INTRODUCCIN
El presente trabajo de investigacin enfoca el desarrollo de aplicaciones de escritorio en
el lenguaje de programacin java, utilizando el IDE Oracle JDeveloper 10.1.3.5.

Todo usuario desarrollador de aplicaciones de escritorio en el lenguaje de programacin
orientado a objetos java, conoce que el lenguaje de programacin java no cuenta con un
editor de texto para poder escribir los programas fuentes, en todo caso tendra que usar
programas accesorios del sistema operativo que utilice, para el caso nuestro es block de
notas en la plataforma Windows XP.

Es sta una de las tantas razones por la cual los usuarios desarrolladores optan por
elegir un Entorno de Desarrollado Integrado (IDE) de los muchos que existen en el
mercado informtico. Existen IDEs para los diferentes usuarios que pueden realizar
aplicaciones caseras, empresariales, profesionales, etc.

Para nuestro caso el IDE elegido es Oracle JDeveloper 10.1.3.5. , que es un software
libre y cuenta con un entorno de trabajo multidisciplinario, esto es desarrollar
aplicaciones: de escritorio, para servidor, para mviles, para clientes de una red, enlaces
con base de datos, etc.

Esto lo hace un IDE competente, razn por la cual se eligi para aplicarlo en la parte
prctica de los cursos de programacin de computadoras, especialmente en el curso de
Programacin II del plan de estudios de la Escuela de Ingeniera Informtica de la
Facultad de Ingeniera Industrial de la Universidad Nacional de Piura.

En el curso de Programacin II, se imparten conocimientos para desarrollar aplicaciones
con Interfaz Grafica de Usuario (GUI) con el lenguaje de programacin orientado a
objetos java y aqu el IDE Oracle JDeveloper proporciona una herramienta grfica para
poder dibujar la Interfaz Grafica de Usuario de una aplicacin de escritorio as como
todos los componentes necesarios, La ventaja esta en el hecho que al dibujar los
diferentes objetos el IDE genera automticamente la estructura del programa as como
las instrucciones (cdigo) que son resultado de los objetos incluidos en la interfaz
principal.


Materiales y Mtodos
Materiales
Los materiales que se han empleado los podemos dividir en dos grupos:
Hardware y Software
Hardware:
Una computadora para la instalacin del programa JDeveloper, el desarrollo y
prueba de las clases que conforman las diferentes aplicaciones
proporcionadas como ejemplos.
Impresora

Software:
Sistema operativo Windows XP
Lenguaje de Programacin Java
o Kit de herramientas: J2DK1.5.0_08, JRE1.5.0_08
o Entorno de Desarrollo de aplicaciones (IDE) Oracle JDeveloper
Office 2007
Navegador Internet Explorer 7.0
Navegador FireFox

Mtodos
Se ha empleado el mtodo de investigacin analtico deductivo.
Primero se realiz una recopilacin de informacin para conocer todas las
clases que conforman el paquete grfico de java, determinar la jerarqua de
las clases basadas en componentes y contenedores, el soporte terico que va
a permitir realizar aplicaciones robustas y seguras.
A continuacin se enfoc y analiz el problema desde el punto de vista de la
facilidad que debe tener el alumno en la secuencia de aprendizaje del lenguaje
de programacin java con la herramienta integrada de desarrollo Oracle
JDeveloper.

Resultados y Discusin

Considerando los resultados de las pruebas realizadas al utilizar el IDE JDeveloper a
alumnos que anteriormente haban utilizado el IDE JCreator, se concluye que este
software proporciona al alumno ahorro de tiempo, al escribir considerablemente menor
lneas de cdigo ya que el software tiene herramientas como plantillas de cdigo que
permiten insertar cdigo predefinido en el programa a desarrollar as como documentar
el programa a travs de javadoc, modificar cdigo a travs de refactoring code, llevar un
historial de las acciones realizadas y principalmente su herramienta de dibujo de objetos
que permiten automatizar la generacin de cdigo en el programa.
Las pruebas realizadas consisten en solicitarles a travs del profesor la creacin de
programas en el lenguaje de programacin java utilizando diferentes entornos
integrados de desarrollo como JCreator, JDeveloper, NetBeans. Entonces los alumnos
podrn apreciar las ventajas de cada entorno de desarrollo y de acuerdo a las pruebas
JDeveloper esta entre los IDES preferidos.
Tambin se ha podido demostrar la facilidad con que se puede generar cdigo a partir
de los modelos o diagramas de clases que permite el IDE disear. Tambin la facilidad
para la generacin de una interfaz grafica a partir de los campos de una tabla de una
base de datos para interactuar la aplicacin con el usuario.
Asimismo se puede comprobar la facilidad de crear programas que se ejecuten en un
navegador del lado del cliente como son los applets, as como la generacin de J ARS,
que permiten empaquetar un grupo de clases.
Igualmente se puede comprobar la facilidad de ubicar los archivos que componen el
proyecto de una aplicacin, al crear el IDE un grupo de carpetas donde se almacenan los
diferentes recursos entre ellas tenemos: src (source) para agrupar las clases del
programa fuente y classes para agrupar las clases compiladas y que se interpretaran al
momento de la ejecucin del programa.





Conclusiones y Recomendaciones

Conclusiones:

Es factible demostrar como se reduce la complejidad de la programacin grfica
en java teniendo disponible un entorno de desarrollado integrado como
JDeveloper que proporciona las facilidades para escribir los programas
respectivos.

El entorno de desarrollado integrado es un software libre y que nos proporciona
todas las herramientas complementarias para desarrollar aplicaciones
empresariales tanto para escritorio como para un entorno de red.

Cualquier usuario con una computadora con los recursos bsicos en procesador,
memoria RAM y disco duro entre los principales recursos, puede copiar y
descomprimir este software que se encuentra en forma gratuita en la red Internet,
esto significa que demanda de grandes recursos de hardware tal como lo hacen
otros entornos de desarrollo y esto va a perjudicar el rendimiento del equipo.

Este IDE, permite disear aplicaciones con el patrn Modelo-Vista-Controlador,
creando la estructura necesaria para albergar cada elemento del patrn en forma
ordenada.

Este IDE tambin nos da la facilidad de agregar libreras de java, que no estn
incluidas como parte de su API y que lo requieran algunas aplicaciones como
por ejemplo al interactuar con una base de datos se necesita agregar el driver o
controlador del gestor de base de datos con el que se va a interactuar, al entorno
de desarrollo para tener completos los elementos que necesita la aplicacin.




Recomendaciones:

Se puede seguir apoyando el aprendizaje de los alumnos del curso de
programacin con java de la institucin anteriormente mencionada, si se
proporciona informacin agrupada en un manual de otros temas que este IDE
como es el JDeveloper puede facilitar como es la creacin de Servlets, JSP,
Mtodos Remotos, que este trabajo no incluye en sus objetivos.

Inculcar en los usuarios de este lenguaje como son los alumnos de la Escuela de
Ingeniera Informtica de la Facultad de Ingeniera Industrial de la Universidad
Nacional de Piura que al iniciar el aprendizaje del diseo de programas con java
es necesario utilizar inicialmente las herramientas donde el alumno debe
aprender a crear la estructura del programa de tal manera que al utilizar el IDE
debe comprender la estructura para que a partir de ah realizar las
modificaciones al programa para adaptarlo a sus necesidades

Reproducir este manual para que de alguna manera ponerlo a disposicin de los
alumnos de programacin grfica con java y as facilitar el aprendizaje del
mismo.


10
CAPITULO I: TERMINOLOGIA Y ENTORNOS DE
DESARROLLO INTEGRADO (IDE)

1.- Terminologa
Adems de la amplia terminologa individual que existe en Java, existen diversos
componentes ("KITS") que agrupan estas funcionalidades, y son estos
componentes con los que se trabaja "da a da" en proyectos Java.

1.1. JRE ("Java Runtime Environment")
Como su nombre lo indica este ambiente ("KIT") es utilizado solo para ejecutar
("Runtime") programas en J ava. Esta situacin se da cuando empresas de
Software disean alguna interfase grfica o aplicacin en Java para su
producto. Cabe mencionar que muchos productos que utilizan Java para su
interfase grfica o instalacin ya incluyen un JRE para evitarle la molestia de
instalarlo, uno de estos es Oracle ; sin embargo, muchos productos requieren
que usted posea este ambiente, si se pregunta: Porque me hacen que obtenga
forzosamente este JRE ? Una de las principales razones es costo ya que las
empresas deben pagar a Sun por distribuir este ambiente en su producto.

1.2. JDK,SDK,J2SE
"Java Development Kit"(JDK),"Standard Development Kit" (SDK) y "J ava 2
Standard Edition" (J2SE) son nombres para el mismo componente e incluyen:
El API de Java, el JRE ( JVM ), compilador de Java y otras funcionalidades
definidas por Sun. Si no esta familiarizado programando en J ava, el API de
Java es un conjunto de clases que es utilizado para generar programas bsicos
en el lenguaje; utilizando una analoga, estas clases tienen la misma
funcionalidad que las funciones|clases estndar utilizadas en otros lenguajes
C,C++, Perl (Esto es precisamente la definicin de API ("Application
Programming Interface")).
Partiendo de estas clases (API de Java) se generan TODOS los programas,
interfaces y elementos programados en Java, inclusive a partir de estas clases
usted puede definir otras clases especificas que sern utilizadas por su
programa o producto. Una vez que defina sus programas|clases en Java an es
11
necesario compilarlas para producir lo que es denominado byte-code o class
files (este byte-code puede ser comparado con un binario) , y es este byte-code
el que interpreta el J RE("Java Runtime Environment").Este byte-code es el que
directamente ofrece la interoperabilidad de Java o el afamado "Write once run
everywhere"="Escrbalo una vez ejectelo en todos lados".
Es una cantidad razonable de trabajo la que realiza el JDK|SDK, y por el hecho
de incluir tanto el compilador,API Java y el JRE existen diversas
implementaciones de JDK: JDK's de Sun (o J2SE) y JDK's de IBM.

1.3. J2EE (Java 2 Enterprise Edition)
J2EE es un grupo de especificaciones diseadas por Sun que permiten la
creacin de aplicaciones empresariales, esto sera: acceso a base de datos
(JDBC), utilizacin de directorios distribuidos (JNDI), acceso a mtodos
remotos (RMI/CORBA), funciones de correo electrnico (JavaMail),
aplicaciones Web(JSP y Servlets)...etc. Aqu es importante notar que J2EE es
solo una especificacin, esto permite que diversos productos sean diseados
alrededor de estas especificaciones algunos son Tomcat y Weblogic ; la
especificacin ms reciente de Sun es J2EE 1.4 , la cual esta conformada por:
JSP 2.0 ,Servlet 2.4, EJB 2.1 y Connector 1.5 entre otros API's.
Aunque varios productos Java estn diseados alrededor de estas
especificaciones, no todos cumplen con el estndar completo, esto es, Tomcat
solo emplea|cumple las especificaciones de JSP y Servlets, sin embargo,
existen productos como Websphere y algunos otros "Java Application Servers"
que son considerados "Fully J2EE Compliant" , en otras palabras, cumplen con
todas las especificaciones definidas por Sun.
Sun ofrece una implementacin de TODAS estas especificaciones llamada
J2EE SDK , a pesar que el J2EE SDK es una implementacin, esta es solo una
muestra ofrecida por Sun para utilizar las funcionalidades de las
especificaciones J2EE, aunque funcionara en un Sistema de Produccin su
diseo es poco escalable.

1.4. Otros detalles de Importancia al trabajar con estos ambientes.
1.4.1. CLASSPATH
Es una variable de ambiente en su sistema extremadamente importante ya
12
que le indica al JDK donde se encuentran las clases que sern utilizadas al
compilar un programa, el CLASSPATH puede estar compuesto por
diversos directorios o JARS, como se muestra a continuacin:

CLASSPATH=/usr/local/tomcat/lib/servlet.jar:/usr/local/enhydra/lib/enhydra.jar:
/home/JavaPrograms3:/usr/local/xml:/usr/local/xml/xp.jar:/usr/local/java_lib:
/usr/local/jsdkee/lib/j2ee.jar:/usr/local/jdk/jre/lib/ext/jndi.jar:
/usr/local/java_lib/postgresql.jar

Cuando se utiliza un directorio, el JDK buscar dentro de ste las clases
correspondientes, ntese que cuando se emplea un J AR debe especificarse
el archivo completo , si el J AR se encuentra dentro de un directorio no
ser encontrado al menos que se indique el archivo JAR especficamente.
Por lo general debe agregar este CLASSPATH al archivo /etc/bashrc para
que sea definido para todo usuario del sistema.

1.4.2. JARS:
Es un grupo de clases comprimidas; una vez que defina 200 o 300 clases
en Java puede agruparlas para formar lo que es denominado "J AR File",
este JAR file puede ser considerado un ZIP o TAR file utilizado en
cualquier sistema de computo, la ventaja de los JAR files es su
compresin y la reduccin de carga administrativa al movilizar clases .

1.4.3. Recomendacin para JARs y CLASSPATH
Para evitar las dificultades de actualizar la variable CLASSPATH en cada
ocasin que sea agregada alguna clase:
CLASES GENERALES: Generar un directorio global java_lib e
incluirlo dentro del CLASSPATH, de esta manera si adquiere clases de
postgres, objectspace o osmosislatina puede incluirlas dentro de este
directorio y evita problemas de manutencin, concentrando
efectivamente todas las clases adicionales utilizadas por el JDK en un
solo directorio.
13
J ARS: Los archivos J AR son menos amigables al momento de intentar
concentrarlos en directorios, ya que como se menciono anteriormente es
necesario declararlos directamente en CLASSPATH. Para evitar estas
limitaciones es posible agregar los archivos J AR al directorio
$J AVA_HOME/jre/lib/ext/ donde $J AVA_HOME es el directorio raz
del JDK , cualquier archivo J AR dentro de este directorio estar
disponible al ambiente Java, como si ste hubiera sido declarado en
CLASSPATH.

2. Entorno de Desarrollo Integrado
Un entorno de desarrollo integrado o IDE
1
(acrnimo en ingls de integrated
development environment), es un programa informtico compuesto por un conjunto
de herramientas de programacin.
Puede dedicarse en exclusiva a un slo lenguaje de programacin o bien, poder
utilizarse para varios.


Dev C++, un IDE para el lenguaje de
programacin C++.



WebDevStudio, un IDE en lnea para el
lenguaje de programacin C/C++.


1
Obtenido de http://es.wikipedia.org/wiki/Entorno_de_desarrollo_integrado
14
Un IDE es un entorno de programacin que ha sido empaquetado como un
programa de aplicacin, es decir, consiste de:
Editor de texto cdigo
Compilador
Interprete
Depurador
Constructor de interfaz grfica (GUI).
Los IDEs pueden ser aplicaciones por s solas o pueden ser parte de aplicaciones
existentes. El lenguaje Visual Basic, por ejemplo, puede ser usado dentro de las
aplicaciones de Microsoft Office, lo que hace posible escribir sentencias Visual
Basic en forma de macros para Microsoft Word.
Los IDEs proveen un marco de trabajo amigable para la mayora de los lenguajes de
programacin tales como C++, Python, Java, C#, Delphi, Visual Basic, etc. En
algunos lenguajes, un IDE puede funcionar como un sistema en tiempo de
ejecucin, en donde se permite utilizar el lenguaje de programacin en forma
interactiva, sin necesidad de trabajo orientado a archivos de texto, como es el caso
de Smalltalk u Objective-C.
Es posible que un mismo IDE pueda funcionar con varios lenguajes de
programacin. Este es el caso de Eclipse, al que mediante plugins se le puede aadir
soporte de lenguajes adicionales..


2.1. IDE's del Lenguaje de Programacin Java
Mientras un JDK|SDK ofrece las herramientas para compilar y ejecutar
programas en J ava ste no ofrece un ambiente de trabajo para proyectos
complejos, esto es, si usted compila una o dos clases quizs el comando javac
ofrecido en los JDK es suficiente, pero si su proyecto estar compuesto por 100
o 200 clases, javac sera muy deficiente.Los IDE's ("Integrated Development
Environment") ofrecen un ambiente grfico en los que se tiene acceso a mayor
nmero de herramientas no ofrecidas en los JDK's: Debuggers ms elaborados,
check-points dentro de la compilacin,creacin de WAR's (Web-Archives),
"Wizards" para acelerar desarrollo, entre otras cosas. Algunos IDE's son:

NetBeans ( http://www.netbeans.org ) Open-Source
Eclipse ( http://www.eclipse.org ) Open-Source
Sun Java Studio ( http://www.sun.com/software/sundev/jde/index.xml ) de
Sun
15
JBuilder ( http://www.borland.com/jbuilder ) de Borland
WebSphere Studio ( http://www-
306.ibm.com/software/awdtools/studiositedev/ ) de IBM
JDeveloper ( http://otn.oracle.com/products/jdev/content.html ) de Oracle

2.1.1 JCreator
JCreator es la herramienta de desarrollo para cada programador que le
gusta hacer lo que mejor sabe hacer: la programacin. Es ms rpido, ms
eficiente y ms fiable que la IDE de otros. JCreator ofrece al usuario una
amplia gama de funcionalidades tales como: Gestin de proyectos,
plantillas de proyecto, el cdigo de terminacin, interfaz de depuracin,
editor con resaltado de sintaxis, magos y una interfaz de usuario totalmente
personalizable
Con J Creator directamente puede compilar o ejecutar el programa Java sin
activar el documento principal en primer lugar. JCreator encontrar
automticamente el archivo con el mtodo principal o el archivo HTML
celebracin de la applet de Java, a continuacin, se iniciar la herramienta
adecuada.
JCreator est escrito enteramente en C + +, lo que hace que sea rpido y
eficaz en comparacin con los editores basados en Java / s. IDE '

2.1.2. Eclipse
Es un entorno de desarrollo integrado de cdigo abierto multiplataforma
para desarrollar lo que el proyecto llama "Aplicaciones de Cliente
Enriquecido", opuesto a las aplicaciones "Cliente-liviano" basadas en
navegadores. Esta plataforma, tpicamente ha sido usada para desarrollar
entornos de desarrollo integrados (del ingls IDE), como el IDE de Java
llamado Java Development Toolkit (JDT) y el compilador (ECJ) que se
entrega como parte de Eclipse (y que son usados tambin para desarrollar
el mismo Eclipse). Sin embargo, tambin se puede usar para otros tipos de
aplicaciones cliente, como BitTorrent Azureus.
Eclipse es tambin una comunidad de usuarios, extendiendo
constantemente las reas de aplicacin cubiertas. Un ejemplo es el
16
recientemente creado Eclipse Modeling Project, cubriendo casi todas las
reas de Model Driven Engineering.
Eclipse es ahora desarrollado por la Fundacin Eclipse, una organizacin
independiente sin nimo de lucro que fomenta una comunidad de cdigo
abierto y un conjunto de productos complementarios, capacidades y
servicios.
Arquitectura
La base para Eclipse es la Plataforma de cliente enriquecido (del Ingls
Rich Client Platform RCP). Los siguientes componentes constituyen la
plataforma de cliente enriquecido:
Plataforma principal - inicio de Eclipse, ejecucin de plugins
OSGi - una plataforma para bundling estndar.
El Standard Widget Toolkit (SWT) - Un widget toolkit portable.
JFace - manejo de archivos, manejo de texto, editores de texto
El Workbench de Eclipse - vistas, editores, perspectivas, asistentes

Los widgets de Eclipse estn implementados por una herramienta de
widget para Java llamada SWT, a diferencia de la mayora de las
aplicaciones J ava, que usan las opciones estndar Abstract Window
Toolkit (AWT) o Swing. La interfaz de usuario de Eclipse tambin tiene
una capa GUI intermedia llamada JFace, la cual simplifica la construccin
de aplicaciones basada en SWT.
El entorno de desarrollo integrado (IDE) de Eclipse emplea mdulos (en
ingls plug-in) para proporcionar toda su funcionalidad al frente de la
plataforma de cliente rico, a diferencia de otros entornos monolticos
donde las funcionalidades estn todas incluidas, las necesite el usuario o
no. Este mecanismo de mdulos es una plataforma ligera para
componentes de software. Adicionalmente a permitirle a Eclipse
extenderse usando otros lenguajes de programacin como son C/C++y
Python, permite a Eclipse trabajar con lenguajes para procesado de texto
como LaTeX, aplicaciones en red como Telnet y Sistema de gestin de
base de datos. La arquitectura plugin permite escribir cualquier extensin
deseada en el ambiente, como sera Gestin de la configuracin.
17
La definicin que da el proyecto Eclipse acerca de su software es: "una
especie de herramienta universal - un IDE abierto y extensible para todo y
nada en particular".
El SDK de Eclipse incluye las herramientas de desarrollo de Java,
ofreciendo un IDE con un compilador de Java interno y un modelo
completo de los archivos fuente de Java. Esto permite tcnicas avanzadas
de refactorizacin y anlisis de cdigo. El IDE tambin hace uso de un
espacio de trabajo, en este caso un grupo de metadata en un espacio para
archivos plano, permitiendo modificaciones externas a los archivos en
tanto se refresque el espacio de trabajo correspondiente.
2.1.3. NetBeans
NetBeans se refiere a una plataforma para el desarrollo de aplicaciones de
escritorio usando Java y un entorno de desarrollo integrado
Esta plataforma permite que las aplicaciones sean desarrolladas a partir de
un conjunto de componentes de software llamados mdulos. Un mdulo es
un archivo Java que contiene clases de java escritas para interactuar con las
APIs de NetBeans y un archivo especial (manifest file) que lo identifica
como mdulo. Las aplicaciones construidas a partir de mdulos pueden ser
extendidas agregndole nuevos mdulos. Debido a que los mdulos
pueden ser desarrollados independientemente, las aplicaciones basadas en
la plataforma NetBeans pueden ser extendidas fcilmente por otros
desarrolladores de software.
NetBeans es un proyecto de cdigo abierto de gran xito con una gran base
de usuarios, una comunidad en constante crecimiento, y con cerca de 100
socios en todo el mundo. Sun MicroSystems fund el proyecto de cdigo
abierto NetBeans en junio 2000 y contina siendo el patrocinador principal
de los proyectos.
La Plataforma NetBeans es una base modular y extensible usada como
una estructura de integracin para crear aplicaciones de escritorio grandes.
Empresas independientes asociadas, especializadas en desarrollo de
software, proporcionan extensiones adicionales que se integran fcilmente
en la plataforma y que pueden tambin utilizarse para desarrollar sus
propias herramientas y soluciones.
18
La plataforma ofrece servicios comunes a las aplicaciones de escritorio,
permitindole al desarrollador enfocarse en la lgica especfica de su
aplicacin.
Entre las caractersticas de la plataforma estn:
Administracin de las interfaces de usuario (ej. mens y barras de
herramientas)
Administracin de las configuraciones del usuario
Administracin del almacenamiento (guardando y cargando cualquier
tipo de dato)
Administracin de ventanas
Framework basado en asistentes (dilogos paso a paso)

2.1.4. JDeveloper
JDeveloper es un entorno de desarrollo integrado desarrollado por Oracle
Corporation para los lenguajes Java, HTML, XML, SQL, PL/SQL,
Javascript, PHP, Oracle ADF, UML y otros.
Es un software propietario pero gratuito desde 2005.
Las primeras versiones de 1998 estaban basadas en el entorno JBuilder de
Borland, pero desde la versin 9i de 2001 est basado en Java, no estando
ya relacionado con el cdigo anterior de JBuilder.
Las ltimas versiones estables son:
Para JDK 6: 11.1.1.0.0 (abril de 2009)
Para JDK 5: 10.1.3.5 (agosto de 2009).



19
CAPITULO II: IDE ORACLE JDEVELOPER

2.1. Historia
La primera versin de JDeveloper (1998) fue basada en la licencia de JBuilder
producto de Borland. JDeveloper pas con una reescritura completa que se basa en
Java, para sus versiones 9i (2001). La versin 10g (9.0.5) muestra el primer
lanzamiento mejorado del Oracle En 2006, an debajo de la etiqueta 10g, y despus
de un significativo retraso, Oracle lanza la versin 10.1.3 - el lanzamiento principal
ms ltimo. En octubre de 2006 Oracle lanz la versin 10.1.3.1 que agreg la
ayuda para espec. final EJB3.0 junto con tiempo del diseo de BPEL y de ESB. En
enero de 2007 Oracle lanz la versin 10.1.3.2 que agrega las capacidades de
WebCenter tales como crear y los portlets que consumen, puente de portlet/JSF, y
control de datos del depsito del contenido. Un lanzamiento de prueba de la versin
11g fue lanzado en mayo de 2007. En julio del ao 2008 se lanza la versin
JDeveloper 10g 10.1.3.4, en octubre del mismo ao se lanza la versin JDeveloper
11g 11.1.1.0.0, en diciembre del mismo ao se lanza la versin JDeveloper 11g
11.1.1.0.1. en agosto del ao 2009 se lanza la versin JDeveloper 10g.10.1.3.5.

El IDE ORACLE JDeveloper de este manual lo puede descargar dede la siguiente
direccin
www.oracle.com/technology/software/products/jdev/htdocs/soft10131.html y una
vez descargado, descomprimir el archivo jdevstudio10131.zip

2.2 Caractersticas
Es el editor para aplicaciones desarrolladas en Java de Oracle, dentro de sus
principales caractersticas cuenta con:
El soporte de Oracle
Es gratuito
Fcil de usar, excelente para desarrolladores no experimentados en Java
Permite desarrollar aplicaciones tanto para Desktop como para Web
Excelente integracin con Oracle 9i y 10g
Permite generar diagramas de UML
o Casos de uso Especificacin de Requerimientos
20
o Diagramas de Actividad Definicin de procesos
o Diagramas de Secuencia Facilitan el modelado de flujos que siguen los
componentes del sistema
o Diagrama de Clases Representan la organizacin y las relaciones de las
clases y componentes del sistema
Permite generar diagramas de Entidad Relacin para Bases de datos
Permite la integracin con servidores de control de versiones.
Integracin con las herramientas de Pruebas de Junit

Otras Caracteristicas de Oracle JDeveloper
JDeveloper viene en tres ediciones; cada uno ofrece ms caractersticas encima de
las otras, y todos son libres. Una lista de las caractersticas incluye:
Edicin de Java Standar
Ayuda del SE 5 de
Java
Cifre el redactor
Cifre la
navegacin
Refactoring
Oscilacin
Prueba de la
unidad
Control de la
versin (sin
embargo, la
ramificacin no es
apoyada por el
cliente interno de
CVS)
Intervencin y
mtrica
El eliminar errores
El perfilar
Ayuda de la
hormiga
Ayuda de XML
Abra el API y las
extensiones
Ayuda del usuario
Edicin de J2EE
JSP
Puntales
JSF
EJB
TopLink
Servicios del Web
UML
Desarrollo de la base de datos
Despliegue y gerencia

Edicin del estudio
Alimentador de originales
Databinding
Caras del alimentador de
originales
Mvil del alimentador de
originales
Componentes del negocio del
alimentador de originales
21
Oscilacin del alimentador de
originales
Despliegue del alimentador de
originales
Diseador de BPEL
Diseador de ESB
Desarrollo de Portlet
Puente de Portlet/JSF
JDeveloper es libre para el diseo y desarrollo. Oracle tiene una licencia runtime
cuando est desplegado fuera de un servidor del uso de Oracle. Para otros detalles,
vea el revelador de la red de la tecnologa de Oracle licenciar los trminos para
JDeveloper aqu: http://www.oracle.com/technology/software/popup-license/jdev-
license.html

2.3. Ventajas
En nuestro concepto los IDE son muy parecidos en las funcionalidades bsicas para
desarrollo. Sin embargo JDeveloper va ms all de ser un IDE para crear
aplicaciones Java y lo que promueve es el concepto de IDE empresarial.
Una de las caractersticas principales de Oracle JDeveloper es que cubre todo el
ciclo de vida de una aplicacin y de una manera muy declarativa.
Oracle ha centrado gran parte de su estrategia a nivel de herramientas de desarrollo
entorno a JDeveloper, esto quiere decir que el IDE cuenta con caractersticas que
cubren todo el ciclo de vida de una aplicacin (anlisis basado en UML, desarrollo,
prueba/debug, elementos para auditar), adicionalmente se puede hacer desarrollo
orientado a base de datos (modelamiento), desarrollo para XML, desarrollo para
SOA (BPEL, ESB, Webservices), desarrollo Web (javaScript, HTML, JSF).
Una de las ventajas ms grandes es que para el desarrollador el ambiente, los mens,
etc, son los mismos; no se requiere de utilizar otras herramientas, el IDE se ajusta de
acuerdo al tipo de tecnologas que vayas a utilizar.
Adicional a las caractersticas que mencionamos, el IDE cuenta con un servidor
JavaEE embebido, el cual viene con la herramienta lo cual facilita toda la parte de
pruebas y despliegues.
La ltima pieza que diferencia a JDeveloper de los dems es ADF o Application
Development Framework, un framework end-to-end para construir aplicaciones
Java EE. Utilizando este framework en conjunto con JDeveloper se pueden crear
aplicaciones basadas en MVC de manera productiva y basada en los estndares de la
industria tales como EJB3, JPA, JSF.
Respecto a los plugins, los hay por parte de Oracle.
22
Es un IDE que cuenta una buena paleta de componentes y un diseo 100%
declarativo.

2.4. Interfaz Principal
Cuando inicias Oracle JDeveloper por primera vez, ver una pantalla similar a la de
la figura N01
Figura N 01


La interfaz se divide en varias partes distintas, como se observa. Desde arriba a la
izquierda, abajo a la derecha se ubica, el men, la barra de herramientas, la barra de
navegacin, la vista de rbol de la estructura de los proyectos y la zona de
presentacin de los errores de los programas fuentes asimismo la paleta de
componentes as como su ventana de propiedades de acuerdo al componente
elegido.
23
De acuerdo al desarrollo de aplicaciones vamos a ir describiendo las diferentes
opciones con las que cuenta y que se aplican de acuerdo a las necesidades de los
usuarios.
24


CAPITULO III: CONOCIENDO EL ENTORNO DE
JDEVELOPER

3.1. Introduccin al Editor Grafico
Las Interfaces graficas en java siempre han sido un poco complejas. El problema
esta cuando tienes que mover un botn y ponerlo mas a la izquierda y cosas por el
estilo y te tienes que lidiar con los Layouts. En Swing la cosa se complica un
poco ms as que creo que es necesario un buen editor grafico para java.
Sobretodo desde el punto de vista de una persona que al fin y al cabo es
programador y no diseador..

En este punto se tratar de explicar brevemente como conseguir una GUI en java
de manera rpida con el editor grafico que acompaa al IDE Jdeveloper.
1. Crear una nueva rea de trabajo, como No template , donde se incluir el
nuevo proyecto. Para ello en Aplications-Navigator click en botn-derecho
NewApplicaction workspace , se nos abrir una ventana como la que se muestra
a continuacin en la figura 1.

Lo de no template lo haremos para
que Jdeveloper no nos aada ningn
patrn de diseo ni nada por el estilo.
Nuestro objetivo es crear una clase
java que tenga una serie de
componentes grficos y mtodos
vacos que gestionen dichos
componentes, que sern
implementados por nosotros.
Destacar que lo que queremos es
crear una interfaz de forma rpida.

Una vez tenemos nuestro rea de trabajo con nuestro proyecto .Sobre el proyecto
con el botn-derecho y seleccionamos New-->Client Tier-->Swing/awt-->Frame
Tal como se muestra en la figura 2.
25

Como podemos ver esto ya nos ha creado una clase vaca la cual extiende de
JFrame. Tambin podemos observar que podemos ver la clase como diseo, como
cdigo y como clase.
Nos vamos al tipo de vista diseo y deberamos ver algo como lo que se muestra
en la figura 3.

Ahora solo se trata de aadir botones y componentes, como queramos nosotros,
mediante el Component palette de Jdeveloper, si no tenemos activo el component
lo activamos mediante View--> component palette.
En el component palette seleccionamos swing y simplemente se trata de
seleccionar lo que queremos y ponerlo en nuestra interfaz.
Para este ejemplo, se ha creado la interfaz que se ve a continuacin. Como se
puede ver es un JTextarea, un JTexfield y un J Button.
26

Si nos vamos al tipo vista cdigo de nuestra clase podemos observar el cdigo que
ha generado JDeveloper por nosotros. Hasta el momento esta interfaz no genera
ningn evento y la clase java solo contiene una serie de componentes grficos. El
cdigo es puro Swing as que no estamos atados a JDeveloper para nada y
podremos usar este cdigo en cualquier otro IDE.
Ahora trataremos de gestionar los eventos que provocara la interaccin del usuario
con nuestra GUI. Para ello deberemos tener activado el Property Inspector, sino
es as lo activamos mediante View--> Property Inspector.
Imaginemos que lo que queremos es aadir el mtodo que gestionara los eventos
del botn. Seleccionamos el botn en la vista de diseo de la clase y nos vamos al
Property Inspector.
Podemos observar que se nos abre una lista con las propiedades del componente
tal como se muestra en la figura 5. La primera pestaa se trata de las propiedades y
la segunda de los eventos. En este punto son los eventos lo que nos interesa.

.
27
Seleccionamos eventos y hacemos click en la casilla que aparece en blanco al lado
de Action Performed y se nos abra la siguiente pantalla y aceptamos. Tal como
podemos observar en la figura 6



Esto lo haremos con todos los componentes que queramos controlar, de tal forma
que despus de hacerlo en nuestro JTextarea. Podemos observar que simplemente
tenemos una serie de componentes grficos y dos mtodos que estn vacos que se
encargaran de gestionar los eventos. El cdigo obtenido hasta ahora es el
siguiente:
package mypackage;
import javax.swing.JFrame;
import java.awt.Dimension;
import javax.swing.JButton;
import java.awt.Rectangle;
import javax.swing.JCheckBox;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class Frame1 extends JFrame
{ private JButton jButton1 =new JButton();
private JTextArea jTextArea1 =new JTextArea();
private JTextField jTextField1 =new JTextField();

public Frame1()
{
try
{
jbInit();
} catch(Exception e) { e.printStackTrace(); }
28
}
// Mtodo que es invocado desde el constructor de la clase, aqu se desarrolla toda la creacin de la
// interfaz.
private void jbInit() throws Exception
{
this.getContentPane().setLayout(null);
this.setSize(new Dimension(400, 300));
JButton1.setText("jButton1");
JButton1.setBounds(new Rectangle(300, 200, 75, 35));
JButton1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
jButton1_actionPerformed(e);
}
});
jTextArea1.setText("jTextArea1");
jTextArea1.setBounds(new Rectangle(15, 30, 355, 140));
jTextField1.setText("jTextField1");
jTextField1.setBounds(new Rectangle(15, 190, 275, 60));
jTextField1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
jTextField1_actionPerformed(e);
}
});
this.getContentPane().add(jTextField1, null);
this.getContentPane().add(jTextArea1, null);
this.getContentPane().add(jButton1, null);
}
//metodo vacio que control evento de boton
private void jButton1_actionPerformed(ActionEvent e)
{
}
//metodo vacio que controla textfield
private void jTextField1_actionPerformed(ActionEvent e)
{
}
}

3.2. Creando una Primera Aplicacin
De acuerdo a la experiencia obtenida a travs de los cursos de programacin
impartidos a lo largo de nuestro trabajo docente, hemos comprobado que a travs de
ejemplos se tiene una llegada ms rpida a los alumnos de los cursos de
programacin motivo por el cual empezaremos describiendo el IDE creando nuestra
primera aplicacin.
3.2.1. Iniciar JDeveloper.
Haga doble clic en el JDeveloper ejecutable (jdeveloper.exe)
encontrados en el escritorio del sistema operativo Windows
O en su defecto buscar el archivo ejecutable jdeveloper.exe en la
carpeta: C:\jdevstudio10134
29


Aparece una ventana de dialogo que indica que proporciona consejos o Tips
sobre el IDE, debemos cerrar dicha ventana.


3.2.2. Crear la aplicacin
La aplicacin es el ms alto nivel en la estructura de control. Es una
visualizacin de todos los objetos que usted necesita mientras est trabajando.
Una aplicacin realiza un seguimiento de sus proyectos, mientras est
desarrollando sus programas de Java.
Las aplicaciones se almacenan en archivos con la extensin .jws. Al abrir
JDeveloper, la ltima aplicacin utilizada se abre por defecto, para que pueda
continuar donde lo dej.
Al crear una nueva aplicacin en JDeveloper, usted tiene la opcin de basarlo
en una plantilla. La plantilla de aplicacin que usted elija determina la
estructura del proyecto inicial, es decir, las carpetas del proyecto denominado
30
dentro de la aplicacin. Puede modificar las plantillas existentes o crear otros
nuevos.
En JDeveloper siempre trabajar con proyectos que figuran que estn
contenidos en una aplicacin.
Un proyecto J Developer es una agrupacin lgica de los archivos que estn
relacionados. Un proyecto realiza un seguimiento de los archivos de origen,
paquetes, clases, imgenes y otros elementos que su programa puede necesitar.
Usted puede agregar mltiples proyectos a la aplicacin para acceder
fcilmente, modificar y reutilizar el cdigo fuente.
Proyectos de gestin de las variables de entorno como la fuente y las rutas de
salida utilizada para compilar y ejecutar sus programas. Los proyectos tambin
mantienen el compilador, en tiempo de ejecucin, y las opciones de
depuracin, as que usted puede personalizar el comportamiento de esas
herramientas en un proyecto.
El Navegador de Aplicaciones (Application Navigator) de JDeveloper es la
ventana principal desde la que se tiene acceso a todos los componentes de su
aplicacin.
La estructura del Navegador de Aplicaciones es jerrquica y soporta las
aplicaciones, proyectos, imgenes, archivos. Html, y ms. De forma
predeterminada, JDeveloper muestra el Navegador de Aplicaciones en el lado
izquierdo de la IDE.



Para crear una aplicacin realizar los siguientes pasos:
1.- Haga anticlick en el nodo Aplicaciones en el Navegador de Aplicaciones y
seleccione Nueva Aplicacin ... en el men contextual.

31

2.- En el cuadro de dilogo Crear Aplicaciones (Create Application),
modificar el valor predeterminado Application1 solicitud del nombre de
MyFirstApp.


Tenga en cuenta el nombre de directorio por defecto el cual lo puede
cambiar de acuerdo a sus requerimientos.
3.- Haga click con el puntero del mouse apuntando hacia abajo en el campo de
plantillas de aplicacin (Application Template) para invocar la lista
desplegable de plantillas disponibles.
Hacer click en No Template [All Technologies]. Aqu sta aplicacin del
proyecto tiene acceso a todas las tecnologas de JDeveloper.
32

Click OK.
4.- En el cuadro de dilogo Crear proyecto, cambiar el nombre predeterminado
del proyecto Project1 a MyProject y, a continuacin, haga clic en Aceptar.

En el Navegador de aplicaciones (Applications Navigator), los proyectos
se muestra como el segundo nivel en la jerarqua en virtud de la aplicacin.
Las aplicaciones de navegador debe tener este aspecto:

Hay que tener en cuenta que la carpeta del proyecto (MyProject) es un hijo
de la carpeta de aplicaciones (MyFirstApp).
3.2.3. Crear una clase
Para crear una clase Java, realice los siguientes pasos:
1.- Haga clic en el nodo MyProject en el Navegador de Aplicaciones y
seleccione nuevo (New) ... opcin del men contextual.
33


2.- Aparece New Gallery. De forma predeterminada aparece displayada la
primera categora General que se destaca en la lista Categoras. Tambin
aparecen las otras categoras que le permiten trabajar con diferentes
tecnologas para construir los diferentes niveles de una aplicacin.

3.- En el cuadro de dilogo crear la clase de Java, cambiar el nombre
predeterminado de class1 a Dog(perro).
Debido a que no especific el nombre del paquete al crear la aplicacin, el
nombre del paquete por defecto es el nombre del proyecto en minsculas.
Usted puede cambiar esta situacin si se desea.
Acepte los dems valores predefinidos y hacer clic en OK.
34


4.- La nueva clase abre automticamente el editor del cdigo fuente, donde se
ve la estructura de la clase.
Para agregar un mtodo a la clase. Despus del mtodo constructor, pulsar
[Enter] para agregar una lnea nueva y escribir el siguiente cdigo:
public String sayHi()

Observe que la lnea de cdigo que acaba de insertar tiene una lnea roja
ondulada debajo de ella, lo que indica un problema con la sintaxis.
Tambin hay cajas de color rojo en el margen derecho del editor de cdigo
fuente. Si pasa el mouse encima de estas cajas o sobre la lnea ondulada de
color rojo nos da una informacin sobre el error o errores del mtodo.
5.- Al final de la lnea, pulsar [Ctrl] + [Shift] + [Enter]. JDeveloper
proporciona entonces la finalizacin automtica de la estructura del
35
mtodo, y los indicadores de error desaparecern. Un cuadro verde aparece
en el margen superior derecho para mostrar que no hay errores de sintaxis.
6.- En la lnea en blanco entre las dos llaves que se agregaron al mtodo,
escribir el siguiente cdigo para retornar una cadena:
return " woof " + "Kate";


Observar que cuando escribe el primer smbolo de comillas ("), JDeveloper
automticamente le proporciona las comillas en segundo lugar, se
adjuntaba el cursor entre ellas, por lo que fcilmente puede escribir el
literal.

3.3. Explorando el Editor de Cdigo
En los editores se escribe el cdigo y diseo de interfaces de usuario. Por lo cual
vamos a explorar algunas de las caractersticas del editor de cdigo fuente de Java.

3.3.1.- Plantillas de cdigo (Using code templates)
Las plantillas de cdigo ayudan a escribir cdigo en forma rpida y eficaz
mientras usted est en el editor de cdigo fuente. Usted puede modificar las
plantillas existentes o crear uno propio.
En este caso se muestra cmo utilizar el cdigo de algunas de las plantillas
existentes en la clase Dog.
1.- Existe un cdigo de plantilla para agregar el mtodo main en la clase
definida en Java.
Pulsar [Enter] para agregar una nueva lnea despus del mtodo sayHi().
Escribir la letra m, y pulsar [Ctrl] +[Enter] para aplicar plantillas de
cdigo.

36


El mtodo main de la plantilla se sugiere.

2.- Pulse Enter para aceptar la sugerencia e incorporar a la plantilla, quedando
de la siguiente manera:




3.- Crear un objeto de la clase Dog en el mtodo main agregando el cdigo
siguiente:
Dog myDog = new Dog();
37

Nota: La variable mydog se muestra en gris, porque an no ha sido
utilizado en cualquier parte de la clase. Si pasa el ratn sobre la variable
mydog, se muestra una descripcin para decirles que la variable no se ha
utilizado.
4.- Pulse [Ctrl] +[Enter] para ver la lista de plantillas que estn disponibles.


38
5.- Para insertar un bucle for con el cdigo de la plantilla.
Agregar una nueva lnea despus de la lnea que crea la variable mydog,
tipear f y luego pulsar [Ctrl] +[Enter].


Tres plantillas se sugieren
6.- Hacer doble click en la segunda de las tres propuestas, basado en el for-
loop para seleccionarlo quedando de la siguiente manera incorporado la
estructura del bucle for.


39

7.- Modificar el cdigo de la plantilla. Para reemplazar el contador i por la
variable count y limitar el bucle a 3 iteraciones.


8.- Escribir la instruccin System.out.println.
Coloque el cursor en una lnea en blanco dentro de las llaves del bucle, y
tipear System. (asegrese de incluir el punto en la final de la palabra.) Una
lista de cdigo sugerido aparecer.

40
Tipear la letra O y pulse [Enter] para seleccionar el cdigo propuesto, se
agregar el objeto out. tipear. (Punto), y cuando la lista de cdigo
propuesto aparece, escriba la letra P y haga doble clic en el cdigo
println() sugerido.



9.- Agregar el cdigo para utilizar el bucle y mostrar el mensaje sayHi. Dentro
de los parntesis despus de println, introducir el siguiente cdigo:
count + myDog.sayHi()


41

10.- Hacer clic en la vista del editor y seleccione Reformat para reestructurar
el cdigo.

11.- Su cdigo debe tener este aspecto:


3.4. Compilando y Ejecutando una Clase
Cuando se compila correctamente un archivo .java, se crea un archivo .class en el
directorio \ src del proyecto. JDeveloper guarda automticamente los archivos
.java. Cuando se ejecuta una clase, se compila automticamente y se guarda.
1.- En las Applications Navigator, hacer click derecho en Dog.java y seleccionar
crear (Make) en el men contextual.

42

2.- En la parte inferior derecha del IDE JDeveloper, la ventana de registro debe
mostrar una compilacin exitosa. Si la ventana de registro no aparece, utilice
Ver | Iniciar sesin para que aparezca (o pulse [Ctrl] +[Shift] +[L]).

Tenga en cuenta que al utilizar la opcin make para compilar la clase,
JDeveloper guarda todos los archivos en el proyecto.

3.- En el Applications Navigator o en el editor de cdigo fuente, hacer click en la
clase Dog.java, y seleccionar Run en el men contextual.

43

En la ventana de registro muestra 3 mensajes de la cadena 'Kate'.



3.5. Trabajando con el Asistente de Cdigo (CODE ASSIST)
El Cdigo de Asistencia (Code Assist) examina el cdigo en el editor y
proporciona asistencia para solucionar problemas comunes. Aqu se utiliza la clase
Dog para explorar algunos ejemplos de las sugerencias que se ofrecen.

1.- Crear un objeto Cat(gato).
Al inicio del mtodo principal, despus de la primera llave, pulsar [Enter] para
crear una nueva lnea y escribir el siguiente cdigo:
Cat MyCat =new Cat ();



2.- Observar que el icono de la bombilla se ha aparecido a la izquierda de la nueva
lnea. Coloca el puntero del mouse sobre este icono y aparece el mensaje de
"soluciones rpidas y el cdigo de asistencias para esta lnea".
44


3.- Haga clic en el icono de la bombilla de luz para ver las correcciones sugeridas.


La notificacin de diferentes colores en las bombillas de luz y al lado las
sugerencias, y signos diferentes en su interior. La bombilla de luz mbar que
contiene un signo de interrogacin (?) Indica una sugerencia para mejorar el
cdigo, mientras que la bombilla roja que contiene un signo de exclamacin (!)
Sugiere una forma de corregir un error.
Se necesita una clase Cat con el fin de crear una instancia de un objeto Cat. Si
hace click en la primera sugerencia, JDeveloper invoca el cuadro de dilogo
Crear la clase donde se puede crear una clase Cat.

45


5.- Si no desea crear la clase Cat ahora, haga click en Cancelar para cerrar el cuadro
de dilogo Crear la clase. Sin embargo, recuerda que puede hacerlo despus de
la siguiente manera:
Pulse [Enter] despus de hacer: new Cat(); para abrir una nueva lnea. En la
nueva lnea de introducir el siguiente cdigo:
//TODO create a Cat class


Seleccione View | Tasks Window para ver una lista de tareas que usted ha
creado.
46

7.- La opcin Task Window (ventana de tareas) muestra una lista de las tareas que
usted ha creado (en este caso, es su nica tarea).

8.- Si hace doble clic en una tarea de la lista, JDeveloper le lleva a la tarea
correspondiente, insertando el cursor al comienzo de la lnea.

47
9.- Observar el cuadro rojo en el margen superior derecho del editor. Moviendo el
mouse sobre este icono le informa de que hay errores en su programa.

10.- Un cuadro ms pequeo rojo en el punto apropiado del cdigo da ms
informacin sobre el error.



11.- Los marcadores de color rosado indican que tiene creada una tarea. Ubicar el
puntero del mouse sobre el marcador para ver que tarea es.

48

12.- Como comentario la lnea que crea el objeto Cat. Tenga en cuenta que los
globos rojos han desaparecido, para ser sustituido por un marcador de color
verde que indica que no hay errores en el cdigo.

13.- Hacer clic derecho en la ventana del editor y seleccionar la opcin Reformat.
El cdigo debera tener el siguiente aspecto:


49

3.6.- Refactoring Code (Cdigo de refactorizacin)
Refactoring es una tcnica de edicin que modifica la estructura del cdigo sin
alterar el comportamiento del programa. Una operacin de refactorizacin es una
secuencia de cambios simples que transforma el cdigo de un programa, pero lo
mantiene en un estado en el que se compila y se ejecuta correctamente.
JDeveloper proporciona un conjunto de operaciones de refactorizacin
(Refactoring).
1.- Un ejemplo de una operacin de refactorizacin es la sustitucin de una
expresin constante en el contenido de un mtodo por un parmetro. Esta
expresin se sustituye por el nombre del parmetro. El nuevo parmetro se
aade a la lista de parmetros del mtodo y de todas las invocaciones del
mtodo.
Para hacer esto en la clase Dog, haga clic derecho en el literal, 'Kate' en el
cdigo del mtodo sayHi () y seleccionar Refactor | Introduce parmeter ... en el
men contextual.

2.- En el cuadro de dilogo Introduce Parameter, escribir en el campo name
p_name, y haga clic en Aceptar.

50

3.- Examine el cdigo para ver los resultados de la operacin de refactorizacin. La
declaracin de mtodo contiene ahora la cadena p_name en su lista de
parmetros, el parmetro p_name ha sustituido el literal "Kate" en el mtodo de
valor de retorno, y el literal "Kate" se ha incluido como un parmetro en la
llamada al mtodo.

4.- Otra operacin de refactorizacin es obtener una nueva interfaz de los mtodos
seleccionados en una clase existente.
Para hacer esto en la clase Dog, haga clic derecho en la declaracin de la clase
Dog, y en el men contextual, seleccione Refactor | Extract Interface...

51

5.- En el dilogo de Extract Interface, escriba IntAnimal como nombre de la
interfaz, y seleccione el mtodo sayHi (String) en los miembros a la lista de
Extract. Haga clic en Aceptar.

6.- La interfaz de IntAnimal se crea y se abre en el editor de cdigo fuente.


7.- Otra operacin de refactorizacin simple es renombrar un mtodo, por el cual
cada vez que aparece el nombre del mtodo se sustituye por el nuevo nombre.
Para hacer esto en la interfaz de IntAnimal, haga clic en el mtodo sayHi (), y en
el men contextual, seleccione Refactor | Rename.


52
8.- En el cuadro de dilogo Rename Method, cambie el nombre del mtodo sayHi
por sayHowDoYouDo. Seleccione la casilla de verificacin Preview para ver
todos los usos que se ven afectados por el cambio de nombre. Haga clic en OK.

9.- La ventana de registro (log) se listan todos los usos del mtodo sayHi (). Usted
debe examinar cada uso para comprobar si desea cambiar cada ocurrencia de
sayHi () por sayHowDoYouDo (). Si es as, haga clic en Do Refactoring en la
barra de herramientas de la ventana log ( registro).


10.- Tenga en cuenta que el cambio de nombre ha tenido lugar en la interfaz de
IntAnimal ......


11.- .....y en la clase Dog
53


3.7. Ver Historial de Modificacin del Cdigo ( Viewing Code Modification History )
JDeveloper tiene incorporado la caracterstica historia (History). Esta historia local
no requiere un sistema de control de versiones para proporcionar un cambio reciente
de registro y visualizar "este" entre las versiones. Las versiones se crean
automticamente sobre la base de las interacciones del usuario, tales como Save
(Guardar), Compile (Compilar), Rename (Renombrar), y as sucesivamente.

1.- Notificacin de las tres pestaas (fichas) en el pie de la ventana del editor. Hacer
click en la pestaa Historial (History).


2.- Se muestra la ventana history. La parte superior de la ventana contiene una lista
de las revisiones y las fechas, mientras que una lista de cambios en el cdigo se
muestra en la parte inferior de la ventana. Las dos ventanas estn sincronizadas,
54
de modo que el detalle en la parte inferior de la ventana coincide con la
seleccin en la parte superior.
Las revisiones para la fecha seleccionada y el tiempo se resumen en la lnea de
estado en la parte inferior del IDE, en este caso 3 diferencias: 0 aadido, 0
eliminado, 3 cambiado.


3.- El color lila cajas indican cambios en el cdigo. En la parte superior de la
ventana, seleccione Introduce Parameter.
En la porcin inferior izquierda del editor, la posicin del ratn sobre el lado
derecho de la flecha verde en el cuadro de color lila que contiene la declaracin
del mtodo sayHi (). Observe que se muestra un mensaje indicando que al hacer
clic derecho en la flecha verde le permite sustituir la diferencia adyacentes. En
este caso, haciendo clic en la flecha verde para revertir sayHowDoYouDo () por
sayHi ().


4.- Las cajas verdes indican las adiciones al cdigo.
55
En la parte superior de la ventana, seleccione Expand Statement (Expandir
Declaracin) en la parte inferior de la lista. En la parte inferior de la ventana,
seleccione el retorno "woof" +p_name; En la lnea del cuadro verde en la
derecha de la ventana. Colocar el cursor sobre la X de color rojo con el ratn.
Observe el mensaje que indica que para eliminar la adicin (s), haga clic derecho
en la X.


3.8. Navegando a Travs del Cdigo (navigating through code )
JDeveloper ofrece maneras fciles de navegar a travs del cdigo relacionado a
Javadoc, y la posibilidad de ampliar o contraer secciones de cdigo en la
navegacin. Para explorar estas caractersticas, realizar los siguientes pasos:
1.- Haga clic en la pestaa source del archivo Dog.java en el editor.
Usted puede navegar de una parte del cdigo a otra parte relacionada.
Un ejemplo de esto es la navegacin de un mtodo para la declaracin de una
interface. Un mtodo que implementa una declaracin de una interface muestra
una llamada fuera del icono en la margen izquierda. Al hacer click en este icono
te lleva a donde se declara el mtodo. Haga click en el icono que esta junto
al mtodo sayHowDoYouDo () del archivo Dog.java.

56
2.- JDeveloper te lleva a la interface IntAnimal en donde el mtodo esta declarado y
resalta el nombre del mtodo para usted.

3.- Para retornar a la clase Dog donde estaba inicialmente, hacer clic en el botn
verde de la barra de herramientas


4.- Tambin puede navegar en el Javadoc para un elemento dado. En el editor del
archivo de Dog.java, hacer clic derecho en la lista de parmetros para el mtodo
sayHowDoYouDo (). Desde el men contextual, seleccione Quick Javadoc.



5.- La etiqueta Javadoc para el objeto String se muestra.
57

6.- El cdigo minimizado le permite ampliar las secciones de contrato de cdigo,
haciendo que grandes programas sean ms navegables.
Coloca tu ratn en el espacio entre las lneas de puntos y slida a la izquierda de
la lnea de Cat.


Ntese que el color azul muestra la lnea vertical junto al cuerpo del mtodo
principal.
7.- Hacer clic en el signo menos (-) de la parte superior de la lnea azul vertical para
contraer esta seccin de cdigo.

58

8.- Colocar el cursor sobre el signo ms (+) situado junto a la seccin de contrato de
cdigo. Las lneas de cdigo contratadas en la pantalla se muestran en un cuadro
sombreado azul.


3.9.- Depuracin de Programas (debugging java programs )
El depurador (debugger) integrado en JDeveloper permite depurar programas java
en el editor del cdigo fuente.
En Este punto se muestra cmo controlar la ejecucin de un programa mediante el
establecimiento de puntos de interrupcin (breakpoint). Cuando la ejecucin del
programa se encuentra con un punto de interrupcin, el programa hace una pausa, y
el depurador muestra la lnea que contiene el punto de interrupcin en el editor de
cdigo fuente. Usted puede usar el depurador(debugger) para ver el estado del
programa.
1.- Establezca un punto de interrupcin (breakpoint) en el archivo Dog.java. Para
ello, haga clic en el margen izquierdo de la lnea:
System.out.println (count +myDog.sayHowDoYouDo ( "Kate"));
El icono de punto de interrupcin, aparece como una bola roja, y se muestra en
el margen izquierdo.
59

2.- Clic derecho en el editor de cdigo y seleccionar Debug desde el men
contextual.

3.- La ejecucin del programa se produce hasta el punto de interrupcin. La flecha
roja en el margen izquierdo del editor del cdigo fuente indica que la ruptura se
est produciendo. La ventana del depurador se abre y muestra la depuracin de
seguimiento.

60
4.- Haga clic en Step Over sobre el icono de la barra de herramientas de la ventana
del registro de depurador que ejecute la primera iteracin del mtodo
myDog.sayHowDoYouDo ().

5.- Tenga en cuenta que la ventana de registro muestra el primer mensaje de woof
Kate.

6.- Notificacin de la ventana de datos inteligente en la parte inferior derecha de la
pantalla. Seleccione la variable count, y haga doble clic en la columna Valor
para mostrar el cuadro de dilogo Modify Value.


61
7.- Tipear 2 como Nuevo valor y hacer. Click en OK.

8.- En la barra de herramientas de depuracin de registro de la ventana, haga clic en
Resume para continuar con la ejecucin del programa.


9.- La variable count se incrementa y excede su lmite, por lo que el programa
termina, y el depurador se desconecta.






62
CAPITULO IV: DESARROLLO DE APLICACIONES

4.1. Desarrollo de una Aplicacin de Escritorio
En este ejemplo se desarrolla, una aplicacin de escritorio siguiendo la arquitectura
modelo - vista controlador.
El modelo de un componente est donde estn almacenados sus datos, por ejemplo
el estado de un botn (pulsado, bajo el ratn, etc.) o los valores de una lista. La vista
es la representacin en pantalla del componente, por ejemplo la forma (color,
bordes, etc.) en que aparece un botn o una lista. Finalmente, el controlador es la
parte del componente que gestiona la entrada, por ejemplo el cdigo que describe
qu hacer cuando hacemos clic sobre el botn, tambin llamado manejador del
evento. Vamos a utilizar esta filosofa para dividir nuestra aplicacin en vistas y
documentos

Creacion de la Aplicacion
Primero crear la aplicacin siguiendo el modelo vista-controlador. Para ello, desde
el navegador de objetos
1.- Haz clic con el botn derecho sobre la carpeta Applications
2.- Elegir "New Application".
3.- En el cuadro de dilogo "Create Application", de la plantilla debemos elegir
Java Application [Swing, ADF BC], para que nuestra aplicacin sea creada con
dos proyectos por defecto: Model y View, siguiendo la arquitectura MVC.

Name GestionTaller
Directory name Elige el directorio donde quieras guardar la aplicacin
Application template: J ava Application [Swing ADF BC]

La plantilla de aplicacin [Swing, ADF BC], podemos decir que se utiliza para
construir aplicaciones rpidas basadas en ADF Swing. Los componentes ADF
Business Components se utilizan para construir el modelo de datos.

Tambin en la ventana de "Create Application", puedes hacer clic en el botn
"Manage Templates" para conocer diferentes conceptos.
63
En la parte derecha de la ventana "Manage Application Templates" encontrars
las tecnologas que por defecto se le asignan a la plantilla [Swing, ADF BC]. Si
seleccionas por ejemplo: Rich Client View podras ver una descripcin de dicha
tecnologa.


Por tanto, ADF Swing es una capa que enlaza los componentes Swing estndar
con la capa de Oracle Application Development Framework (ADF). Se usa
para construir aplicaciones cliente que requieren una respuesta inmediata hacia el
usuario o los eventos que cambian la pantalla del usuario, y que encuentran mejor
soporte en Swing que en la Web. Otra razn para construir clientes Swing es
cuando, por razones de negocio, las aplicaciones necesitan trabajar off-line,
desconectadas de la red. ADF Business Components gobierna la interaccin
entre el resto de la aplicacin y los datos almacenados en la base de datos,
proveyendo de servicios de validacin y otras lgicas de negocio.

Quedando en el navegador de aplicaciones:






CREACION DE LA INTERFAZ
64
Esta aplicacin consta de ms de un formulario por lo tanto comenzaremos con
primer formulario que consiste en una ventana login.
VENTANA DE LOGIN
Nuestro primer formulario va a ser la ventana de login de la aplicacin. Este
formulario comprobar que el usuario y contrasea coinciden con uno dado.
Posteriormente se puede mejorar incorporando un contador de intentos fallidos o,
lo que es ms importante, validando el usuario con la base de datos para permitir
la entrada de varios usuarios a la aplicacin, cada uno con sus correspondientes
permisos.
Para crear el formulario nos dirigimos al navegador de objetos, hacemos clic con
el botn derecho sobre la carpeta View de nuestra aplicacin y elegimos New.
Dentro de la categora Client Tier ( Swing/AWT elegimos el tem Frame para
crear un programa fuente de tipo JFrame.
En la ventana creada introducimos Login como nombre del formulario e Inicio
de sesin en el atributo ttulo y pulsamos Aceptar.







Esta Interfaz Grfica debe contar con las siguientes caractersticas:
Amigable: que facilite la tarea al usuario,
Agradable: utilizar colores suaves y evitar los diseos estridentes de mal gusto,
alinear correctamente los elementos, etc.
Intuitiva: lo ms fcil es situar los botones, mens, etc., de forma similar a los
que el usuario est acostumbrado, o sea, basarse en las caractersticas generales
de cualquier aplicacin Windows o Linux.
Homognea: toda la interfaz de nuestra aplicacin debe guardar el
mismo aspecto, por ejemplo, utilizando distintas tonalidades dentro del mismo
color para los fondos, utilizar el mismo tipo de letra para objetos similares, etc.

65
Comentarios y legibilidad del cdigo: Un aspecto interno de nuestra aplicacin
relativo a la forma de programar es que nuestros formularios slo deben tener el
cdigo estrictamente necesario para que funcionen y desarrollen las capacidades
previstas. En ocasiones JDeveloper puede generar cdigo automtico que nos
ayuda pero otras veces slo entorpece la lectura, cuando nos encontremos con este
tipo de situaciones eliminaremos el cdigo sobrante para hacer ms legible nuestro
cdigo fuente. Adems, utilizaremos los comentarios adecuadamente tanto para
comentar expresiones complicadas o especiales como para describir la
funcionalidad de los mtodos o para introducir informacin adicional como
creador del programa, fecha, copyright,... etc. En este apartado tambin deberemos
cuidar la organizacin de nuestra aplicacin: evitar archivos innecesarios, utilizar
nombres significativos para las clases, etc.
En la ventana de Login. En primer lugar en el Inspector de Propiedades para
modificar la propiedad Size a 365,233.
Seguidamente, vamos a crear una serie de componentes Swing arrastrndolos
hacia el formulario desde la Paleta de Componentes situada en la parte derecha de
la aplicacin. Estos controles, que nos van a servir para la introduccin del usuario
y la contrasea, tienen las propiedades siguientes:
Nombre Tipo Si ze Bounds Text
Hori zontal
Al i gnment
toolti pText
txUsuario J TextField 135,20
195, 65,
135, 20

Introduzca un
usuario valido
txPass J PasswordField 135,20
195, 90,
135, 20

Introduzca
contrasea
lbUsuario J Label 55,20 Usuario: Right
lbPass J Label 75,20 Contrasea: Right
btAceptar J Button 95,25
Para alinear el lbUsuario a la misma altura que est txUsuario los seleccionamos
ambos, primero uno y luego otro con la tecla Ctrl pulsada y elegimos Align/Top
del men contextual que aparece al hacer clic con el botn derecho. Igual hacemos
con los controles lbPass y txPass. Por ltimo, alineamos a la derecha los controles
lbUsuario y lbPass con la opcin Align/Right y el control btAceptar a la
derecha con los cuadros de texto.
En ocasiones, para propiedades que tienen el mismo valor podemos seleccionar
todos los controles con la tecla Ctrl y aplicarles la propiedad a todos a la vez. Por
66
ejemplo, prubalo para establecer la fuente Ms Sans Serif, 11 en todos los
controles del formulario.

Ahora vamos a asignar un icono a la ventana que acabamos
de crear, o sea, una imagen que aparezca a la izquierda de
la barra de ttulo y en la barra de tareas cuando est
minimizada.
Para conseguir esto, hemos de introducir una serie de lneas
de cdigo en nuestra clase Login. As que nos vamos a la
parte inferior de el rea donde estamos diseando, donde pone Source, Desgin,
History y elegimos la primera etiqueta (Source). Nos aparecer el cdigo de
nuestra ventana Login, que actualmente tan slo debe estar formado por el
constructor de la clase y por el mtodo jbInit(), que como sabes se ejecuta cada
vez que se invoca el constructor, o sea, cada vez que tiene lugar una sentencia ...
new Login().
A continuacin, introducimos un nuevo atributo en nuestra clase llamado icono, y
una nueva sentencia en el mtodo jbInit() del formulario Login, debe quedar algo
como lo que sigue (en negrita lo que debemos introducir):
public class Login extends JFrame {
private JTextField jtxUsuario =new JTextField();
private JTextField jtxPass =new JTextField();
...
private ImageIcon icono = new
ImageIcon(getClass().getResource( images/icono.png ));
private Image miImagen=icono.getImage();
public Login() {
...
}
private void jbInit() throws Exception {
...
this.setIconImage(miImagen);
...
}
67
Por supuesto, tanto la imagen como el directorio deben existir. Si te fijas, la
imagen est guardada en un directorio llamado images que est dentro del
directorio src, al mismo nivel de jerarqua que la carpeta view de nuestro
proyecto.
Al introducir el cdigo, JDeveloper te indicar mediante un globito rojo en la parte
izquierda de la ventana los paquetes que son necesarios importar para las clases
que ests utilizando, javax.swing.ImageIcon y java.awt.Image para las clases
ImageIcon e Image, respectivamente.



Todo esto queda reflejado en modo visual si nos vamos a las propiedades del
formulario, veremos que en la propiedad iconImage aparece miImagen como
icono de la barra de ttulo.

Clase Principal
Una vez que hemos creado nuestra ventana de entrada necesitamos aadir una
clase principal que contenga la aplicacin y que tenga asociada la interfaz grfica
anterior.
Para ello hay que seleccionar proyecto (carpeta) view y hacer click File, click
New y dentro de Client Tier ( Swing/AWT escoger Java Application, darle un
nombre (por ejemplo Principal), e indicar que se le desea aadir un frame por
defecto.
Seleccionar la opcin "Existing frame" y, tras pulsar el botn "Browse" escribir
el nombre del frame con la interfaz grfica, que en este caso es Login. Conviene
dejar activa la caja de comprobacin "Center frame on screen" para que el frame
aparezca justo en el centro del monitor cuando se ejecute la aplicacin.

68
Ya estamos preparados para ejecutar la aplicacin. Para ello seleccionamos
previamente en el navegador de objetos la clase con la aplicacin (Principal), y
hacemos Run.


Creacin de la interfaz grfica de usuario (GUI) mediante JFC/Swing
En los apartados anteriores hemos creado una ventana de Login para nuestra
aplicacin y una clase lanzadora llamada Principal. Ahora necesitamos crear la
interfaz grfica de la que constar nuestra aplicacin, que aparecer una vez que el
usuario haya introducido los datos de acceso correctos.

Para ello en el IDE JDeveloper crear la ventana de men
y la tpica ventana de "Acerca de..." prcticamente de
forma automtica. Esto lo conseguimos haciendo clic con
el botn derecho sobre View o clic en el men File,
escogiendo la opcin de New y dentro de Client Tier (
Swing/AWT. As podemos crear un nuevo frame y
escoger si queremos que tenga barra de men, barra de
herramientas, barra de estado o cuadro de dilogo
"Acerca de". Elegiremos todas las opciones.
Rpidamente podemos comprobar cmo se han creado
dos nuevas clases, menu.java y menu_AboutBoxPanel1.java.

69
Ahora slo te recomendamos que cambies las imgenes que se han creado de sitio
y las introduzcas en la carpeta Images que est al mismo nivel de jerarqua que la
carpeta view de nuestro proyecto. Sabras qu parte del cdigo de la clase
men.java hay que modificar para que haga referencia a la nueva ruta de las
imgenes?
Seguidamente introduciremos el siguiente cdigo en el evento MousedClicked
del control btAceptar de la ventana de Login:
try{
boolean acceso =this.hacerLogin(this.txUsuario.getText(),
this.txPass.getText());

if (!acceso) { this.lbAcceso.setText("Acceso denegado");
} else {
menu ppal =new menu(); // creamos la ventana ppal que es de tipo men
ppal.setVisible(true); // y la visualizamos
this.setVisible(false);// ocultamos la ventana de login
}
} catch (Exception ex) { ex.printStackTrace(); }

De esta forma, cuando el usuario introduzca los datos de acceso correctos y le d
al botn Aceptar, se lanzar la clase menu.java que contiene la interfaz de la
aplicacin. El mtodo hacerLogin lo introduciremos dentro de la clase Login y lo
nico que har por ahora ser validar el usuario y la contrasea:

public boolean hacerLogin (String u, String p) {

if (u.equals("invitado") && p.equals("invitado")) return true;
return false;
}
Nos vamos a la clase Principal y con el botn
ejecutamos la aplicacin, o bien con F11. Introducimos
el usuario y contrasea (invitado - invitado) y
comprobamos cmo al darle a Aceptar se muestra la
70
interfaz grfica, y tambin el cuadro de informacin que se obtiene al pulsar el
men Help.
Observars que la ventana de men se ha visualizado en tamao pequeo y en la
esquina superior izquierda de la pantalla. Nos interesa que se visualice de forma
maximizada y que, si se restaura, aparezca en el centro de la pantalla. Esto nos va
a interesar para todas las ventanas que hagamos, por lo que decidimos crear una
nueva clase cuyo cdigo puedan utilizar todas las ventanas que lo necesiten.
Llamamos a la clase pantalla y el cdigo puede ser algo como lo siguiente:
public class pantalla {
public pantalla() {
}
static void centrar(JFrame f) {
// Calculo el tamao de la pantalla y de la ventana
Dimension screenSize =Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize =f.getSize();
// Si es mayor, igualo el tamao de la ventana al de la pantalla
if (frameSize.height >screenSize.height) {
frameSize.height =screenSize.height;
}
if (frameSize.width >screenSize.width) {
frameSize.width =screenSize.width;
}
// Sito la ventana en el centro de la pantalla
f.setLocation( ( screenSize.width - frameSize.width ) / 2, (screenSize.height -
frameSize.height ) / 2 );
f.setVisible(true);
}
static void maximizar(JFrame f){
int state =f.getExtendedState();
state |=f.MAXIMIZED_BOTH;
// Maximizamos el frame
f.setExtendedState(state);
}
}
Podemos utilizar este cdigo cada vez que creemos una ventana nueva, tan slo
tendremos que hacer:
pantalla.centrar(miventana) o pantalla.maximizar(miventana).
71
El resultado es que hemos creado una ventana de men que aparece centrada y
maximizada cuando el usuario introduce los datos correctos de acceso, y un
cuadro "Acerca de".
Al comienzo de la presentacin se te muestran las clases que tiene hasta este
momento nuestra aplicacin: Principal.java y Login.java, para luego continuar
creando una nueva ventana llamada "Gestion de Taller"

CAMBIOS EN LA INTERFAZ
Llegados a este punto tenemos la ventana men y el cuadro "Acerca de" que ha
creado JDeveloper. Ahora es el momento de hacer los cambios necesarios para
adaptar estas ventanas a nuestra aplicacin y crear nuevas ventanas para dotar de
contenido y consistencia a nuestro proyecto.
Vamos a realizar algunos cambios en nuestra
aplicacin.
Estos cambios podremos realizarlos
dirigindonos a la pestaa Source del
formulario que queramos modificar, o por
ejemplo arrastrando desde el grupo Swing o
Swing Containers de la Paleta de
Componentes.
PANTALLA DE BIENVENIDA
La pantalla de bienvenida o ventana splash es una prctica
habitual en las aplicaciones de hoy en da. Usar una ventana
splash es una forma de avisar al usuario de que algo est
ocurriendo en la aplicacin durante el periodo de arranque.
Algunas ventanas splash pueden ser cerradas pinchando en cualquier lugar de la
ventana,
otras se cierran solas y
otras permanecen despus que la aplicacin haya comenzado.
Vamos a lanzar primero la ventana splash y despus la ventana de Login.

En primer lugar vamos a crear un JPanel (File/New/Swing/AWT ( Panel) que
contenga lo que queremos que muestre la ventana splash, que va a ser tan slo una
barra de progreso utilizando el componente Swing JProgressBar. Seleccionamos
72
los valores mnimos y mximos de la barra de progreso en 0 y 40, respectivamente
(propiedades minimium y maximium). Tambin se pueden seleccionar estos
valores con los mtodos setMinimum y setMaximum, o en el constructor al crear
la barra de progreso. La propiedad StringPainted hace que la barra de progreso
muestre un String (cadena) de porcentaje dentro de sus lmites. Por defecto, la
cadena indica el porcentaje completo de la barra de progreso. El String de
porcentaje es el valor devuelto por el mtodo getPercentComplete formateado a
porcentaje. Otra alternativa es mostrar un String diferente con setString.
Para ir cambiando el valor de la barra de progreso utilizamos un temporizador (un
ejemplar de la clase Timer). Este objeto se arranca con el mtodo Start() y
dispara un evento action cada segundo. El mtodo oyente del evento action es
ActionPerformed y lo que hace es llevar un contador para ir modificando el valor
de la barra de progreso.
El cdigo completo lo mostramos a continuacin. Observa que el JPanel que
hemos creado tiene un mtodo main(), con lo cual ya no necesitamos la clase
Principal para lanzar nuestra aplicacin, sino que se lanzara desde sta nueva
clase llamada Inicio.
public class Inicio extends JPanel implements ActionListener {
private Timer timer =new Timer(100, this);
private JProgressBar barraprogreso =new JProgressBar();
private int cont=0;

public Inicio() {
try {
jbInit();
} catch (Exception e) {
e.printStackTrace();
}
}
private void jbInit() throws Exception {
barraprogreso.setBounds(new Rectangle(80, 235, 230, 15));
barraprogreso.setStringPainted(true);
barraprogreso.setMaximum(40);
this.add(barraprogreso, null);
this.actionPerformed(null);
this.timer.start();
this.setBackground(new Color(115, 147, 245));
73
this.setLayout(null);
}
public void actionPerformed(ActionEvent e) {
this.cont=this.cont+1;
this. barraprogreso.setValue(cont);
}
public static void main(String[] a){
JWindow f =new JWindow(); //creo una ventana sin barra de ttulo
f.add(new Inicio()); //aado el JPanel a la ventana
f.pack();
f.setSize(400,300);
f.setVisible(true); //aqu mejor usar el mtodo pantalla.centrar
JFrame f2 =new Login(); // creamos la ventana de login

try { Thread.sleep (5000); } catch (Exception e) {}
pantalla.centrar(f2);
f.setVisible(false); //cerramos la ventana splash
}
}
Pues bien, ya hemos conseguido crear nuestra ventana splash. Si la ejecutamos
vers que no queda centrada, y adems, nos interesara que apareciera tambin una
imagen caracterstica de la aplicacin. Centrar la ventana se puede hacer con
nuestra clase pantalla.java, sobrecargando el mtodo centrar() para que pueda
servir tambin para objetos JWindow. Para poner una imagen de fondo en un
JPanel debemos sobrecargar el mtodo public void paintComponent(Graphics
g) para que dibuje la imagen que queramos. La imagen de fondo la puedes crear
con un programa de manipulacin de imgenes sencillo como es GIMP.

En nuestro ejemplo lo que
hemos hecho es crear un
fondo degradado y aadir una
imagen caracterstica y el
ttulo y versin de la
aplicacin.

74
4.2. Desarrollo De Aplicacin Conversin de Temperatura

Si la ventana de Applications Navigator no
est abierta, entonces eligir: View, Application
Navigator

Seleccione Applications en la ventana del Navegador de Aplicaciones
Hacer click derecho y seleccionar New Application en men contextual

JDeveloper mostrar su cuadro de dilogo
Create Application.
.-Introducir un Nombre de aplicacin:
convierteCelsiusFarenheit
.- Haga clic en el botn ACEPTAR.

JDeveloper mostrar su cuadro de dilogo
Create Project
.- Introduzca un Nombre del proyecto: conversionCF
.-Haga clic en el botn Aceptar.

RESULTADO














Crear una nueva Aplicacin y Frame

Seleccione el proyecto
convierteCelsiusFarenheit en la ventana de
Application Navigator.

.- Click derecho sobre nombre proyecto
.- click New

75
JDeveloper mostrar cuadro de dilogo New
Gallery.

Ampliar el nivel de clientes en el nodo de rbol de
las categoras de la New Gallery del cuadro de
dilogo.
Seleccione Swing / AWT en el rbol de categoras.
Elija de Java Application de la lista de artculos.
Haga clic en el botn Aceptar


JDeveloper muestra el cuadro de dilogo de Create Java Aplication.

Introduzca un Nombre: frmconversionCaF en el
cuadro de dilogo de Crear aplicaciones Java.

java.lang.Object indica que es la clase base de la
cual hereda la nueva clase que estamos creando.

Agregar el formulario (ventana) predeterminado
cuya casilla est marcado.
Esto permite crear una instancia del formulario en
esta clase que contiene el void main( )

La casilla de Center Frame ( formulario) en la
pantalla, est marcado.

Haga clic en el botn Aceptar.
JDeveloper muestra el cuadro de dilogo Create
Frame.
Introducir en name: frmConversion
Observe que la lista desplegable contiene
javax.swing.J Frame ya que estn creando una
clase que hereda de JFrame
Escribir un ttulo para la ventana: Conversin
de Celsius a Fahrenheit
Haga clic en el botn Aceptar
Si desea puede activar casillas de verificacin que
indican: MenuBar( Barra de Mens), Tool Bar
(Barra de Herramientas), Status Bar (Barra de
Estado) About Box (Acerca de), esta ltima crea
una clase aparte con una ventana o formulario.

76
En la ventana de aplicaciones debe mostrar
las dos clases creadas dentro del paquete
temperatura:
Si deseamos modificar el nombre del la
clase que contiene el void main, procedemos
de la siguiente manera:
Botn derecho en frmconversionCaF.java
Click en Refactor
Click en Rename .
Aparece ventana de dialogo: Rename
frmConversionCaF
Sobrescribir nuevo nombre: ConversionCaF
Click en Aceptar, aqu busca todas las ocurrencias de frmConversionCaF y las
reemplaza por ConversionCaF en todo el proyecto.
Hacer doble click en ConversionCaF.java de la ventana de aplicaciones
Y aparece seleccionado pestaa Source de la ventana que muestra el cdigo
generado hasta ahora por el JDeveloper.
//programa que contiene main: ConversionCaF.java

package temperatura;

import java.awt.Dimension;
import java.awt.Toolkit;

import javax.swing.JFrame;
import javax.swing.UIManager;

public class ConversionCaF {

public ConversionCaF() {
JFrame frame =new frmConversion();
Dimension screenSize =Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize =frame.getSize();
if (frameSize.height >screenSize.height) {
frameSize.height =screenSize.height;
}
if (frameSize.width >screenSize.width) {
frameSize.width =screenSize.width;
}
frame.setLocation((screenSize.width - frameSize.width) / 2,
(screenSize.height - frameSize.height) / 2);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
public static void main(String[] args) {
try {
77
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {
e.printStackTrace();
}
new ConversionCaF();
}
}

Hacer doble clic en frmConversion.java en la ventana de Application
Navigator.
Seleccione la etiqueta Fuente (Source)
Debe mostrar el siguiente cdigo generado:

package temperatura;

import java.awt.Dimension;

import javax.swing.JFrame;

public class frmConversion extends JFrame {
public frmConversion() {
try {
jbInit();
} catch (Exception e) {
e.printStackTrace();
}
}

private void jbInit() throws Exception {
this.getContentPane().setLayout( null );
this.setSize( new Dimension(400, 300) );
this.setTitle( "Conversion de Celsius a Farenheit" );
}
}

CREAR INTERFAZ GRAFICA
Hacer clic en la pestaa Design de la ventana
frmConversion.java
Para ir a la ventana de diseo
Ubicar la paleta de componentes
Si fuera necesario para activarla hacer:
Click View
Click Component Palette

Disear la siguiente Interfaz
Insertar JLabel: Hacer click en
de la paleta de componentes

78
Dibujar un rectngulo sobre la ventana en una
ubicacin adecuada, tal como lo muestra la figura
Propiedades del objeto (property Inspector)

Haciendo click derecho sobre objeto JLabel
Click Property Inspector

Aparece cuadro de dialogo de propiedades
Elegir propiedad Text

Escribir en lado derecho de esta propiedad text:
Grados Celsius

De la misma forma se procede con las otras etiquetas
de la ventana

Alinear Etiquetas (JLabel) de la ventana:
.- Seleccionar etiquetas con ttulos: Grado Celsius y Grados Fahrenheit,
manteniendo presionado tecla CTRL y hacer click en cada etiqueta, tal como lo
muestra la figura.
De la barra de herramientas hacer click en el
cono Align Right tal como muestra figura y
automticamente se alinearan los objetos
Siguiendo el ejemplo de las etiquetas (JLabels)
agregar:

Objeto name Text Font
JTextField txtgradosCelsius
JTextField txtgradosFharenheit
JButton btnCalcular Calcular 12,Dialog,Bold
JButton btnSalir Salir 12,Dialog,Bold

La interfaz debe quedar

79
4.3. Creando Tablas
El objetivo de este ejemplo es describir el proceso para crear una aplicacin de
escritorio en Java utilizando JDeveloper, la cual mostrar la informacin en un
JTable.
Seleccionamos la clase que contiene el frame para nuestra aplicacin y aparecern
las siguientes vistas:
Code Editor
Esta vista aparece en el centro del JDeveloper y tiene como objetivo permitirnos
crear y modificar el cdigo de nuestra aplicacin. Comnmente nos muestra el
cdigo de Java de la aplicacin, sin embargo en clases que sean: Marcos (Frames) ,
Dialogos (Dialogs) o Paneles (Panel) nos mostrar el diseo de estos.
Ahora observemos que nos aparecer en la seccin de cdigo la vista del marco que
estamos diseando. Es muy importante hacer notar que el editor de interfaz de
JDeveloper, en su parte inferior encontraremos 3 pestaas:
Source: Nos muestra el cdigo de la clase que estamos implementando.
Design: Nos muestra como luce la vista del marco que estamos diseando.
History: Nos muestra el histrico de cambios del archivo.
Structure.
La cual tendr unas carpetas que indicarn:
UI: Es la estructura de los componentes que aparecen en pantalla, en nuestro
frame.
80
Menu: En caso de hubisemos seleccionado un men en la pantalla de
configuracin de la aplicacin, en esta seccin aparecen los elemento del Menu
superior.
Other: Aqu podemos encontrar las imgenes o elementos como models, arrays
que utilizamos en nuestra vista.
Nuestro primer objetivo es asignarle a la vista un Layout, que nos permita organizar
los componentes de nuestra interfaz grfica.
Component Palette
Esta es una vista muy importante para el desarrollo de este manual es la Paleta de
componentes, en la cual podemos encontrar los componentes que tenemos
disponibles para nuestra aplicacin de Swing. Es muy importante sealar que en la
parte superior est vista cuenta con un selector de tipos de componentes. En ese
selector podemos encontrar los Swing containers, componentes que pueden
contener a otros. Y la paleta de Swing, todos los componentes como botones,
cuadros de texto, los JTable, etc.
Agregando el JTable
Una vez creado el proyecto, es necesario disear el layout que va a tener nuestra a
aplicacin, por lo cual nos vamos a apoyar en la imagen anterior de JDeveloper.
En la vista de Structure debemos seleccionar la carpeta de UI -> this ->
panelCenter. Una vez que haya sido seleccionado debemos utilizar en inspector de
propiedades Property Inspector, donde buscaremos la propiedad de layout y le
asignaremos el BorderLayout.
En el layout seleccionaremos en la Paleta de componentes la categora de Swing
Containers, de la cual utilizaremos el JScrollPane, que nos ayudar a proveer de
Barras de Scroll al JTable y proveer de encabezados al JTable, ya que si una tabla
no est dentro de un JTable, est no mostrar los encabezados.
Para terminar con la interfaz grfica seleccionaremos en la Paleta de componentes
la categora de Swing, para agregar el JTable en nuestro JScrollPane.
Cuando realicemos estos pasos es conveniente observar siempre la vista de
Structure, para corroborar que nuestra interfaz grfica tenga la estructura correcta.
Nota: Es importante renombrar los componentes de manera que tengan nombres
claros, esto se puede lograr seleccionando el componente en la vista de Structure y
utilizando el segundo botn del mouse y seleccionar la opcin de Refactoring.
Aparecer un dialogo en el cual podemos cambiar el nombre del componente. O
81
bien podemos utilizar la vista de Inspector de propiedades y modificar la
propiedad name.
Creando el Table Model
Con la interfaz grfica diseada es tiempo de utilizar el tab de cdigo de nuestro
editor, asignar al JTable los encabezados y de registros. En Swing hay dos formas
de enviar esta informacin a un JTable:
Usando un par de arreglos
o Un array unidimensional (Object[]) para los ttulos
o Un array bidimensional (Object[][]) para los registros
Usando Vectores
o Un Vector de objetos para los ttulos
o Un Vector de Vectores para los registros, en el cual habr un vector por cada
registro.
Para este ejemplo se utilizarn arreglos.
Arreglo para los titulos
/**
* Indica cuales sern los ttulos del JTable.
* Se utiliza un arreglo statico y final, debido a los ttulos
* no cambiarn con el paso del tiempo.
*/
public static final String[] titulos ={"Usuario", "Nombre", "Departamento"};
Arreglo de los registros
/**
* Se inicializa un arreglo bidimensional para simular el contenido de la
* tabla
*/
public String[][] registros ={
{"aperez","Adrian Perez", "Contabilidad"},
{"jlopez","Jess Lopez", "Administrativo"},
{"cramos","Claudia Ramos", "Recursos Humanos"}};
Una vez que tenemos los ttulos y los registros es necesario crear un TableModel, el
cual es una interfaz que describe como deben realizarse las operaciones de
actualizacin en un JTable. En este caso se utiliza un DefaultTableModel que es
una implementacin sencilla pero til para muchos de los escenarios con los que
trabajamos. Sin embargo si los elementos que vamos a desplegar son muchos y la
82
actualizacin es muy frecuente quizs sea necesario crear una implementacin
propia que cumpla con nuestras necesidades.
DefaultTableModel model =new DefaultTableModel();

Aplicando el Table model al JTable
Una vez que ya contamos con el TableModel, el JTable en la interfaz Grfica, es
necesario realizar la asignacin de los ttulos y registros al TableModel y el
TableModel al JTable. Para la cual nos posicionaremos en el mtodo que inicializa
la interfaz grfica en una aplicacin desarrollada con el JDeveloper, jbinit().

private void jbInit() throws Exception {
this.getContentPane().setLayout( layoutMain );
// Asignamos los titulos y los registros al table model
model.setDataVector(registros,titulos);
// El table model es asignado al jTable de la aplicacin
lista.setModel(model);
// Continua el cdigo de inicializacin
}
Por ltimo ejecutamos la aplicacin presionando siguiendo los pasos del ejemplo de
creacin de una aplicacin de JDeveloper.
La aplicacin creada luce de la siguiente manera:



4.4. Base de Datos
4.4.1. Conexin a la Base de Datos
1. Para hacer las pruebas, usaremos Access. Proceda a crear la Base de Datos
Ventas, en ella crear la tabla Socios con los siguientes campos:
codigo char(3)
83
nombre char(50)
direccion char(80)
telefono char(10)
2. En Windows usando ODBC creamos un dns al que llamaremos dns_mdb
hacia la base de datos access Ventas.mdb
3. Crear una nueva aplicacin
4. Habilite el panel Connection Navigator

5. En la seccion Database haga Clic derecho e inicie con la creacin de una
Nueva conexin. Asigne un nombre a la conexin y luego indique el tipo de
conexin: Bridge JDBC-ODBC


Marque siguiente, como la base de datos Access no requiere autentificacin,
deje en blanco los cuadros de texto usuario y clave.
84


6. Ahora debe anotar el nombre del dns creado:

7. Verifique si los parmetros ingresados son los correctos, presionando el
boton Test

8. Inspeccione en la seccion Database y debera ver las tablas, al hacer doble
click accedera a la estructura de dicha tabla
85

9. En la parte inferior del panel que muestra la estructura se muestra una
pestaa que indica Data, desde ella podr acceder a los registros


4.4.2. Creando una Interfaz de Acceso a la Base de Datos
1. Inicie un nuevo proyecto
2. Creamos un diagrama de componentes de negocio
86

3. Asigne un nombre al diagrama

4. En el panel Connection Navigator, ubique la tabla Socios


5. Arrastre la tabla Socios al diseador
87



6. Se habra creado:



7. Ahora vamos a crear el cdigo del componente


8. Dgale siguiente a cada uno de los pasos:
88


9. Finalmente Terminar
10. Active el panel Database Control Panel, desde el View, este panel le
mostrara cada uno de los campos:


11. Ahora vamos a crear un formulario:
89


12. Sealamos el nombre para el formulario:



13. Luego arrastre los campos desde el panel Database Control Panel



90
14. Haga el mismo procedimiento pero arrastrando tabla


15. Finalmente obtendr el siguiente diseo



16. Ejecute



91
Ejemplo 3: Otra forma
1. Creamos un formulario:


2. Indicamos la plantilla: Single Columns


3. Seleccione los campos a mostrar:


92
4. Obtendr el siguiente diseo:



5. Ejecutamos


93
BIBLIOGRAFA

1. Cuenca J imnez Pedro Manuel, "Programacin en Java". Ediciones Anaya
Multimedia. 1997.
2. Framin Torres Jos Manuel. "Manual Imprescindible de Java". Ediciones
Anaya Multimedia. 1997
3. Froufe Agustn: Java 2, Manual de Usuario y Tutorial
4. Gosling J., K.Arnold: Java Didctica y Programacin, Addison-Wesley
Primera edicin, Marzo de 1997
5. "JDK 1.2 Documentation".
www.sun.com. 1997. (Documentacin de la API de Java del JDK).
6. Sanz Alamillo J avier. "Novedades y cambios con Java 2".
7. Vasquez Julio, Balta Victor: Guia de programacin Java 2

BIBLIOGRAFA ELECTRONICA

8. Portal de JDeveloper
www.jdeveloperla.com
9. Pagina oficial de JDeveloper
http://www.oracle.com/technology/products/jdev/index.html
10. Caractersticas de JDeveloper
http://wiki.cetechihuahua.gob.mx/index.php/IDE-JDeveloper"
11. Java2 SDK, Standard Edition Documentation.
http://java.sun.com/j2se
12. History of JDeveloper Releases.
http://radio.weblogs.com/0118231/stories/2005/02/25/historyOfJdeveloperR
eleases.html
13. Aplicaciones Java Swing con ORACLE JDeveloper
http://indomable.wordpress.com/2007/11/04/aplicaciones-java-swing-
con-oracle-jdeveloper-101310-clase-1/
14. Wikepedia Enciclopedia Libre
http://es.wikipedia.org/wiki/JDeveloper"
94
ANEXOS
Tips en JDeveloper
1.- Como Crear un JAR
Primero debe desarrollar la aplicacin
Elegir el proyecto del cual debe estar definida la clase principal
Ir a File
Ir a New
En Nombre de proyecto: Hacer anticlick
Ir a General
Seleccionar deployment profiles
Seleccionar JAR File
Seleccionar Aceptar
Escribir nombre de deployment miJar
Seleccionar Aceptar
Aparece J AR Options
En Main Class seleccionar Browse
Seleccionar HIERACHY
Seleccionar DM
Elegir nombre de clase principal
Aceptar

Resultado
Se crea miJar.deploy
Hacer anticlick en miJ ar.deploy
Seleccionar Deploy To Jar File

Si tiene errores no crea JAR en caso contrario ya tenemos nuestro JAR


2.- Como incluir una librera
clik Tools
click en Configure Palette (configura paleta componentes)
En panel izquierdo click add (para agregar un nombre al paquete ejemplo swing
containers)
95
Escribir el nombre de la nueva opcin
Seleccionar page type java
Seleccionar aceptar
En panel derecho click add (para agregar clases a la nueva opcion ejemplo
jbutton)
De la lista library elegir swing and awt
De la opcin javax elegir swing
Hacer click Joptionpane
Seleccionar instalar - si
Seleccionar aceptar
Si no desea seguir agregando entonces aceptar y salir de la ventana de
configuracin


3.- Importar un Jar
Hacer anticlick sobre el nombre de un proyecto ejemplo: xxx.jpr
En el arbol ir a Profiles/Development/Libraries
Una vez ah en la parte derecha de la pantalla debers hacer un new..
Aparecer una ventana en la que debes incluir la ruta del .jar que deseas
aadir a tu proyecto.
Seleccionar el nombre del J ar
Seleccionar aceptar

4.- Aplicacin Java Swing
En este ejemplo tratar de detallar al mximo cada paso a realizarse as como ir
sealando algunas ayudas con las que cuentas este IDE, y dar doble clic el
jdeveloper para poder comenzar a trabajar.











96
Luego de la pantalla de carga aparecer la pantalla principal y damos clic derecho
dentro de Applications Navigator en Applications y seleccionamos New
Application










Nos aparecer la siguiente pantalla en la cual en el campo Application Name
pondremos nuestro nombre de la aplicacin para este ejemplo realizaremos una
aplicacin para un departamento mdico en el Directory Name se especifica la
direccin en donde se alojar nuestro Proyecto, dentro de Application Package
Prefix pondremos una abreviatura para identificar nuestro proyecto (para este
ejemplo use el prefijo dm), en el Application Template seleccionaremos entre el
men la opcin Java Application [Java,Swing] y pulsamos en Aceptar.













97
El resultado ser el siguiente:

Para desarrollar una aplicacin con una interfaz grfica de usuario no podemos
descuidar la parte del modelado de clases principales que es la que nos proveern
del conocimiento necesario que ser necesario para desarrollar nuestra aplicacin
como por ejemplo las clases persona, paciente, etc., realizaremos una aplicacin
aplicando el Modelo Vista Controlador, realizaremos nuestro diagrama de clases
para esta aplicacin.

98

Ahora damos un clic derecho en Client y seleccionamos la opcin New
En esta pantalla seleccionamos dentro de las categoras La opcin Diagrams y
dentro de tems la opcin Java Class Diagram y pulsamos Aceptar.

En esta pantalla pondremos un nombre a nuestro diagrama en Name y pulsamos
Aceptar. (Para este ejemplo el nombre del diagrama es DiagramaDM).













99
Ahora nos dirigimos a la paleta de componentes (Component Palete) y damos un
clic en Java Class

Ahora damos un click en cualquier parte del rea para dibujar nuestro diagrama y
ponemos el nombre de nuestra clase, es este caso: Persona veremos que tambin en
el navegador nuestra clase persona ya creada.

Ahora damos dos clicks en la parte designada para atributos y nos aparece un mini
pantalla para escribir aqu los atributos como es una aplicacin sencilla solo
pondremos un par de atributos como: nombres, apellidos, sexo, estado civil.
100
Ahora damos un click fuera del rea de dibujo y luego damos doble click en Persona
y podemos ver nuestros atributos escritos, para generar los mtodos accesores: Get y
Set de cada atributo, damos un click derecho en cualquier rea limpia y
seleccionamos la opcin: Generate Accessors

Ahora seleccionamos todos nuestros atributos y pulsamos aceptar y podemos ver
como todos estos mtodos aparecen ya codificados en nuestra clase.










Regresamos a nuestro diagrama y creamos en esta ocasin la clase Paciente y esta
clase ser una clase hija de la clase Persona, para eso haremos uno de la flecha
Extends que nos provee la paleta y haremos un marcado desde la clase Paciente
hasta la clase Persona.

101

Ahora pondremos un par de atributos como: Observaciones y antecedentes.
Crearemos tambin la clase FichaMedica con los siguientes atributos: Numero de
Ficha y Paciente, observe como al momento de fijar el atributo private Paciente
paciente; se crea la relacin entre las 2 clases : Paciente y FichaMedica.

102
Como en esta aplicacin haremos que los datos posteriormente se guarden en un
archivo haremos que cada una de estas clases implemente la interfaz serializable de
la siguiente manera: dando click derecho en cada clase y seleccionando Source y
Luego Implement Interface como se muestra en la figura adjunta.







Luego en la pantalla que se nos presenta escribir Serializable, en el momento de
comenzar a tipiar comienza a aparecer este nombre de interfaz en la parte inferior
pudiendo seleccionar el del paquete java.io y listo.














Ahora solo nos resta crear la clase ListaDeFichas la cual no poseer constructor.
Por qu no crearemos un constructor para esta clase? Porque esta ser la clase que
poseer los mtodos de : guardar, actualizar, abrir, eliminar, eliminar todos y
mostrar los elementos en una tabla, por ejemplo para guardar una FichaMedica
(ficha) nosotros crearemos una instancia de FichaMedica, a este objeto ficha creado
le asignaremos los datos de numero de ficha y paciente; datos que sern recogidos
103
de nuestra interfaz grfica de usuario que la construiremos en breve; este objeto
ficha se almacenar de la siguiente manera: ListaDeFichas.guardar(ficha); entonces
no necesitaremos instanciar en cada momento la clase ListaDeFichas ya que
crearemos mtodos estticos para operar las fichas; entonces nuestra clase
ListaDeFichas tendr un atributo esttico del tipo Vector<FichaMedica>en el que
se operarn las fichas. Por el momento el cuerpo de esos mtodos estarn vacos
hasta que los necesitemos.
Nuestro diagrama quedar de la siguiente manera por el momento.

Para compilar y guardar todo lo que hemos hecho en esta clase daremos un click en
el icono a manera de dos disquetes o en cada clase daremos un click en el icono del
104
disquete o Ctrl+S; esta herramienta tambin nos provee de ayudas como: un
historial History con el cual podemos ver todos los cambios que ha ido sufriendo
nuestra clase, un Source en el cual podemos ver todo el cdigo fuente de nuestra
clase y un Design en el cual se visualizar de una manera grfica los componentes
de nuestra clase en caso que puedan ser vistos, esta ayuda nos servir cuando
diseemos nuestras clases java Swing (interfaces grficas de usuario).















En esta pantalla dentro del Output Directory copia la lnea justo hasta antes de que
comience el nombre de tu proyecto y pulsa Aceptar:
(Para mi caso copie: D:\Archivos de Programa\jdevstudio10131\jdev\mywork).

105















Posteriormente abre por ejemplo Mi PC y en la parte de Direccin tipea o copia la
direccin antes mencionada D:\Archivos de
Programa\jdevstudio10131\jdev\mywork da un enter y podrs ver a nuestro
proyecto fsicamente.














106
Para importar una aplicacin haremos los siguiente, nos dirigimos a nuestra carpeta
jdevstudio10131 donde se encuentra nuestro IDE luego vamos a la carpeta jdev y
por ltimo a mywork y ah pegamos la aplicacin (si la aplicacin la tenemos como
un archivo con extensin .zip o tar, rar , o cualquier tipo de formato que indique
compresin debemos descomprimir el archivo y pegar la carpeta resultante en esta
direccin).











Una vez hecho esto solo resta que el IDE lo reconozca dentro del Applications
Navigator para eso damos un click derecho en Applications y seleccionamos la
opcin Add to Applications














107
Seleccionamos el proyecto a importar y pulsamos Open y en la siguiente pantalla
seleccionamos el archivo con extensin .jws y pulsamos Open y listo ya estar
nuestra aplicacin en el Applications Navigator lista para poder ser operada.

Nota: Este proyecto ha sido obtenido de Internet de la direccin:
http://indomable.wordpress.com/2007/11/04/aplicaciones-java-swing-con-
oracle-jdeveloper-101310-clase-1/

Nosotros los autores del manual, consideramos que este ejemplo incluido en el
anexo, sera de ayuda para los alumnos de nuestra Universidad Nacional de Piura por
lo que se incluye en este trabajo

También podría gustarte