Puntos de conocimiento de la entrevista de Spring / las preguntas y respuestas más completas de la entrevista de Spring

Resumen de primavera

1. ¿Qué es la primavera?

Spring es un marco de desarrollo de código abierto para aplicaciones empresariales java. Spring se utiliza principalmente para desarrollar aplicaciones Java, pero algunas extensiones están destinadas a crear aplicaciones web en la plataforma J2EE. El objetivo del marco Spring es simplificar el desarrollo de aplicaciones empresariales Java y promover buenos hábitos de programación a través de un modelo de programación basado en POJO.

2. ¿Cuáles son los beneficios de usar Spring Framework?

Ligero: Spring es liviano, la versión básica es de aproximadamente 2 MB.

Inversión del control: Spring logra un acoplamiento flexible mediante la inversión del control.Los objetos dan sus dependencias en lugar de crear o encontrar objetos dependientes.

Programación orientada a aspectos (AOP): Spring admite la programación orientada a aspectos y separa la lógica empresarial de la aplicación de los servicios del sistema.

Contenedor: Spring contiene y administra el ciclo de vida y la configuración de los objetos en la aplicación.

Marco MVC : el marco WEB de Spring es un marco bien diseñado y una buena alternativa al marco web.

Gestión de transacciones: Spring proporciona una interfaz de gestión de transacciones continua, que puede extenderse desde transacciones locales a transacciones globales (JTA).

Manejo de excepciones: Spring proporciona una API conveniente para convertir excepciones específicas relacionadas con la tecnología (como las lanzadas por JDBC, Hibernate o JDO) en excepciones consistentes no verificadas.

3. ¿En qué módulos se compone Spring?

Los siguientes son los módulos básicos del marco Spring:

Módulo principal

Módulo de frijoles

Módulo de contexto

Módulo de lenguaje de expresión

Módulo JDBC

Módulo ORM

Módulo OXM

Módulo de servicio de mensajería Java (JMS)

Módulo de transacciones

Módulo web

Módulo Web-Servlet

Módulo Web-Struts

Módulo Web-Portlet

4. Módulo contenedor central (contexto de la aplicación).

Este es el módulo básico de Spring que proporciona las funciones básicas del marco de Spring. BeanFactory es el núcleo de cualquier aplicación basada en Spring. El marco de Spring se basa en este módulo, lo que convierte a Spring en un contenedor.

5. Ejemplos de implementación de BeanFactory-BeanFactory.

Bean factory es una implementación del patrón de fábrica, que proporciona la función de inversión de control para separar la configuración y las dependencias de la aplicación del código real de la aplicación.

La implementación de BeanFactory más utilizada es la clase XmlBeanFactory.

6 、 XMLBeanFactory 

El más utilizado es org.springframework.beans.factory.xml.XmlBeanFactory, que carga beans de acuerdo con la definición del archivo XML. El contenedor lee los metadatos de configuración de un archivo XML y los usa para crear un sistema o una aplicación completamente configurados.

7, explica el módulo AOP

El módulo AOP se utiliza para el desarrollo orientado a aspectos de las aplicaciones Spring que se nos envían. La Alianza AOP proporciona una gran cantidad de apoyo, lo que garantiza la similitud de Spring y otros marcos AOP. Este módulo trae la programación de metadatos a Spring.

8. Explique la abstracción JDBC y el módulo DAO.

Mediante el uso de la abstracción JDBC y el módulo DAO, el código de la base de datos se mantiene conciso y se pueden evitar los problemas causados ​​por el cierre incorrecto de los recursos de la base de datos.Proporciona una capa de acceso de excepción unificada sobre la información de error de varias bases de datos. También utiliza el módulo AOP de Spring para proporcionar servicios de gestión de transacciones para objetos en aplicaciones Spring.

9. Explique el módulo de integración de mapeo relacional / objeto.

Spring admite el uso de una herramienta de mapeo de objetos / relacional (ORM) además de JDBC directo al proporcionar un módulo ORM. Spring admite la integración de marcos ORM convencionales como Hiberate, JDO e iBATIS SQL Maps. La gestión de transacciones de Spring también es compatible con todos los marcos ORM y JDBC anteriores.

10. Explique el módulo WEB.

El módulo WEB de Spring se basa en el módulo de contexto de la aplicación para proporcionar un contexto adecuado para las aplicaciones web. Este módulo también incluye soporte para una variedad de tareas orientadas a la web, como el manejo transparente de múltiples solicitudes de carga de archivos y la vinculación de parámetros de solicitud a nivel de programa a sus objetos comerciales. También tiene soporte para Jakarta Struts.

12. Archivo de configuración de Spring

El archivo de configuración de Spring es un archivo XML, este archivo contiene información de clase, describe cómo configurarlos y cómo llamarse entre sí.

13. ¿Qué es el contenedor Spring IOC?

Spring IOC es responsable de crear objetos, administrar objetos (a través de la inyección de dependencia (DI), ensamblar objetos, configurar objetos y administrar todo el ciclo de vida de estos objetos).

14. ¿Cuáles son las ventajas del COI?

La inyección de IOC o dependencia minimiza la cantidad de código de aplicación. Hace que la aplicación sea fácil de probar, las pruebas unitarias ya no requieren un mecanismo de búsqueda de singleton y JNDI. El menor costo y la menor intrusión hacen posible un acoplamiento flexible. El contenedor IOC admite la inicialización china hambrienta y la carga diferida al cargar servicios.

15. ¿Cuál es la implementación habitual de ApplicationContext?

FileSystemXmlApplicationContext: este contenedor carga la definición de beans desde un archivo XML y se debe proporcionar a su constructor el nombre de ruta completo del archivo de configuración de XML Bean.

ClassPathXmlApplicationContext: Este contenedor también carga la definición de beans desde un archivo XML.Aquí, debe establecer la ruta de clase correctamente porque este contenedor encontrará la configuración del bean en la ruta de clase.

WebXmlApplicationContext: este contenedor carga un archivo XML, que define todos los beans de una aplicación WEB.

16. ¿Cuál es la diferencia entre Bean Factory y los contextos de aplicación?

Los contextos de aplicación proporcionan una forma de procesar mensajes de texto. Un enfoque común es cargar recursos de archivos (como espejos), que pueden publicar eventos en beans registrados como oyentes. Además, las operaciones realizadas en el contenedor u objetos dentro del contenedor que tienen que ser procesados ​​programáticamente por la fábrica de frijoles pueden procesarse de manera declarativa en contextos de Aplicación. Los contextos de aplicación implementan la interfaz MessageSource, que implementa una forma conectable para obtener mensajes localizados.

17. ¿Qué aspecto tiene una aplicación Spring?

Una interfaz que define algunas funciones.

Esta implementación incluye propiedades, sus Setters, métodos y funciones getter, etc.

Primavera AOP。

Archivo de configuración XML de Spring.

Programas de cliente que utilizan las funciones anteriores.

Inyección de dependencia

18. ¿Qué es la inyección de dependencia en Spring?

La inyección de dependencia, un aspecto de la COI, es un concepto común y tiene muchas explicaciones. El concepto es que no necesita crear un objeto, solo necesita describir cómo se crea. No ensambla sus componentes y servicios directamente en el código, pero necesita describir qué componentes necesitan qué servicios en el archivo de configuración, y luego un contenedor (contenedor IOC) es responsable de ensamblarlos.

19. ¿Cuáles son los diferentes tipos de métodos IOC (inyección de dependencia)?

Inyección de dependencia de constructor: La inyección de dependencia de constructor se realiza activando el constructor de una clase por el contenedor. La clase tiene una serie de parámetros, y cada parámetro representa una dependencia de otras clases.

Inyección del método Setter: La inyección del método Setter significa que después de que el contenedor instancia el bean llamando al constructor sin parámetros o al método de fábrica estática sin parámetros, se llama al método setter del bean, que implementa la inyección de dependencia basada en el setter.

20. ¿Qué método de inyección de dependencia recomienda, inyección de constructor o inyección de método Setter?

Puede usar dos métodos de dependencia, inyección de constructor e inyección de método Setter. La mejor solución es utilizar parámetros de constructor para implementar dependencias obligatorias y métodos de establecimiento para implementar dependencias opcionales.

Frijoles de primavera

21. ¿Qué son los frijoles de primavera?

Los Spring beans son esos objetos Java que forman la columna vertebral de una aplicación Spring. Se inicializan, ensamblan y administran mediante el contenedor Spring IOC. Estos beans se crean mediante metadatos configurados en el contenedor. Por ejemplo, se define en forma de <bean /> en un archivo XML.

Los beans definidos por el marco de Spring son todos beans singleton. Hay un atributo "singleton" en la etiqueta del bean. Si se le asigna TRUE, el bean es un singleton, de lo contrario es un bean prototipo. El valor predeterminado es TRUE, por lo que todos los beans en el marco de Spring son singleton por defecto.

