colección de respuesta corta mybatis, Primavera, SpringMVC, marco SSM

La primera pregunta: mybatis en el # {...} y $ {...} diferencia
Respuesta:
# {...}: "?"? "" Ubicación de parámetro hará uso de marcadores de posición cuando será reemplazado ejecutar SQL valor
$ {...}: directamente al valor del parámetro como parte de la implementación de SQL para la inyección de SQL puede ser →
cómo elegir:
. . . : cuando Insertar entrar de ginseng número es Hacer es S Q L retención fila de la departamento divisoria de cuando 使 {...}: Cuando los parámetros de tiempo insertan como parte de la ejecución de SQL debe utilizar {...}
# {...}: es el momento en que el parámetro pasado para interactuar con la base de datos, {...} # uso
determinarse fácilmente: el parámetro pasado en SQL si comillas simples. Las comillas simples se pueden utilizar {...} #, no comillas simples, usando $ {...}

La segunda pregunta: ¿mybatis desarrollo de interfaz de uso asignador, es necesario seguir algunas de las limitaciones
responder:
el valor del archivo de asignación 1.mapper espacio de nombres, debe ser igual al nombre completo de asignador de interfaz de
Identificación del SQL del archivo de asignación 2.mapper, debe ser igual método de interfaz nombre mapper
3.mapper archivo de asignación de SQL con el mismo tipo debe paramterType método correspondiente.
el valor de retorno y el valor de 4. el método debe ser resultType consistente o resultMap

Tercera pregunta: comandos comunes Maven, y sus significados
respuesta:
cambio de directorio raíz + derecha para abrir una ventana de comandos
mvn compilación compilador
mvn claro código de bytes
mvn compilación limpia para eliminar el código de bytes, y luego de compilación
mvn test prueba de ejecución
mvn package en el proyecto actual empaquetar el .war .jar
mvn sitio limpio ayuda a construir la documentación del proyecto
MVN instalar el paquete etiquetado elemento instalado Maven repositorio

Cuarta Pregunta: El valor de alcance en la gestión de las dependencias de Maven Qué? ¿Y cuál es el significado de cada valor?
Respuesta:
1, la compilación (rango de compilación)
la compilación es el rango predeterminado, si no se proporciona un rango, de ese rango es dependiente del alcance de la compilación. Compilar rango depende de todos los disponibles en la ruta de clase, mientras que van a ser empaquetados.
2, proporcionado (proporcionado rango)
dependencia Proporcionada cuando se usa sólo en un recipiente provisto de JDK o la dependencia. Por ejemplo, si desarrolla una aplicación web, es posible que necesite para compilar disponible en la ruta de clase Servlet API para compilar un servlet, pero que no desee incluir la API Servlet en el GUERRA empaquetado; la API Servlet JAR de su servidor de aplicaciones o contenedor de servlets disponible. Se ha proporcionado una serie de dependencia se puede utilizar en la compilación de ruta de clase (no en tiempo de ejecución). Ellos no son transitivas, no va a ser empaquetado.
3, tiempo de ejecución (rango de funcionamiento)
sistemas de tiempo de ejecución En tiempo de ejecución de dependencia y de prueba necesitan, pero no necesitan en tiempo de compilación. Por ejemplo, puede que sólo necesite JDBC JAR API en tiempo de compilación, pero sólo cuando se van a ejecutar el JDBC
implementación del controlador.
4, test (prueba de rango)
el rango de prueba depende, en general, no es necesario compilar y tiempo de ejecución, que sólo están disponibles en la recopilación de pruebas y la fase de operación de prueba.
5, el sistema (de todo el sistema)
rango depende sistema de la misma naturaleza, pero usted debe proporcionar explícitamente una ruta para el archivo JAR del sistema local. Esto se hace para permitir que el compilador basado en objetos locales, y estos objetos son parte de la biblioteca del sistema. Este componente debe estar siempre disponible, Maven no va a ir en busca de ella en el almacén. Si depende de un conjunto gama de todo el sistema, debe proporcionar un elemento systemPath. Tenga en cuenta que no se recomienda este rango (que siempre debe tratar de depender de las referencias de repositorio público o la costumbre Maven).

