SpringMVC_chapter2 常用控制器详解
来源:互联网 发布:北京赛车pk10数据 编辑:程序博客网 时间:2024/06/06 03:00
1、直接实现Controller 接口或AbstractController抽象类(一些常用的简单的功能操作控制器)
(详细看SpringMVC_chapter1)
3、CommondController 表单提交封装参数
(详细看SpringMVC_chapter1)
2、ParameterizableViewController, UrlFilenameViewController 用于直接跳转页面(只需在xml中配置即可)
参数化控制器<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"><property name="mappings"><props><prop key="login.htm">loginController</prop></props></property></bean><!-- 用于直接跳转页面 参数化控制器(参数为视图名 value 具体逻辑视图名称)--><bean id="loginController" class="org.springframework.web.servlet.mvc.ParameterizableViewController"><property name="viewName" value="login"/></bean><!-- 视图解析器 --><bean class="org.springframework.web.servlet.view.UrlBasedViewResolver"><!-- jstlView --><property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/><property name="prefix" value="WEB-INF/login/"/><property name="suffix" value=".jsp"/></bean>地址栏输入:http://localhost:8080/SpringMVC_chapter2/login.htm
UrlFilenameViewController 当使用请求名 跟逻辑视图名一致时,可是使用跟简单的UrlFilenameViewController控制器<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"><property name="mappings"><props><prop key="login.htm">loginController</prop></props></property></bean><!-- 使用urlFilenameViewController 控制器 --><bean name="loginController" class="org.springframework.web.servlet.mvc.UrlFilenameViewController"/><!-- 视图解析器 --><bean class="org.springframework.web.servlet.view.UrlBasedViewResolver"><!-- jstlView --><property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/><property name="prefix" value="WEB-INF/login/"/><property name="suffix" value=".jsp"/></bean>
3、CommondController 表单提交封装参数
实体:package com.test.bean;public class Emp {//实体private String name;private String phone;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPhone() {return phone;}public void setPhone(String phone) {this.phone = phone;}@Overridepublic String toString() {return "Emp [name=" + name + ", phone=" + phone + "]";}}
表单封装控制器:package com.tset.controller;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.validation.BindException;import org.springframework.web.servlet.ModelAndView;import org.springframework.web.servlet.mvc.AbstractCommandController;import com.test.bean.Emp;public class EmpController extends AbstractCommandController {//AbstractCommandController 过期的 是因为Spring3.0后支持用注解@Overrideprotected ModelAndView handle(HttpServletRequest request,HttpServletResponse response, Object object, BindException bindException)throws Exception {//自动封装(chapter2-servlet 中配置)Emp emp=(Emp)object;System.out.println(emp);request.setAttribute("emp", emp);return new ModelAndView("showemp");}}
chapter2-servlet.xml控制器<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"><property name="mappings"><props><!-- 添加页面 --><prop key="emp_add.htm">emp_add</prop><!-- 表单提交请求 --><prop key="emp_request.htm">empControllerCommand</prop></props></property></bean><!-- 使用urlFilenameViewController 控制器 --><bean name="emp_add" class="org.springframework.web.servlet.mvc.UrlFilenameViewController"/><!-- 实例化控制器 --><bean name="empControllerCommand" class="com.tset.controller.EmpController"><!-- 指定类别 name 转换类别 value 指定转换类 --><property name="commandClass" value="com.test.bean.Emp" /></bean><!-- 视图解析器 --><bean class="org.springframework.web.servlet.view.UrlBasedViewResolver"><!-- jstlView --><property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/><property name="prefix" value="WEB-INF/addemp/"/><property name="suffix" value=".jsp"/></bean>web.xml中配置过滤器(字符) <!-- sping中文处理 使用SpringMVC中文过滤器--> <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>
emp_add.jsp页面代码:<%@ 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><form action="emp_request.htm" method="post">name:<input type="text" name="name"><br/>iphone:<input type="text" name="phone"><br/><input type="submit" value="submit"></form></body></html>showemp.jsp页面代码<%@ 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>${emp.name}:${emp.phone}</body></html>
0 0
- SpringMVC_chapter2 常用控制器详解
- 常用的视图控制器
- Controller接口控制器详解
- EXTJS4控制器Controller详解
- UINavigationController导航控制器详解
- SpringMVC注解控制器详解
- SpringMVC注解控制器详解
- 视图控制器转场详解
- EXTJS4控制器Controller详解
- svn版本控制器详解
- PID控制器详解
- Laravel控制器详解
- Laravel控制器详解
- PID控制器原理详解
- SJA1000控制器详解
- can控制器SJA1000详解
- Yii在控制器常用路径
- iPhone第七节:常用控制器
- 基于视频处理的DSP系统通用设计模式及其实现
- PHP Ajax 入门HelloWorld
- qagn rgntgn
- 汉诺塔的非递归算法
- 【人文】第一部分对保不住秘密的人,要保持距离
- SpringMVC_chapter2 常用控制器详解
- 让你的python程序开机自启动
- concurrent包中atomic中的怪异现象
- PHP 6将实现的8个特性和功能
- 可变长的结构体
- adb 查年手机IP
- n个人有n个帽子,每个人都不带自己帽子的可能性
- 单例模式
- 【伤感日志】 为你放弃了骄傲 却终究无法博你一笑