spring mvc基础学习笔记
2016-07-27 15:53
651 查看
使用spring mvc完成
通过addPerson.jsp添加
Person的name, age, id,然后写入cookie
通过
listPerson.jsp获取保存在cookie中的name,age,id然后显示
web.xml
配置
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <!-- 配置文件位置--> <context-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/spring-servlet.xml </param-value> </context-param> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener> <servlet> <servlet-name>spring</servlet-name> <servlet-class< 4000 /span>> org.springframework.web.servlet.DispatcherServlet </servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/spring-servlet.xml </param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>spring</servlet-name> <url-pattern>*.mvc</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
spring-servlet.xml
配置
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <!-- 指明视图页面--> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix"> <value>/WEB-INF/person/</value> </property> <property name="suffix"> <value>.jsp</value> </property> </bean> <!-- controller映射配置--> <bean id="urlHandlerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <props> <prop key="addPerson.mvc">personController</prop> </props> </property> </bean> <!-- 封装的方法 --> <bean id="personService" class="com.cq.spring.service.IPersonService"> </bean> <!-- controlller配置 --> <bean id="personController" class="com.cq.spring.controller.PersonController"> <property name="personService" ref="personService"></property> </bean> </beans>
contorller
编写
package com.cq.spring.controller; import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.AbstractController; import com.cq.spring.bean.Person; import com.cq.spring.service.IPersonService; public class PersonController extends AbstractController { IPersonService personService; protected ModelAndView handleRequestInternal(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception { // TODO Auto-generated method stub String action=arg0.getParameter("action"); if("add".equals(action)) return this.add(arg0, arg1); return this.list(arg0, arg1); } protected ModelAndView add(HttpServletRequest req, HttpServletResponse res) { Person mperson=new Person(); mperson.setAge(Integer.parseInt(req.getParameter("age"))); mperson.setId(Integer.valueOf(req.getParameter("id"))); mperson.setName(req.getParameter("name")); personService.addPerson(mperson, req, res); return new ModelAndView("addPerson"); } protected ModelAndView list(HttpServletRequest req, HttpServletResponse res) { List<Person> resultList=new ArrayList<Person>(); resultList=personService.getPerson(req, res); return new ModelAndView("listPerson", "resultList", resultList); } public IPersonService getPersonService() { return personService; } public void setPersonService(IPersonService personService) { this.personService = personService; } }
用到的java bean
package com.cq.spring.bean; public class Person { private int id; private String name; private int age; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } } package com.cq.spring.service; public interface IService { public void service(); } package com.cq.spring.service; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.cq.spring.bean.Person; public class IPersonService implements IService { @Override public void service() { // TODO Auto-generated method stub System.out.println("test ok"); } public void addPerson(Person mperson, HttpServletRequest req, HttpServletResponse res) { List<Cookie> cookieList=new ArrayList<Cookie>(); Cookie m1cookie=new Cookie("name", mperson.getName()); cookieList.add(m1cookie); Cookie m2cookie=new Cookie("age", String.valueOf(mperson.getAge())); cookieList.add(m2cookie); Cookie m3cookie=new Cookie("id", String.valueOf(mperson.getId())); cookieList.add(m3cookie); Iterator<Cookie> it=cookieList.iterator(); for(; it.hasNext();) { Cookie tempCookie=it.next(); res.addCookie(tempCookie); } } public List<Person> getPerson(HttpServletRequest req, HttpServletResponse res) { List<Person> list=new ArrayList<Person>(); Cookie[] cookies=req.getCookies(); Person mperson=new Person(); for(Cookie cookie: cookies) { if("name".equals(cookie.getName())) mperson.setName(cookie.getValue()); if("age".equals(cookie.getName())) mperson.setAge(Integer.parseInt(cookie.getValue())); if("id".equals(cookie.getName())) mperson.setId(Integer.parseInt(cookie.getValue())); } list.add(mperson); return list; } }
视图页面
index.jspaddPerson.jsp
listPerson.jsp
代码如下
index.jsp
<!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> <jsp:forward page="/WEB-INF/person/addPerson.jsp" /> </body> </html>
addPerson.jsp
<!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> <form action="addPerson.mvc?action=add" method="post"> name:<input name="name" /> age:<input name="age" /> id:<input name="id" /> <input type="submit" /> </form> <a href="addPerson.mvc?action=list">查看</a> </body> </html>
listPerson.jsp
<!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> <style> table,th,td{border:1px solid black; cellspacing:0px; } </style> </head> <body> <table> <tr> <th>name</th> <th>age</th> <th>id</th> </tr> <c:forEach var="person" items="${requestScope.resultList}"> <tr> <td>${person.name}</td> <td>${person.age}</td> <td>${person.id}</td> </tr> </c:forEach> </table> <a href="index.jsp">修改添加</a><!--web-inf下的页面不能直接访问--> </body> </html>
结果页面
直接访问http://localhost:8080/springmvc/
输入数据
提交查看
相关文章推荐
- 关于JSP配置文件web.xml加载顺序详解
- jsp web.xml文件的作用及基本配置
- <Servlet>web.xml中load-on-startup的作用
- JAVA web.xml 加载顺序
- j2ee之web.xml (Servlet 3.0)配置讲解
- 用过滤器处理乱码问题 javaweb
- struts2.2.3 web.xml文件配置
- Spring整合Dwr,Cannot locate BeanDefinitionParser for element [annotation-scan]
- Web.xml配置详解
- web.xml 中的listener、 filter、servlet 加载顺序及其详解
- Web.xml 配置 详解
- 解决Eclipse构建Maven项目时web.xml is missing错误
- web2.xml
- web3.xml
- web.xml配置详解
- spring3 MVC手工搭建Spring3项目demo
- context-param和init-param区别
- web.xml详细介绍
- [转]Struts配置文件详解,web.xml以及struts-cofig.xml,以及struts-cofig.xml中各个标签的作用。
- Java Web中web.xml文件的作用