SpringMVC学习一
- 1.简单的SpringMVC
- 2.常见的三种HandlerMapping
- 3.通过springmvc来完成接受参数。
- 4.用注解替代配置信息
- Tips:插件下载
1.简单springMVC
1.1 引入jar包 [下载点击:https://github.com/suyirulan/putao/tree/master/SpringMVC_jar]1 <?xml version="1.0" encoding="UTF-8"?> 2 <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"> 3 <display-name>SpringMVC09_02display-name> 4 <welcome-file-list> 5 <welcome-file>index.htmlwelcome-file> 6 <welcome-file>index.htmwelcome-file> 7 <welcome-file>index.jspwelcome-file> 8 <welcome-file>default.htmlwelcome-file> 9 <welcome-file>default.htmwelcome-file> 10 <welcome-file>default.jspwelcome-file> 11 welcome-file-list> 12 <servlet> 13 <servlet-name>springMVCservlet-name> 14 <servlet-class>org.springframework.web.servlet.DispatcherServletservlet-class> 15 <init-param> 16 <param-name>contextConfigLocationparam-name> 17 <param-value>classpath:springMVC-servlet.xmlparam-value> 18 init-param> 19 servlet> 20 <servlet-mapping> 21 <servlet-name>springMVCservlet-name> 22 <url-pattern>*.dourl-pattern> 23 servlet-mapping> 24 web-app>1.3配置springmvc配置文件
1.4Controller
1 package com.zhiyou100.zhl.controller; 2 3 import javax.servlet.http.HttpServletRequest; 4 import javax.servlet.http.HttpServletResponse; 5 6 import org.springframework.web.servlet.ModelAndView; 7 import org.springframework.web.servlet.mvc.AbstractController; 8 9 public class MyController extends AbstractController{ 10 11 @Override 12 protected ModelAndView handleRequestInternal(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception { 13 ModelAndView mv=new ModelAndView(); 14 mv.setViewName("login"); 15 mv.addObject("username", "HelloWord"); 16 System.out.println("=============MyController"); 17 return mv; 18 } 19 20 }
2.常见的HandlerMapping
BeanNameUrlHandlerMapping:根据bean标签的name找到对应的Controller类
ControllerClassNameHandlerMapping:根据类的名称找到对应的类
SimpleUrlHandlerMapping:根据bean的id查找对应的Controller类
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xsi:schemaLocation="http://www.springframework.org/schema/beans 5 http://www.springframework.org/schema/beans/spring-beans.xsd"> 6 7 8 9 10 <bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping">bean> 11 12 13 21 22 23 24 25 26 <bean class="com.zhiyou100.zhl.controller.MyController2">bean> 27 28 29 31 32 <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 33 <property name="prefix" value="/WEB-INF/view/"/> 34 <property name="suffix" value=".jsp"/> 35 bean> 36 37 beans>
3.注解替代配置信息
3.1此部分需要额外的aop.jar包,上面的链接已经提供下载
接下来在SpringMVC配置文件中加入以下代码
<context:component-scan base-package="com.zhiyou100.zhl.controller">context:component-scan> <mvc:annotation-driven/>
3.2创建Controller类,带有@Controller的将会被扫描到
1 @Controller 2 @RequestMapping("/users/") 3 public class UsersController { 4 5 @RequestMapping("list.do") 6 public String list(String uname,String age) { 7 System.out.println("uname:"+uname+"======"+"age:"+age); 8 return "list"; 9 } 10 11 @RequestMapping("list2.do") 12 public String list2(Users users) { 13 System.out.println(users); 14 return "list"; 15 } 16 }
Tips.为了方便编程人员,建议装一个插件,更多方便的快捷方式与功能可以提高效率
笔者用的是Eclipse,步骤如下