JavaEESpringMVC基础整理

一、什么是 SpringMVC ?html

  在介绍什么是 SpringMVC 以前,咱们先看看 Spring 的基本架构。以下图:前端

  

  咱们能够看到,在 Spring 的基本架构中,红色圈起来的 Spring Web MVC ,也就是本系列的主角 SpringMVC,它是属于Spring基本架构里面的一个组成部分,属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面,因此咱们在后期和 Spring 进行整合的时候,几乎不须要别的什么配置。java

  SpringMVC 是相似于 Struts2 的一个 MVC 框架,在实际开发中,接收浏览器的请求响应,对数据进行处理,而后返回页面进行显示,可是上手难度却比 Struts2 简单多了。并且因为 Struts2 所暴露出来的安全问题,SpringMVC 已经成为了大多数企业优先选择的框架。web

  那么多的不说,咱们直接经过一个实例来看看 SpringMVC 的魔力。spring

 

二、建立 web 工程,并导入相应的 jar 包。

  

  这里咱们加入了 Spring 3.2 的全部 jar 包,正好也佐证了上面所说的 SpringMVC 是 Spring 架构的一部分,注意:必定要包括红色椭圆圈起来的 spring-webmvc-3.2.0.RELEASE.jar浏览器

 

三、新建 SpringMVC 全局配置文件

  在 src 目录下新建 springmvc.xml 文件,并添加以下代码:spring-mvc

  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?xml version= "1.0" encoding= "UTF-8" ?>
<beans xmlns= "http://www.springframework.org/schema/beans"
        xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
        xmlns:mvc= "http://www.springframework.org/schema/mvc"
        xmlns:context= "http://www.springframework.org/schema/context"
        xmlns:aop= "http://www.springframework.org/schema/aop"
        xmlns:tx= "http://www.springframework.org/schema/tx"
        xsi:schemaLocation="http: //www.springframework.org/schema/beans
         http: //www.springframework.org/schema/beans/spring-beans-4.2.xsd
         http: //www.springframework.org/schema/mvc
         http: //www.springframework.org/schema/mvc/spring-mvc-4.2.xsd
         http: //www.springframework.org/schema/context
         http: //www.springframework.org/schema/context/spring-context.xsd
         http: //www.springframework.org/schema/aop
         http: //www.springframework.org/schema/aop/spring-aop-4.2.xsd
         http: //www.springframework.org/schema/tx
         http: //www.springframework.org/schema/tx/spring-tx.xsd">
 
 
</beans>

  

 四、在 web.xml 文件中配置前端过滤器 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version= "1.0" encoding= "UTF-8" ?>
<web-app xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
      xmlns= "http://java.sun.com/xml/ns/javaee"
      xsi:schemaLocation="http: //java.sun.com/xml/ns/javaee
      http: //java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
   <display-name>SpringMVC_01</display-name>
   <!-- 配置前端控制器DispatcherServlet -->
   <servlet>
     <servlet-name>springmvc</servlet-name>
     <servlet- class >org.springframework.web.servlet.DispatcherServlet</servlet- class >
     <init-param>
         <param-name>contextConfigLocation</param-name>
         <!-- 对应上一步建立全局配置文件的文件名以及目录 -->
         <param-value>classpath:springmvc.xml</param-value>
     </init-param>
   </servlet>
 
   <servlet-mapping>
     <servlet-name>springmvc</servlet-name>
     <url-pattern>*. do </url-pattern>
   </servlet-mapping>
</web-app>

  

  

五、编写处理器 Handler

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package com.ys.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 HelloController implements Controller{
 
     @Override
     public ModelAndView handleRequest(HttpServletRequest request,
             HttpServletResponse response) throws Exception {
         ModelAndView modelView = new ModelAndView();
         //相似于 request.setAttribute()
         modelView.addObject( "name" , "张三" );
         modelView.setViewName( "/WEB-INF/view/index.jsp" );
         return modelView;
     }
 
}

  

 

六、在 springmvc.xml 文件中配置 Handler,处理器映射器,处理器适配器,以及试图解析器  

  在 springmvc.xml 文件中添加以下代码:安全

1
2
3
4
5
6
7
8
9
10
11
<!-- 配置Handler -->   
<bean name= "/hello.do" class = "com.ys.controller.HelloController" />
    <!-- 配置处理器映射器
     将bean的name做为url进行查找,须要在配置Handler时指定bean name(就是url)-->
<bean class = "org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />
    <!-- 配置处理器适配器,全部适配器都得实现 HandlerAdapter接口 -->
    <bean class = "org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter" />
 
<!-- 配置视图解析器
     进行jsp解析,默认使用jstl标签,classpath下得有jstl的包-->
<bean class = "org.springframework.web.servlet.view.InternalResourceViewResolver" />

  

 七、在  /WEB-INF/view 目录下建立 index.jsp 文件

  

1
2
3
4
5
6
7
8
9
10
11
12
<%@ page language= "java" contentType= "text/html; charset=UTF-8"
     pageEncoding= "UTF-8" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd" >
<html>
<head>
<meta http-equiv= "Content-Type" content= "text/html; charset=UTF-8" >
<title>Insert title here</title>
</head>
<body>
hello:${name}
</body>
</html>

  

八、在浏览器输入 http://localhost:8080/SpringMVC_01/hello.do

   

 

   跟着上面的步骤,相信你已经搭建了一个 SpringMVC 的简单实例,那么为何要这么写呢?请看下一篇博客分解!!架构

相关文章
相关标签/搜索