springMvc01
接上一篇:
一、spring-mvc流程简介
二、配置相关(注意与一的对应)
- 下载spring相关jar包
在pom.xml文件中添加spring相关的jar包依赖
<properties>
<!-- 添加一个指示Spring版本的变量 -->
<springVersion>4.2.3.RELEASE</springVersion>
</properties>
<dependencies>
<!-- 添加spring的相关jar包依赖,别的依赖此处就不贴出来了 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${springVersion}</version>
</dependency>
</dependencies>
- 在web.xml中配置前端控制器DispatcherServlet
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
- 在WEB-INF下创建spring配置文件[servlet-name]-servlet.xml
这里可以直接新建xml文件,但是最好是能够在new–>other找到spring文件夹下的spring-bean configuration新建springmvc-servlet.xml(需要下载spring tool suit?)
- 配置HandlerMapping,根据beanname找到对应的Controller(可以省略)
<!-- 配置handlerMapping,根据beanname找到对应的controller -->
<bean
class="org.springframework.web.servlet.mvc.support.ControllerBeanNameHandlerMapping">
</bean>
<!-- 配置controller -->
<bean name="/hello.do" class="com.fn.controller.HelloController"></bean>
- 创建新的jsp页面,发出请求
<body>
<form action="hello.do" method="post">
登录:
<input name="login" type="text"/>
<input type="submit" value="提交">
</form>
</body>
- 创建Controller
继承AbstractController,重写handleRequestInternal(注意图片的superclass那一栏,要继承AbstractController)
package com.fn;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractController;
public class HelloController extends AbstractController {
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response)
throws Exception {
String username = request.getParameter("login");
System.out.println("------:"+username);
//返回数据和页面
ModelAndView mav = new ModelAndView("hello");
mav.addObject("user_name", username);
return mav;
}
}
- 在[servlet-name]-servlet.xml中配置视图解析器
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/view/"/>
<property name="suffix" value=".jsp"/>
</bean>
- 在src/webapp/下新建view文件夹,并在view下新建hello.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>hello-首页</title>
</head>
<body>
<h1>${user_name}</h1>
</body>
</html>
三、项目结构
四、
- 编码方式utf-8的设置(不同的配置文件里不一样的设置有什么不一样的针对性?)
- modelAndView
- springmvc思想个人总结