22. ¿Qué incluye una definición de Spring Bean?

La definición de un Spring Bean contiene todos los metadatos de configuración que el contenedor debe conocer, incluido cómo crear un bean, los detalles de su ciclo de vida y sus dependencias.

23. ¿Cómo proporcionar metadatos de configuración al contenedor Spring?

Hay tres formas importantes de proporcionar metadatos de configuración al contenedor Spring.

Archivo de configuración XML.

Configuración basada en anotaciones.

Configuración basada en Java.

24. ¿Cómo se define el alcance de una clase? 

Al definir un <bean> en Spring, también podemos declarar un alcance para el bean. Puede definirse mediante el atributo de alcance en la definición del bean. Por ejemplo, cuando Spring quiere producir una nueva instancia de bean cada vez que se necesita, la propiedad de alcance del bean se especifica como prototipo. Por otro lado, un bean debe devolver la misma instancia cada vez que se utiliza, y el atributo de alcance de este bean debe establecerse en singleton.

25. Explique el alcance de varios beans compatibles con Spring.

El marco de Spring admite los siguientes cinco ámbitos de frijol:

singleton: el  bean tiene solo una instancia en cada contenedor Spring ioc.

Prototipo : una definición de frijol puede tener varias instancias.

solicitud : cada solicitud http creará un bean, y el alcance solo es válido en el contexto de un Spring ApplicationContext basado en web.

sesión : en una sesión HTTP, una definición de bean corresponde a una instancia. Este alcance solo es válido en el caso de Spring ApplicationContext basado en web.

global-session : en una sesión HTTP global, una definición de bean corresponde a una instancia. Este alcance solo es válido en el caso de Spring ApplicationContext basado en web.

El alcance del bean Spring predeterminado es Singleton.

26. ¿Es seguro el bean singleton en el subproceso del marco Spring?

No, los beans singleton en el marco de Spring no son seguros para subprocesos.

27. Explique el ciclo de vida de los frijoles en el marco de Spring.

El contenedor Spring lee la definición de bean del archivo XML y crea una instancia del bean.

Spring llena todas las propiedades de acuerdo con la definición del frijol.

Si el bean implementa la interfaz BeanNameAware, Spring pasa el ID del bean al método setBeanName.

Si el Bean implementa la interfaz BeanFactoryAware, Spring pasa beanfactory al método setBeanFactory.

Si hay BeanPostProcessors asociados con el bean, Spring los llamará en el método postProcesserBeforeInitialization ().

Si el bean implementa IntializingBean, llame a su método afterPropertySet. Si el bean declara un método de inicialización, llame a este método de inicialización.

Si hay BeanPostProcessors asociados con beans, se llamará al método postProcessAfterInitialization () de estos beans.

Si el bean implementa DisposableBean, llamará al método destroy ().

28. ¿Cuáles son los métodos importantes del ciclo de vida del frijol? ¿Puedes sobrecargarlos?

Hay dos métodos importantes del ciclo de vida de los frijoles: el primero es la configuración, que se llama cuando el contenedor carga el frijol. El segundo método es el desmontaje, que se llama cuando el contenedor descarga la clase.

La etiqueta del bean tiene dos atributos importantes (método init y método destroy). Con ellos puede personalizar los métodos de inicialización y cierre de sesión usted mismo. También tienen las anotaciones correspondientes (@PostConstruct y @PreDestroy).

29. ¿Qué es el bean interno de Spring?

Cuando un bean solo se usa como una propiedad de otro bean, se puede declarar como un bean interno. Para definir el bean interno, en los metadatos de configuración basados ​​en XML de Spring, se puede especificar en <propiedad /> o <constructor-arg El elemento <bean /> se utiliza en el elemento />. Los beans internos suelen ser anónimos y su alcance es generalmente prototipo.

30. ¿Cómo inyectar una colección java en Spring?

Spring proporciona las siguientes colecciones de elementos de configuración:

El tipo <list> se usa para inyectar una lista de valores, permitiendo el mismo valor.

El tipo <set> se usa para inyectar un conjunto de valores, y no se permite el mismo valor.

El tipo <map> se utiliza para inyectar un conjunto de pares clave-valor. Tanto las claves como los valores pueden ser de cualquier tipo.

