学习记录spring mvc(初学者)
先说一下体会,个人感觉很容易理解,也比较使用,仅仅几行代码就可实现web页面响应切换。
下面就介绍一下大致的思路,大概就分5个步骤走就可简单完成:
-
首先创建一个web项目,并在/WebContent/WEB-INF/lib导入相应jar。——作用:准备工作,不添加会报错。
2.打开/WebContent/WEB-INF/web.xml,添加一些内容——springmvc和中文乱码处理。
——作用:映射和找到springmvc3.在/src中新建一个springmvc-config.xml。
——作用:搜索相关包和处理响应jsp4.在/src新建包和类。
——作用:是springmvc要找的包5.在/WebContent/WEB-INF/view中新建jsp文件。
——作用:jsp与响应类中return
第一步:主要说明一下几个细节,要添加web.xml,如果没有则需要新建一个。还有相关啊包如下图(如果不知道这些包从哪来可以看本人上一篇):
第二步:添加相关内容在web.xml代码如下(如果是手打可以用Ctrl查看是否打错 PS:怎么可以手打):
<?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">
<!-- 下面为找springmvc内容-->
<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-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<!-- 下面是处理中文乱码内容 -->
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
第三步:代码如下(没什么好说的照着打,还有改写一下包):
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.3.xsd">
<!-- 下面是寻找需要包名,需要改写请注意-->
<context:component-scan base-package="com.team5408" />
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver"
id="internalResourceViewResolver">
<property name="prefix" value="/WEB-INF/view/" />
<property name="suffix" value=".jsp" />
</bean>
<!-- 下面是关于自定义输入时间格式内容,可以不用打 -->
<mvc:annotation-driven conversion-service="conversionService" />
<bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean">
<property name="converters">
<set>
<bean class="com.team5408.conver.DateConverter"/>
</set>
</property>
</bean>
</beans>
第四步:创建要运行的包和类代码如下(大致框架,看需要修改 PS:不要照抄灵活修改几下可以做到处理反馈信息):
package com.team5408;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import com.team5408.po.User; //定义 username password id 的set和get类
@Controller
public class UserController {
// @RequestMapping("/show")
// public String selectUser(@RequestParam(value="sname")String name,@RequestParam(value="sno")Integer id,HttpServletRequest request, HttpServletResponse response, Model model) throws Exception{
// System.out.println("id="+id);
// System.out.println("name="+name);
// model.addAttribute("sno", id);
// model.addAttribute("sname", name);
// return "success";
//
// }
@RequestMapping("/toRegister")
public String toRegister(){
return "register"; //响应jsp
}
@RequestMapping("/registerUser")
public String registerUser(User user) {
String username=user.getUsername();
Integer password=user.getPassword();
System.out.println("username="+username);
System.out.println("password="+password);
return "success"; //响应jsp
}
}
最后就是jsp随便写一个就可以了
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-euiv="Content-Type" Content"text/html" charset="UTF-8">
<title>结果显示</title>
</head>
<body>
ok
</body>
</html>
感谢阅读本次内容,本内容只提供大致理解和处理思路,不解决实际需求。请阅读者见谅。