SpringMVC学习一

 

  • 1.简单的SpringMVC
  • 2.常见的三种HandlerMapping
  • 3.通过springmvc来完成接受参数。
  • 4.用注解替代配置信息
  • Tips:插件下载

1.简单springMVC

 1.1 引入jar包
1.2在web.xml中配置Dispatcher,(ctrl,shift+t)
 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_02</display-name>
 4   <welcome-file-list>
 5     <welcome-file>index.html</welcome-file>
 6     <welcome-file>index.htm</welcome-file>
 7     <welcome-file>index.jsp</welcome-file>
 8     <welcome-file>default.html</welcome-file>
 9     <welcome-file>default.htm</welcome-file>
10     <welcome-file>default.jsp</welcome-file>
11   </welcome-file-list>
12   <servlet>
13       <servlet-name>springMVC</servlet-name>
14       <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
15       <init-param>
16           <param-name>contextConfigLocation</param-name>
17           <param-value>classpath:springMVC-servlet.xml</param-value>
18       </init-param>
19   </servlet>
20   <servlet-mapping>
21       <servlet-name>springMVC</servlet-name>
22       <url-pattern>*.do</url-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     <!--111 BeanNameUrlHandlerMapping:根据bean标签的name找到对应的Controller类 -->
 7     <!-- <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"></bean> --> 
 8     
 9     <!-- 222 ControllerClassNameHandlerMapping:根据类的名称找到对应的类-->
10     <bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping"></bean>
11     
12     <!--333 SimpleUrlHandlerMapping:根据bean的id查找对应的Controller类 -->
13     <!-- <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
14         <property name="mappings">
15             <props>
16                 <prop key="/a.do">my1</prop>
17                 <prop key="/b.do">my2</prop>
18             </props> 
19         </property>
20     </bean> -->
21     
22     <!-- 111 -->
23     <!-- <bean name="/my.do" class="com.zhiyou100.zhl.controller.MyController"></bean> -->
24     
25     <!-- 222 -->
26     <bean class="com.zhiyou100.zhl.controller.MyController2"></bean>
27     
28     <!-- 333 -->
29     <!-- <bean id="my1" class="com.zhiyou100.zhl.controller.MyController"></bean>
30     <bean id="my2" class="com.zhiyou100.zhl.controller.MyController2"></bean> -->
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配置文件中加入以下代码

<!-- 1.包扫描:扫描注解所在的包,controller类所在的包 -->
    <context:component-scan base-package="com.zhiyou100.zhl.controller"></context:component-scan>
    
    <!-- 2.开启注解驱动AnnotationHandlerMapping -->
    <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,步骤如下

 

 

 

 

posted @ 2019-09-03 21:16  素衣如岚  阅读(168)  评论(0编辑  收藏  举报