El tipo <props> se utiliza para inyectar un conjunto de pares clave-valor, y tanto las claves como los valores solo pueden ser del tipo String.

31. ¿Qué es el ensamblaje de frijoles? 

Ensamblaje, o ensamblaje de beans, se refiere a ensamblar beans en el contenedor Spring, siempre que el contenedor necesite conocer las dependencias de los beans y cómo ensamblarlos a través de la inyección de dependencias.

32. ¿Qué es el ensamblaje automático de frijol?

El contenedor Spring puede ensamblar automáticamente los granos cooperantes, lo que significa que el contenedor no necesita la configuración de <constructor-arg> y <property>, y puede manejar automáticamente la cooperación entre los granos a través de la fábrica de Bean.

33. Explique diferentes formas de montaje automático.

Hay cinco métodos de ensamblaje automático que se pueden usar para indicar al contenedor Spring que use el ensamblaje automático para la inyección de dependencias.

no : el método predeterminado es no realizar el ensamblaje automático y realizar el ensamblaje estableciendo explícitamente el atributo ref.

byName: Ensamblaje automático a través del nombre del parámetro El contenedor Spring encuentra en el archivo de configuración que el atributo autowire del bean está establecido en byname, y luego el contenedor intenta emparejar y ensamblar el bean con el mismo nombre que el atributo del bean.

byType: a través del ensamblaje automático del tipo de parámetro, el contenedor Spring encuentra en el archivo de configuración que el atributo autowire del bean está establecido en byType, y luego el contenedor intenta hacer coincidir y ensamblar un bean del mismo tipo que el atributo del bean. Si varios beans cumplen las condiciones, se produce un error.

Constructor : Este método es similar a byType, pero debe proporcionarse a los parámetros del constructor. Si no hay un tipo de parámetro de constructor determinado con parámetros, se lanzará una excepción.

autodetect: Primero intente usar el constructor para autoensamblar, si no funciona, use el método byType.

34. ¿Cuáles son las limitaciones del montaje automático?

Las limitaciones del montaje automático son:

Reescribir : aún necesita usar la configuración <constructor-arg> y <property> para definir dependencias, lo que significa que siempre debe reescribir el cableado automático.

Tipos de datos básicos : no puede ensamblar automáticamente atributos simples, como tipos de datos básicos, cadenas de cadenas y clases.

Característica difusa: el montaje automático no es tan preciso como el montaje explícito. Si es posible, se recomienda el montaje explícito.

35. ¿Puedes inyectar una cadena vacía y una nula en Spring?

lata.

Anotación de primavera

36. ¿Qué es la configuración de anotaciones Spring basada en Java? Proporcione algunos ejemplos de anotaciones.

La configuración basada en Java le permite realizar la mayor parte de su configuración de Spring con la ayuda de una pequeña cantidad de anotaciones de Java en lugar de a través de archivos XML.

Tome la anotación @Configuration como ejemplo. Se usa para marcar que una clase puede usarse como una definición de bean y usarse por el contenedor Spring IOC. Otro ejemplo es la anotación @Bean, que indica que este método devolverá un objeto, que está registrado como un bean en el contexto de la aplicación Spring.

37. ¿Qué es la configuración de contenedor basada en anotaciones?

En comparación con los archivos XML, la configuración del tipo de anotación se basa en el ensamblaje de componentes a través de metadatos de código de bytes, en lugar de declaraciones de corchetes angulares.

Los desarrolladores usan anotaciones en las clases, métodos o atributos correspondientes para configurar directamente en la clase del componente en lugar de usar xml para expresar la relación del ensamblaje del bean.

38. ¿Cómo abrir el ensamblaje de anotaciones?

El ensamblaje de anotación no está habilitado por defecto. Para usar el ensamblaje de anotación, debemos configurar el elemento <context: annotation-config /> en el archivo de configuración de Spring.

39, @ anotación requerida

Esta anotación indica que las propiedades del bean deben establecerse durante la configuración, a través de un valor de propiedad explícito definido por un bean o mediante un ensamblaje automático.Si la propiedad del bean anotada con @Required no está establecida, el contenedor arrojará una BeanInitializationException.

40, @Autowired anotación

La anotación @Autowired proporciona un control más detallado, incluido dónde y cómo completar el ensamblaje automático. Su uso es el mismo que @Required, modificando métodos setter, constructores, atributos o métodos PN con nombres arbitrarios y / o múltiples parámetros.

41, anotación @Qualifier