La quinta pregunta: Introducción mybatis mecanismo de almacenamiento en caché de
respuesta:
en la memoria para abrir una zona utilizada para almacenar datos, los datos se almacenan en la memoria denominada caché
Objetivo: Mejorar la eficacia de las consultas
principales: como la velocidad de la CPU de memoria más alta que las mismas interacciones con el disco interactivo la velocidad de la
esencia: el mapa
de la memoria caché mybatis en caché y caché secundaria
caché:
cada vez que se abre un SqlSession objetos cuando, en SqlSession se abrirá en un espacio como memoria caché para almacenar datos
tiene algunas limitaciones: sólo un SqlSession ámbito interno, pero SqlSession ciclo de vida relativamente corto. caché de nivel para mejorar el rendimiento es muy limitado
realmente a ser utilizado para mejorar el rendimiento de la memoria caché secundaria
caché secundaria:
1, ¿qué tipo de datos que caben en la memoria caché?
solicitada con frecuencia datos, no los datos modificados con frecuencia, los datos de lectura y escritura mucho más grandes que
2, la tasa de aciertos de caché es
la cantidad de datos de la cantidad de datos recuperados de la memoria caché / total adquirido de datos
3, el tiempo máximo de supervivencia
de datos pueden ser presente en la memoria de la más larga
memoria caché y caché secundaria pueden coexistir
caché de nivel es SqlSession
dos caché está en el nivel de espacio de nombres (el archivo de asignación, en el original)

Pregunta 6: mybatis utilizado comúnmente etiqueta dinámica SQL lo que
la respuesta:
si:
adecuado para una parte en la que las palabras contienen dinámica
si la función es
cuando se determina si se cumple la condición, añadir etiquetas si las palabras
cuando se juzga si las condiciones no son satisfechas cuando se añadió nada
al elija:
se aplica:
cuando la condición de determinación es positivo, se ejecuta una instrucción
cuando la condición de determinación es negativo, ejecutar otra instrucción
dónde y conjunto:
efecto que a:
1, donde cuando la sentencia de etiqueta no está vacío, será antes de la declaración de la costura en "donde" palabra clave
2, donde la etiqueta si la declaración es "y" o al principio de la "o", entonces el "y" u "o" será omitido
conjunto de papel:
1, si la declaración ajustada de la etiqueta no está vacío, será en el principio de la costura "conjunto" palabra clave
2, si la declaración es juego de separadores "" al final, entonces este '' se eliminará
Trim:
prefijo : prefijo añadido antes de la vuelta de cadena a lo que el
sufijo: sufijo, lo que se añadió después de la cadena devuelta
prefixoverrides: cuando el contenido de la cadena del comienzo de la El contenido será sobrescrito
suffixoverrides: cuando la cadena termina su contenido, el contenido se cubren con
la Foreach:
Nota: Cuando la matriz interfaz de parámetros o el método de recogida, MyBatis le permiten incluir el paquete en un mapa de parámetros
representar el tipo de parámetro clave, la primera letra en minúscula
predeterminado: array clave es la "matriz", conjunto de teclas para "lista", asigne la clave del "mapa"
Colección: valor de la clave de parámetros en el paquete en el mapa de
abierta: representa lo que comenzó cadena de
cierre: el final de una cadena que representa lo
material: cada uno del conjunto a un apodo del elemento
separador: elementos en el conjunto delimitador

P7: mybatis de archivo de asignación XML, diferente archivo de asignación XML, Identificación si se puede repetir?
Respuesta:
Diferentes archivo de asignación XML, si un espacio de nombres de configuración, el ID se puede repetir, si no hay espacio de nombres configurado, de la identificación no se puede repetir.

P8: Cuando los atributos de una clase de entidad y nombres de campo en la tabla no es lo mismo, la forma de los objetos del paquete
respuesta:
Método uno: mediante la definición de nombres de los campos en los alias de consulta sentencia SQL, por lo que los nombres de los campos de alias y clases de entidades Los nombres de atributos consistentes.
Aquí Insertar imagen Descripción
Método dos: relación uno a uno por los nombres de los campos de asignación y el nombre de las propiedades de clase de entidad
Aquí Insertar imagen Descripción
noveno preguntas: ¿Cuál es el papel de la etiqueta de la asociación? ¿Qué atributos comunes y utilizar la etiqueta de asociación es un papel?
Respuesta:
Asociación o: el procesamiento de una sola asociación asociada proceso de objeto único atributo
de propiedad: la inyección a los empleados qué atributo
seleccione: Enviar el que una instrucción SQL
javaType: Objeto de clase a la que la consulta SQL del conjunto de resultados, el paquete a (se puede omitir )
columna: resultados de los empleados se centraron en el valor de la columna que se utiliza como un objeto a condiciones asociadas con la consulta

Pregunta 10: mybatis lograr la asignación de objeto asociado de varias maneras, ¿cuáles son, por favor brevemente brevemente
respuesta:
Ambos están asociados con la consulta y la consulta SQL adicional
asociada a la consulta una instrucción SQL se envía al objeto principal y la Asociación objetos encapsulados comprobar simultáneamente.
consulta SQL adicional es una consulta SQL para ejecutar un objeto principal, de acuerdo con el valor conjunto de resultados de los principales objetos de la columna de clave externa, una consulta SQL ejecutado objeto asociado más, y se les asigna al objeto maestro.

pregunta Undécima: Objetos de la creación de primavera DESCRIPCIÓN manera
respuesta:
1, el constructor
2, fábrica estática
3, del Ejemplo Químico
4, la interfaz implementada FactoryBean

Duodécimo título: Primavera / SpringMVC notas comunes y su papel (al menos 8)
respuesta:
@ el componente, Repositorio @, @ Servicio, el controlador @: una clase de objeto gestionado-primavera se crea
@ Autowired, @ de recursos: de contenedores Obtiene el objeto de clase y de campo de asignación
@RequestMapping: método de asignación de ruta de acceso
@ResponseBody: método devuelve el objeto de convertir a JSON
la @Scope: establecer el ámbito objeto
@ PostConstruct, @ PreDestory: la vida de ajuste de ciclos objeto
@Aspect: conjunto a la clase de corte
@Transactional: Agregar control de transacción

Decimotercera pregunta: ¿Cuéntanos acerca de la comprensión de la COI / DI de primavera
respuesta: COI y DI de primavera están describiendo el mismo concepto desde diferentes ángulos. COI enfatizar el objeto creado derechos que se hace antes de la primavera. DI hicieron hincapié en que las propiedades del objeto por el valor automático de inyección de primavera.

pregunta Decimocuarta: orden anotación @Autowired para obtener el objeto cuando se inyecta el valor del campo del recipiente
Respuesta: En primer lugar, de acuerdo con el campo de tipo de adquisición, si ningún tipo lanzará una excepción si hay se inyecta directamente un tipo de juego ;. Si hay varios tipos de partidos, y luego buscar el objeto nombrado como el nombre del campo. Si usted puede encontrar la inyección directa, si no hay un nombre coincidente cómo lanzar una excepción

XV del título: Spring IoC funcionalidad completa de cuatro notas, así como las funciones respectivas de
la respuesta:
cuatro anotado con @ @ componentes, Repositorio, Servicio @ , @ Controlador de
cuatro funciones de anotación para completar el mismo.
La diferencia es: diferentes notas marcadas componentes en capas diferentes.
@Repository denotan capa Dao montaje
@Service componentes de la capa de negocio se denotan
@Controller capa de control de capa de conjunto denotan
etiqueta @Component no puede distinguir con precisión la que pertenece un componente

pregunta XVI: estático y dinámico agente proxy diferencia
respuesta:
el agente estático antes de que el programa se ejecuta el código de bytes ha existido objeto proxy, la relación entre el objeto objetivo y objeto proxy antes de que el programa se ejecuta se ha determinado.
Dinámica objeto de agente proxy no se ejecuta antes de que se genera el programa de código de bytes de código de bytes JVM dinámicamente durante la ejecución del programa. objetos proxy y relaciones en el objeto proxy se determina cuando se ejecuta el programa.

