Struts
Beatriz Montero Fernández http://ousli.org
ÍNDICE
1) INTRODUCCIÓN 2) J2EE 3) MVC 4) INSTALACIÓN DE UN ENTORNO DE DESENVOLVEMENTO EN UBUNTU 7.04 5) STRUTS ● MODELO ● VISTA ● CONTROLADOR
INTRODUCCIÓN
¿QUE É STRUTS?
➢
Framework libre para o desenvolvemento de aplicacións web
➢ ➢
Baixo a plataforma J2EE Baixo o patrón MVCJ2EE
Conxunto de estándares e especificacións para o desenvolvemento de aplicación empresarias baseadas en compoñentes de software modulares, que se executan sobre un servidor de aplicacións, baixo a tecnoloxía Java Java + Compoñentes adicionais orientados a empresas
●
●
Inclúe: • Especificacións de API e define como coordinalas:JDBC,RMI,JMS, Servizos Web, XML,... •Especificacións únicas: EJB's, servlets, JSP's,.. • Varias tecnoloxías de servizos web
J2EE
J2EE
CARACTERÍSTICAS
Aplicacións de empresas portables, escalables, integrables con tecnoloxías anteriores Desarrolladores no desenvolvemento, deseñadores no deseño Pouco ou ningún gasto: ✔ Gratuito ✔ Moitas ferramentas de código aberto: • NetBeans IDE • Eclipse IDE • Apache Ant • Apache Maven • Junit •Apache Tomcat • ...
✔
MVC
●
CONTROLADOR: Único que recibe as peticións dos usuarios
●
MODELO: estado interno da aplicación (entidades e regras de negocio) VISTAS: presentan o estado interno do sistema
●
MVC
MODELO I (MVC1)
MVC
MODEL II (MVC2)
INSTALACIÓN DE UN ENTORNO DE DESARROLLO EN UBUNTU 7.04
SDK Java Apache Tomcat EasyEclipse Struts MySQL
STRUTSTÉRMINOS ESPECÍCOS
Actions ➢ Posible acción a invocar ➢ Regras de negocio ActionMapping ➢ Mapea as URL's ActionForm ➢ Formulario ➢ Encapsulan parámetros das peticións dos clientes ActionServlet. ➢ O controlador strutsconfig.xml. ➢ “A intelixencia do Controlador”
STRUTS
FUNCIONAMENTO
STRUTS: MODELO
JavaBeans ● Compoñente software que pode ser reutilizable. ● Implementan la interfaz serializable ● Constructor sen argumentos ● Propiedades accesibles mediante getXXX() y setXXX() ● Distínguense: JavaBeans de estado JavaBeans 'ActionForm' JavaBeans de Lóxica de Negocio
STRUTS: MODELO
Beans 'ActionForm' Herdan da clase org.apache.struts.action.ActionForm ● Non lóxica de negocio ● Validación automática: validate() ● No strutsconfig.xml:
●
...
STRUTS: MODELO
Beans Lóxica de Negocio
Clases que implementan a lóxica ● Reciben os beans de estado para manipulalos ● Independentes e reutilizables. ● Segundo a complexidade da aplicación: • JavaBeans ordinarios que interaccionan con JavaBeans de estado • JavaBeans ordinarios que acceden a BD usando JDBC• EnterpriseJavaBeans(EJB's)
●
STRTUS: MODELO
Acceso a BD Relacionales
Pool de conexións ● As conexións un base de datos son caras, existe un número limitado de conexións que se poden mater abertas nun servidor en función da súa memoria, potencia, do sistema ao que accedemos > non podemos arriesgarnos a esgotar as conexións. ● Conxunto limitado de conexión que se reutilizan continuamente para dar servizos aos clientes para aumentar a escalabilidade e o rendemento, o que fai posible que as conexións non se este abrindo continuamente. ● O pool de conexións inicializase con un número de conexións determinado. ● Os clientes abren a conexión, acceden ao servizo e por último pechan a conexión. ● É importante que o cliente abra e peche a conexión, porque si non se estaría devolvendo o pool, e correríamos o risco de esgotar os recursos do noso servidor.
STRUTS: MODELO
Pool de conexións de Struts • No strutsconfig.xml:
STRUTS: MODELO
Pool de conexións con Struts. ● Librerías que precisamos: • commonspool1.2.1.jar • mysqlconnectorjava5.0.3bin.jar • commonsdbcp1.2.1.jar ● Accendo ao pool de conexións: • A través de javax.sql.DataSource
......
Regístrate para leer el documento completo.