admin管理员组

文章数量:1794759

Spring MVC(全配置模式)

Spring MVC(全配置模式)

Spring MVC 整体架构及工作流程

核心组件:

  • DispatcherServlet (前端控制器, 处理请求的入口,spring mvc的核心,一般在服务器启动时初始化)

  • HandlerMapping (映射器对象, 用于管理url与对应controller的映射关系)

  • Interceptors(拦截器,实现请求响应的共性处理)

  • Controller (后端控制器, 负责处理请求的控制逻辑)

  • ViewResolver(视图解析器,解析对应的视图关系:前缀+view+后缀)

基于xml方式创建Maven WEB 项目 1. 创建maven web项目 1.1 生成web.xml

1.2 配置Tomcat

1.3 设置编译版本 

2. 添加Spring MVC 项目依赖及配置文件 2.1 配置pom.xml文件 <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.3.9.RELEASE</version> </dependency> </dependencies> 2.2 在项目的resources的目录中添加核心配置文件spring-configs.xml <?xml version="1.0" encoding="UTF-8"?> <beans default-lazy-init="true" xmlns="www.springframework/schema/beans" xmlns:p="www.springframework/schema/p" xmlns:xsi="www.w3/2001/XMLSchema-instance" xmlns:context="www.springframework/schema/context" xmlns:tx="www.springframework/schema/tx" xmlns:aop="www.springframework/schema/aop" xmlns:mvc="www.springframework/schema/mvc" xmlns:util="www.springframework/schema/util" xmlns:jpa="www.springframework/schema/data/jpa" xsi:schemaLocation=" www.springframework/schema/beans www.springframework/schema/beans/spring-beans-4.3.xsd www.springframework/schema/mvc www.springframework/schema/mvc/spring-mvc-4.3.xsd www.springframework/schema/tx www.springframework/schema/tx/spring-tx-4.3.xsd www.springframework/schema/aop www.springframework/schema/aop/spring-aop-4.3.xsd www.springframework/schema/util www.springframework/schema/util/spring-util-4.3.xsd www.springframework/schema/data/jpa www.springframework/schema/data/jpa/spring-jpa-1.3.xsd www.springframework/schema/context www.springframework/schema/context/spring-context-4.3.xsd"> </beans> 3. 配置前端控制器

打开web.xml,配置DispatcherServlet对象

<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="www.w3/2001/XMLSchema-instance" xmlns="java.sun/xml/ns/javaee" xsi:schemaLocation="java.sun/xml/ns/javaee java.sun/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> <display-name>Spring-MVC-01</display-name> <servlet> <servlet-name>frontController</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- init-param 中的参数名不能变(此名字在DispatcherServlet父类中定义) --> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring-configs.xml</param-value> </init-param> <!-- 让tomcat启动时即加载时便初始化servlet --> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>frontController</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> </web-app> 4. 创建后端控制器

后端控制器编写时可以实现Controller接口,然后重写handleRequest方法处理请求

package com.jt.controller; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.Controller; public class XmlHelloController implements Controller { /** 通过此方法处理客户端请求 */ public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { ModelAndView mv = new ModelAndView(); mv.setViewName("hello"); mv.addObject("msg", "hello cgb1805"); return mv; } } 5. ​​​​​​​创建JSP页面对象

在项目的WEB-INF/pages文件夹下创建hello.jsp文件

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "www.w3/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> </head> <body> <h1>first spring mvc example</h1> <h1>${msg}</h1> </body> </html> 6. 配置后端控制及视图解析

在spring mvc 核心配置文件spring-configs.xml中添配置

<!-- 配置 后端 controller对象 --> <bean id="helloController" class="com.jk.controller.XmlHelloController" /> <!-- 配置HandlerMapping(定义url到controller之间的映射) --> <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="UrlMap"> <map> <entry key="/hello.do" value="helloController" /> </map> </property> </bean> <!-- 配置视图解析器 /WEB-INF/pages/hello.jsp --> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/pages/" /> <property name="suffix" value=".jsp" /> </bean>

 

本文标签: 模式springMVC