Directorio artículo
¿Cuál es SpringMVC?
-
MVC es un marco popular, por la separación Modelo, Vista, Controlador, la aplicación web más complejo dividido en varias partes y, lógicamente , para simplificar el desarrollo y reducir los errores. O para grupos dentro de la cooperación entre los desarrolladores. En resumen, se trata de un enfoque por capas de trabajo.
-
SpringMVC, es un sub-marco de primavera , por supuesto, tenemos las características de resorte, tales como la inyección de dependencia.
1. Crear un nuevo proyecto Maven, añadir una red de apoyo
Después de crear un proyecto Maven, mueva el cursor al botón derecho del ratón sobre el nombre del proyecto y, a continuación, haga clic en Agregar Soporte Marco de
comprobar la aplicación web
para configurar Tomcat
toda la estructura de directorios caso:
principio de funcionamiento:
2. dependencia relacionados en pom.xml archivo importado
pom.xml:
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.1.9.RELEASE</version>
</dependency>
</dependencies>
3. registrada en web.xml DispatcherServlet SpringMVC proporcionado
archivo web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<!-- 注册 DispatcherServlet到web.xml-->
<servlet>
<servlet-name>DispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!--关联一个SpringMVC的配置文件-->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc-servlet.xml</param-value>
</init-param>
<!--服务器启动的时候就启动-->
<load-on-startup>1</load-on-startup>
</servlet>
<!--
/ 匹配所有的请求,不包括 .jsp
/* 匹配所有的请求,包括 .jsp
-->
<servlet-mapping>
<servlet-name>DispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
4. Escribir el perfil SpringMVC
Al crear el archivo de configuración SpringMVC-servlet.xml en el directorio de recursos
Añadir un espacio de nombres y mvc contexto y su correspondiente archivo de cabecera limitación en este perfil
archivo SpringMVC-servlet.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd">
<!--以下均为 固定配置!-->
<!-- controller层:控制层,用于和前端交互-->
<!--扫描包配置-->
<context:component-scan base-package="com.zz.controller"/>
<!--注解驱动开启-->
<mvc:annotation-driven/>
<!--在web开发中,一般存在静态资源,如css,js,img... 交给springmvc管理-->
<mvc:default-servlet-handler/>
<!--重点:视图解析器-->
<!--前缀和后缀 :自动拼接资源的完整路径-->
<bean id="internalResourceViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/"/>
<property name="suffix" value=".jsp"/>
</bean>
</beans>
5. Escribir la página JSP
Crear un directorio para almacenar su propia página en el directorio WEB-INF, tales como imágenes, escribir una página, como en el interior hello.jsp
archivo hello.jsp:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Hello</title>
</head>
<body>
<h1>hello</h1>
</body>
</html>
6. controlador de escritura
capa del controlador de escritura en el directorio java, crear la clase HelloController
notas explican:
@Controller // salto de página
@RestController // página no puede saltar, sólo puede devolver texto correspondiente
@RequestMapping ( "/ hola") // corresponden en el camino a la solicitud
HelloController archivo:
package com.zz.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class HelloController {
//只要去访问hello()方法,就会跳转到hello,并且会自动拼接前缀和后缀,即 /WEB-INF/views/hello.jsp
@RequestMapping("/hello")
public String hello(){
System.out.println("aaaaa");
return "hello";
}
}
7. Prueba
Haga clic en carreras Tomcat después de entrar en la barra de direcciones hola, encontrado errores 404
Solución: necesidad de crear manualmente un directorio lib, entonces todas las dependencias en el directorio lib
Una vez completada la dependencia de las importaciones, reiniciar Tomcat, introduzca hola en la barra de direcciones, la prueba es satisfactoria!
Aaaaa salida de la consola, mientras que la
adición también se puede hacer pasar al valor extremo distal, añadir el parámetro en el método de modelo hello (), la transmisión tal como Hola, SpringMVC!
@RequestMapping("/hello")
public String hello(Model model){
System.out.println("aaaaa");
model.addAttribute("msg","Hello,SpringMVC!");
return "hello";
}
hello.jsp en El expresiones añadir etiquetas
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Hello</title>
</head>
<body>
<h1>hello</h1>
<h1>${msg}</h1>
</body>
</html>
Resultados del ensayo: