Aplicación web de gestión de relaciones con el cliente
| Características | Languaces y tecnologías | Configuración de entorno | Proceso principal | Proceso adicional | JSP | Notas |
|---|


Acerca de
Una aplicación web simple para administrar las relaciones con los clientes, utilizando Spring MVC e Hibernate, configurada por XML
Características
- Ver a los clientes
- Agregar nuevo cliente
- Actualizar el cliente
- Eliminar al cliente
- Soporte de registro de AOP
Languaces y tecnologías
- Java
- Xml
- Mysql
- MVC de primavera
- Spring AOP
- Hibernar
- Jstl
- JSP
- CSS/JavaScript
Proceso de desarrollo
Configuración Enviroment
Cree un nuevo proyecto web dinámico en Eclipse
Cree la base de datos MySQL en Workbench [Crear-DATABASE.SQL]
Importar frascos a la biblioteca: web-inf/lib
- Conector MySQL [URL]
- JSTL API (para JSP) [URL]
- Marco de primavera [URL]
- Hibernate (carpeta requerida) y C3P0 (carpeta opcional) [URL]
- AspectoJ (para AOP) [URL].
Para Java 9+, incluya los siguientes frascos en Web-INF/LIB
- javax.activation-1.2.0.Jar
- Jaxb-API-2.3.0.Jar
- jaxb-core-2.3.0.Jar
- jaxb-simpl-2.3.0.Jar
Conexión de la base de datos de prueba (Project Facets/Runtimes/TomCat): cree un servlet [testDatabaseServlet]
Incluya los archivos XML Configuation (Spring MVC y Web) en Web-INF.
Configurar Spring + Hibernate en archivos XML [Spring-MVC-Crud-Demo-Servlet.xml]
- Definir espacios de nombres XML y ubicaciones de esquema
- Definir la base de datos de la base de datos / grupo de conexión
- Configuración de fábrica de sesión de hibernación
- Configuración del administrador de transacciones Hibernate
- Habilitar la configuración de la anotación transctual
- Agregue soporte para leer recursos web: CSS, imágenes, JS, etc.
- Habilitar el proxy de AutoSJ Auto
Test Spring Controller: cree una clase de controlador con un método Regrese a un nuevo archivo JSP en la carpeta 'Ver'.
Principal
- Cree la clase de clientes y mapa a la tabla de bases de datos utilizando Hibernate.
- Crea la interfaz CustomerDAO.
- Crear clase CustomerDaoImpl con @Repository
- Inyectar la fábrica de sesión con @aUtowired
- Implementar métodos
- Obtenga la sesión actual de Hibernate
- Cree una consulta [org.hibernate.query.query]
- Ejecutar consultas y obtener la lista de resultados
- Resultado de retorno
- Crear interfaz de servicio
- Crear implementación de servicios con @Service
- Inyecte Dao con @aUtowired .
- Implementar métodos con @Transactional .
- Delegado llamadas a Dao.
- Crear/actualizar CustomerController
- Inyectar clientes de servicio usando @aUtowired
- Cree un método de solicitud con @RequestMapping
- Obtenga el resultado del servicio de DAO o Crear atributo del modelo para vincular datos de formulario [CustomerController]
- Agregar resultado/atributo al modelo
- Página de retorno JSP
- Crear/actualizar páginas JSP
- Agregue soporte para las etiquetas de JSTL Core:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
- Crear clase de aspecto con @Aspect y @Component [LoggingSpect] [referencia]
- Agregar Logger
- Declaraciones de punto de configuración
- Agregar consejos
Adicional
- Página de Prettify JSP con CSS
- Coloque CSS en una carpeta de 'Recursos' en Webcontent.
- Configure el resorte para servir la carpeta 'Recursos'.
- CSS de referencia en el JSP.
- Configurar archivos de bienvenida en Spring XML para redirigir desde la página de inicio
- Cree un JSP Inside WebContent, coincida con el nombre del archivo de bienvenida en XML [index.jsp]
- Redirigir a una dirección deseada:
<% response.sendRedirect("address"); %>
- Método de solicitud de refactorización en el controlador usando @getmapping , @PostMapping
JSP
- Soporte para etiquetas de formulario MVC Spring:
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%> -
${pageContext.request.contextPath} Devuelve el nombre de la aplicación adecuado en JSP.
Notas
- El paquete para escanear debe coincidir en el archivo XML de configuración de Spring.
- La carpeta 'Ver' que contiene archivos JSP debe coincidir en el archivo XML de configuración de Spring
- Ejecutar Proyecto: Elija Project Root -> Ejecutar AS -> Ejecutar en el servidor.
- Use sessionFactory.saveOrupdate (): combine save () y update () [customerDaoImpl]
- @RequestMapping (Hanlde Todos los métodos), @getmapping , @PostMapping
-
@RequestMapping(path="...", method=RequestMethod.GET) <=> @GetMapping(path="...") - Use "Redirect: Mapped_method" para redirigir a un método dado en el controlador en lugar de la página JSP [CustomerController]
- Use @Transactional [org.springframework] para iniciar y cerrar la transacción para un método [CustomerDao]
- Use @Repository con la implementación DAO para manejar la traducción de excepciones.
- Use @Service para la implementación del servicio.
- Patrón de diseño de capa de servicio
- Defina @Transactional en la capa de servicio en lugar de DAO.
- Inyectar servicio en lugar de DAO en el controlador.
- Controlador <-> Capa de servicio <-> Dao.
Ir a la cima