Cuando hay varios beans del mismo tipo, pero solo uno necesita ensamblarse automáticamente, use la anotación @Qualifier y la anotación @Autowire en combinación para eliminar esta confusión y especificar el bean exacto que necesita ensamblarse.

Acceso a datos de primavera

42. ¿Cómo utilizar JDBC de forma más eficaz en el marco de Spring? 

Usando el marco SpringJDBC, se reducirá el costo de la administración de recursos y el manejo de errores. Por lo tanto, los desarrolladores solo necesitan escribir declaraciones y consultas para acceder a los datos de los datos. JDBC también se puede usar de manera más efectiva con la ayuda de las clases de plantilla proporcionadas por el marco de Spring. Esta plantilla se llama JdbcTemplate (consulte aquí para ver ejemplos)

43 、 JdbcTemplate

La clase JdbcTemplate proporciona muchos métodos convenientes para resolver, como convertir datos de bases de datos en tipos u objetos de datos básicos, ejecutar declaraciones de operaciones de bases de datos escritas o invocables y proporcionar manejo de errores de datos personalizados.

44, soporte de Spring para DAO

El soporte de Spring para Data Access Objects (DAO) está diseñado para simplificar su uso junto con tecnologías de acceso a datos como JDBC, Hibernate o JDO. Esto nos permite cambiar fácilmente la capa de persistencia. No se preocupe por detectar excepciones específicas para cada tecnología al codificar.

45. ¿Cómo acceder a Hibernate usando Spring? 

Hay dos formas de acceder a Hibernate en Spring:

Inversión de control Hibernate Template y Callback.

Heredar HibernateDAOSupport para proporcionar un interceptor AOP.

46. ​​ORM apoyado por Spring

Spring admite los siguientes ORM:

Hibernar

iBatis

JPA (API de persistencia de Java)

TopLink

JDO (objetos de datos Java)

OJB

47. ¿Cómo combinar Spring e Hibernate a través de HibernateDaoSupport?

Utilice SessionFactory de Spring para llamar a LocalSessionFactory. El proceso de integración se divide en tres pasos:

配置 la Fábrica de Sesiones de Hibernación。

Herede HibernateDaoSupport para implementar un DAO.

Ensamble en transacciones respaldadas por AOP.

48. Tipos de gestión de transacciones que admite Spring

Spring admite dos tipos de gestión de transacciones:

Gestión de transacciones mediante programación : esto significa que gestiona las transacciones mediante programación, lo que le brinda una gran flexibilidad pero es difícil de mantener.

Gestión declarativa de transacciones: esto significa que puede separar el código comercial y la gestión de transacciones, y solo necesita utilizar anotaciones y configuración XML para gestionar las transacciones.

49. ¿Cuáles son las ventajas de la gestión de transacciones del marco Spring?

Proporciona un modelo de programación constante para diferentes API de transacciones como JTA, JDBC, Hibernate, JPA y JDO.

Proporciona un conjunto de API simples para la gestión programática de transacciones en lugar de algunas API de transacciones complejas como

Es compatible con la gestión declarativa de transacciones.

Está bien integrado con las diversas capas de abstracción de acceso a datos de Spring.

50. ¿Qué tipo de gestión de transacciones prefiere?

La mayoría de los usuarios del marco Spring eligen la gestión declarativa de transacciones porque tiene el menor impacto en el código de la aplicación, por lo que está más en línea con la idea de un contenedor ligero no intrusivo. La gestión declarativa de transacciones es mejor que la gestión programática de transacciones, aunque es un poco menos flexible que la gestión programática de transacciones (que le permite controlar las transacciones a través del código).

Programación orientada a aspectos de primavera (AOP)

51, explica AOP

La programación orientada a aspectos, o AOP, es una técnica de programación que permite modular los programas para eliminar las preocupaciones de forma horizontal o para eliminar las divisiones típicas de responsabilidades, como el registro y la gestión de transacciones.

52, Aspecto

El núcleo de AOP es el aspecto, que encapsula los comportamientos comunes de múltiples clases en un módulo reutilizable que contiene un conjunto de API para proporcionar funciones transversales. Por ejemplo, un módulo de registro se puede denominar el aspecto AOP del registro. Según diferentes requisitos, una aplicación puede tener varios aspectos. En Spring AOP, los aspectos se implementan mediante clases anotadas con @Aspect.

52. ¿Cuál es la diferencia entre el enfoque y el enfoque transversal en Spring AOP?

El foco es el comportamiento de un módulo en la aplicación, un foco puede definirse como una función que queremos implementar.
La preocupación transversal es una preocupación Esta preocupación es una función que utilizará toda la aplicación y afecta a toda la aplicación, como el registro, la seguridad y la transmisión de datos, que son requeridos por casi todos los módulos de la aplicación. Así que todas estas son preocupaciones transversales.

54. Punto de conexión

El punto de conexión representa una determinada ubicación de una aplicación, donde podemos insertar un aspecto AOP, que en realidad es la ubicación donde la aplicación ejecuta Spring AOP.

55. Notificación

La notificación es una acción que se debe realizar antes o después de que se ejecute el método. En realidad, es un segmento de código activado por el marco SpringAOP cuando se ejecuta el programa.

Se pueden aplicar cinco tipos de notificaciones a los aspectos de Spring:

before : notificación previa, que se llama antes de que se ejecute un método.

after: una notificación llamada después de  que se ejecuta el método, independientemente de si el método se ejecuta correctamente o no.

after-return:  una notificación que se ejecuta solo cuando el método se completa con éxito.

after-throwing:  Notificación ejecutada cuando el método sale lanzando una excepción.

around:  Notificaciones llamadas antes y después de la ejecución del método.

56, el punto de corte

El punto de entrada es un punto de conexión o un conjunto de puntos donde se realizará la notificación. El punto de entrada se puede especificar mediante expresión o coincidencia.

57. ¿Qué es la introducción? 

La introducción nos permite agregar nuevos métodos y propiedades a las clases existentes.

58. ¿Qué es el objeto objetivo? 

El objeto notificado por uno o más aspectos. Suele ser un objeto proxy. También se refiere al objeto aconsejado.

59. ¿Qué es una agencia?

Un proxy es un objeto creado después de notificar al objeto de destino. Desde la perspectiva del cliente, el objeto proxy y el objeto de destino son lo mismo.

60. ¿Cuántos tipos diferentes de agentes automáticos existen?

BeanNameAutoProxyCreator

DefaultAdvisorAutoProxyCreator

Autoproxying de metadatos

61. Qué es tejer. ¿Cuáles son las diferencias en las aplicaciones de tejido?

Tejer es el proceso de conectar aspectos con otros tipos de aplicaciones u objetos o crear un objeto notificado.

El tejido se puede realizar en tiempo de compilación, tiempo de carga o tiempo de ejecución.

62. Explicar la realización del aspecto basado en XML Schema.

En este caso, el aspecto se implementa mediante clases convencionales y configuración basada en XML.

63. Explique la implementación de aspectos basados ​​en anotaciones.

En este caso (basado en la implementación de @AspectJ), el estilo de la declaración de aspecto involucrada es consistente con la clase java ordinaria con anotaciones java5.

Spring 的 MVC

64. ¿Qué es el marco MVC de Spring?

Spring está equipado con un marco MVC con todas las funciones para crear aplicaciones web. Spring se puede integrar fácilmente con otros marcos MVC, como Struts. El marco MVC de Spring utiliza la inversión de control para aislar claramente los objetos comerciales de la lógica de control. También permite vincular parámetros de solicitud a objetos comerciales de manera declarativa.

65 、 DispatcherServlet

El marco MVC de Spring está diseñado alrededor de DispatcherServlet, que se usa para procesar todas las solicitudes y respuestas HTTP.

66 、 WebApplicationContext

WebApplicationContext hereda ApplicationContext y agrega algunas características únicas necesarias para las aplicaciones WEB. Es diferente del ApplicationContext general porque puede manejar temas y encontrar el servlet asociado.

67. ¿Qué es el controlador del marco Spring MVC?

El controlador proporciona un comportamiento para acceder a la aplicación, que generalmente se implementa a través de una interfaz de servicio. El controlador analiza la entrada del usuario y la transforma en un modelo que la vista le presenta al usuario. Spring implementa una capa de control de una manera muy abstracta, lo que permite a los usuarios crear controladores para múltiples propósitos.

68, anotación @Controller

La anotación indica que la clase desempeña el papel de controlador, y Spring no requiere que heredes ninguna otra clase base de controlador o que hagas referencia a la API de Servlet.

69, @RequestMapping anotación

La anotación se utiliza para asignar una URL a una clase o un método específico.

Supongo que te gusta

Origin blog.csdn.net/bj_chengrong/article/details/101100930
Recomendado
Clasificación