XVII título: similitudes y diferencias entre BeanFactory y ApplicationContext la
respuesta:
Ambos son objeto puede administrar Spring Spring recipiente contenedor.
La diferencia es, ApplicationContext es un BeanFactory sub-interfaces .ApplicationContext Además de lograr la interfaz BeanFactory Además también implementos mensajería, la internacionalización, y otras interfaces. por lo tanto ApplicationContext es más potente.
dos contenedores en el tiempo para crear objetos de diferentes .BeanFactory que va a crear objetos en la adquisición del objeto desde el recipiente, mientras que el objeto de contenedor ApplicationContext se instancia cuando se crea una instancia del contenedor de objeto gestionado.

problema XVIII: Comprobar existen los permisos en el método de la clase com.text.oa.permissionPermissionCheck cheque clase (), se encuentra ahora en todos los métodos com.text.oa.service.DepartmentService, al comienzo del proceso de añadir comprobaciones de permisos función, escribir el código de configuración xml AOP
respuesta:

<bean id="pc" class=com.text.oa.permissionPermissionCheck""></bean>
<aop:config ref="pc">
	<aop:pointcut id="pointcut" expression="execution( *com.text.oa.service.DepartmentService.*(..))">
	<aop:before method="check" pointcut-ref="pointcut"/>
</aop:config>

XIX pregunta: Enhanced AOP Cinco diferentes momentos de la primavera son lo que es, y explicar brevemente
la respuesta:
los antes: antes de la mejora de las operaciones realizadas en el principio del método
después de regresar-: Acentuación del canal trasero ejecuta cuando el método retorna la operación
después de lanzamiento de: mejora anormal, las operaciones de método realizado cuando se produce una excepción
después de: operaciones finales mejora realizado después de que el final del proceso, independientemente de si el método se ejecutará normalmente termina
alrededor de: refuerzo de sonido envolvente, reforzando manera puede personalizar

Título del artículo: las ventajas de ambos primavera de gestión de transacciones declarativa
respuestas:
camino xml: la ventaja, configuración unificada en el archivo de configuración XML se puede configurar para todas las transacciones comerciales necesidad de añadir algún método por asuntos añadiendo al mismo tiempo, la gestión unificada, fácil inconveniente de mantenimiento es: perfiles tedioso proceso, los archivos de configuración hinchada.
notas maneras: la ventaja de la configuración simple, sólo es necesario billetes de marcos en la clase de negocios pueden añadir inconveniente transacción es la necesidad de que todo lo que necesita para añadir notas anotación de tipo de transacción, configuración dispersado, no es propicio para el mantenimiento.

Vigésimo primera pregunta: ¿en SpringMVC, hacia adelante y reorientar el papel de la cadena de
respuesta:
características comunes de las dos cadenas es los prefijos y sufijos vista del resolver no tendrán efecto .forward papel es para reenviar la solicitud a modo de salto visualización de la página de redirección redirección es una manera de saltar a la vista de página

Un vigésimo segundo problema: la ejecución fluya SpringMVC
Respuesta:
Aquí Insertar imagen Descripción
(1) el usuario envía una petición al controlador front-end la DispatcherServlet;
; (2) la DispatcherServlet después de recibir la solicitud, la solicitud de procesador de llamadas HandlerMapping mapper para obtener el identificador
(. 3) procesador de mapeo url encuentra particular procesador de acuerdo con una petición, el procesador de generación de objetos y un bloqueador de procesador (si se genera cualquier) devuelven colectivamente al DispatcherServlet;
(. 4) para llamar al adaptador de procesador DispatcherServlet HandlerAdapter;
(. 5) adaptado para invocar particular a través de HandlerAdapter un procesador (Handler, también llamado back-end);
(. 6) realizan completa Handler devuelve ModelAndView;
(. 7) Handler HandlerAdapter es el resultado de la ejecución se devuelve al ModelAndView la DispatcherServlet;
(. 8) para los análisis sintácticos pase analizador DispatcherServlet ModelAndView ViewResolver vista;
(9) ViewResolver vista detallada del rendimientos analizan;
(10) de la vista DispatcherServlet render vista (datos del modelo venida vista llenos)
en respuesta a que el usuario DispatcherServlet (11.).

