controller配置汇总
2016-05-10 18:39
169 查看
1.通过URL对应Bean
2.为URL分配Bean
使用一个统一配置集合,对各个URL对应的Controller做关系映射
3.URL匹配Bean
如果定义的Conroller名称规范,也可以使用如下配置
4注解
<!-- 配置springMVC 注解驱动 -->
<mvc:annotation-driven/>
<!-- 扫描器 -->
<context:component-scan base-package="cn"></context:component-scan>在controller中添加注解:
@Controller
@RequestMapping("/user")
public class UserController {
/**
* 时间编辑器
*/
@InitBinder
public void initBinder(ServletRequestDataBinder binder) {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//dateFormat.setLenient(false);
binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, false));
}
@RequestMapping("/add1.do")
public String add(HttpServletRequest request){
String username = request.getParameter("username");
String password = request.getParameter("password");
System.out.println("username:" + username + "---" + "password:" + password);
return "user/user_list";
}
@RequestMapping("/add2.do")
public String add2(String username, String password ){
System.out.println("username:" + username + "-----" + "password:" + password);
return "user/user_list";
}
@RequestMapping("/add3.do")
public String add3(UserInfo userInfo){
System.out.println(userInfo);
return "user/user_list";
}
@RequestMapping("/add4.do")
public String add4(String userName, Date date){
System.out.println("username:" + userName + "---" + "date:" + date);
return "user/user_list";
}
}
<pre name="code" class="html"><!-- 配置HandlerMapping 根据beanname找对对应的controller -->
<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"></bean> <!-- 配置handleradapter --> <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"></bean>
<span style="white-space:pre"> </span><!-- 配置controller --> <bean name="/hello.do" class="cn.com.jit.controller.HelloController"/>以上配置访问/hello.do就会寻找ID为/hello.do的Bean,此类方式仅使用小型应用系统
2.为URL分配Bean
使用一个统一配置集合,对各个URL对应的Controller做关系映射
<!-- 最常用的 -->
<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <props> <!-- key 对应URL请求名 value 对应处理器的ID--> <prop key="/hello.do">hellocontroller</prop> </props> </property> </bean> <bean id="hellocontroller" class="cn.com.jit.controller.HelloController"></bean>此类配置还可以使用通配符,访问/hello.do时,Spring会把请求分配给helloController进行处理。
3.URL匹配Bean
如果定义的Conroller名称规范,也可以使用如下配置
<!-- 将hello*.do交给helloController去处理 -->
<!-- 配置HandlerMapping 根据beanname找对对应的controller --> <bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping"/> <!-- 配置controller 请求为hello*.do都将会被匹配 --> <bean name="/helloController" class="cn.com.jit.controller.HelloController"/>
4注解
<!-- 配置springMVC 注解驱动 -->
<mvc:annotation-driven/>
<!-- 扫描器 -->
<context:component-scan base-package="cn"></context:component-scan>在controller中添加注解:
@Controller
@RequestMapping("/user")
public class UserController {
/**
* 时间编辑器
*/
@InitBinder
public void initBinder(ServletRequestDataBinder binder) {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//dateFormat.setLenient(false);
binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, false));
}
@RequestMapping("/add1.do")
public String add(HttpServletRequest request){
String username = request.getParameter("username");
String password = request.getParameter("password");
System.out.println("username:" + username + "---" + "password:" + password);
return "user/user_list";
}
@RequestMapping("/add2.do")
public String add2(String username, String password ){
System.out.println("username:" + username + "-----" + "password:" + password);
return "user/user_list";
}
@RequestMapping("/add3.do")
public String add3(UserInfo userInfo){
System.out.println(userInfo);
return "user/user_list";
}
@RequestMapping("/add4.do")
public String add4(String userName, Date date){
System.out.println("username:" + userName + "---" + "date:" + date);
return "user/user_list";
}
}
相关文章推荐
- Python简介和入门
- 338. Counting Bits #Medium
- Linux 内核的同步机制
- Linux下安装nginx
- 【HUSTOJ】1098: 完美数
- angular 身份认证问题
- Hibernate中Caused by: java.sql.SQLException: Field 'address_id'doesn't have a default value
- C/C++中的空类及抽象类大小
- 第六次作业
- 类别---category
- AOSP中常用repo&git命令
- solr solr-5.3.1 Jetty下启动
- 简
- Web Uploader项目实战中遇到的诸多坑
- git 提交时保存 帐号密码
- Qt的一些鲜为人知但是非常有用的小功能
- Max Script|控制器-缩放约束_Noise
- C#三十一 序列化与反序列化
- C#三十一 序列化与反序列化
- C#三十一 序列化与反序列化