Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发的。
1.首先介绍一下SpringMVC的工作流程
2.步骤
①创建一个web项目
②导入SpringMVC所需要的jar包
③改web.xml文件(主要是配置核心Servlet)
<?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>HelloWorld</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- spring MVC核心servlet -->
<servlet>
<servlet-name>Hellofing</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Hellofing</servlet-name>
<url-pattern>/Hellofing/*</url-pattern>
</servlet-mapping>
<!-- 这里的初始化参数不配置,必须把springmvc的主配置文件放在WEB-INF下面,
并且命名规则为: [servlet-name]-servlet.xml
否则spring找不到配置文件 配置下面的参数后,主配置文件的名称就可以自己任意书写 -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:*.xml</param-value> <!--匹配src或bin目录下所有的xml文件 -->
</init-param>
</web-app>
④ 配置映射处理器
<?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-3.0.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
<!-- 1.提供一个映射器 -->
<bean id="handlerMapping" class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />
<!-- 3.自定义一个控制器 -->
<bean name="/helloword.do" class="pers.why.SpringMvc.controllers.HelloWorldController"/>
<!-- 2.提供一个视图解析器 -->
<bean id="view"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!-- 前缀 -->
<property name="prefix" value="/WEB-INF/jsps/"/>
<!-- 后缀 -->
<property name="suffix" value=".jsp"/>
</bean>
</beans>
⑤配置控制器
package pers.why.SpringMvc.controllers;
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 HelloWorldController implements Controller {
@Override
public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
// 提供一个返回的对象
ModelAndView model = new ModelAndView();
//添加页面所要显示的数据
model.addObject("result", "HelloWorld");
//指定逻辑视图名
model.setViewName("HelloWorld");
return model;
}
}
⑥编写jsp页面
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>HelloWorld</title>
</head>
<body>
<!-- 用EL表达式获取值 -->
${result }
</body>
</html>
⑦配置测试
**路径为 ……/项目名/<servlet-name>/自定义控制器的name属性值
运行结果为
这是我刚刚学的第一天,就是一些简单的配置,往后我会继续深入学习。班门弄斧了