Veinte tercera pregunta: Configuración SpringMVC filtro de solicitud de codificación (org.springframework.web.filter.CharacterEncodingFilter)
respuesta:

<filter>

	<filter-name>CharacterEncodingFilter</filter-name>

	<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>

	<init-param>

		<param-name>encoding</param-name>

		<param-value>utf-8</param-value>

	</init-param>

</filter>

<filter-mapping>

	<filter-name>CharacterEncodingFilter</filter-name>

	<url-pattern>/*</url-pattern>

</filter-mapping>

El vigésimo cuarto problema: la tabla de paginación (usuario) análisis de usuarios, cada página se muestra cuando los datos de diez, echa un vistazo a lo que la instrucción SQL en cinco de datos es?
La respuesta:
el SELECT * desde el límite del usuario 40, 10

Vigésimo quinto problema: el uso de una trama de respuesta SpringMVC JSON pasos de desarrollo objeto (controlador frontal, el controlador tiene la configuración del controlador)
Respuesta:
1. Importe Jackson dependiente
2. Crear devuelve el método del objeto y anotación @RequestMapping, designado acceso método de la ruta de
@ResponseBody etiquetado toma nota 3. métodos.

Veinte sexta pregunta: define la interfaz HanderInterceptor qué métodos, los métodos de la clase de interfaz de aplicación fueron ejecutados en qué momento de
la respuesta:
preHandle: Handler ejecuta antes método de ejecución
postHandle: Después de realizar el método de control, ejecuta antes de la representación de vista
afterCompletion: el regreso ModelAndView, después de la representación de vista realizada.

Veinte séptimo título: Método Lista presencia queryAll () en la interfaz UserMapper, cómo utilizar PageHelper plug-in API para paginación consulta (escribir código seudo a)
respuesta:
PageHelper.startPage (las páginas, cada pantalla cantidad);
de lista de mapper.query = ();
PageInfo nueva nueva información PageInfo = (Lista);

Veintiocho o Falso: La primavera y la integración mybatis, configurar SqlSessionFactoryBean, que los valores de atributos necesitan para inyectar valor (o atributo que significa que escribir el nombre de la propiedad puede ser)
Respuesta:
fuentes de datos (dataSource)
perfil mybatis asociado (configLocation)
archivo de asignación asignador asociado (mapperLocations)
configurar un alias (typeAliasesPackage).

Veinte novena pregunta: En la configuración del controlador frontal SpringMVC, "/" y "/ *" ¿Cuál es la diferencia, si la configura como "/ *"
La respuesta:
"/ *" archivo .jsp partidos, "/" no coincide con .jsp archivo no se puede configurar como "/ *", ya que la configuración es "/ *", controlador frontal entonces todos los archivos JSP serán bloqueados, pero el controlador para el usuario no puede manejar archivos JSP.

Treinta o Falso: SpringMVC devuelve cadena y ModelAndView, páginas de salto y cómo transferir datos a una página, siga las instrucciones son
las respuestas:
la cadena de caracteres de retorno, la cadena se devuelve directamente al nombre correspondiente de la vista, puede utilizar el método de transferencia parámetro método objeto addAttribute Modelo en los datos de
objeto ModelAndView retorno, un método de objeto addObject comunicación de datos, utilizando un método proporcionado nombre de objeto setViewName de la vista.

Treinta preguntas: resultmap y ResultType diferencia
respuesta:
Ambos son el resultado de la consulta indicar una relación entre el objeto y el conjunto de Java, procesar el conjunto de resultados de consulta se asigna al objeto Java.
ResultMap: representa las columnas del conjunto de resultados de consultas a uno atribuye mapeo individuo objeto de frijol.
ResultType: representa el grano de clase de objeto, este tiempo puede ser omitida mapa etiqueta resultMap, debe asegurarse de que la consulta resultado conjunto de atributos y los atributos de clase de objeto de frijol es de uno a uno, y luego entre mayúsculas y minúsculas, pero existen restricciones.

Ha publicado 189 artículos originales · ganado elogios 13 · vistas 10000 +

Supongo que te gusta

Origin blog.csdn.net/NewBeeMu/article/details/101161920
Recomendado
Clasificación