初识springmvc-搭建环境

 1 step1:导入springdist的jar包
 2 
 3 step2:在web.xml中增加如下配置
 4  <!-- springmvc的配置 -->
 5   <servlet>
 6    <servlet-name>springmvc</servlet-name>
 7    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
 8   <load-on-startup>1</load-on-startup>
 9   </servlet>
10   <servlet-mapping>
11    <servlet-name>springmvc</servlet-name>
12    <url-pattern>/</url-pattern>
13   </servlet-mapping>
14 step3:在web-inf下创建对应的文件  文件名为servlet-name + -servlet.xml
15 springmvc-servlet.xml文件内容如下:
16 <?xml version="1.0" encoding="UTF-8"?> 
17 <beans xmlns="http://www.springframework.org/schema/beans" 
18 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
19 xmlns:context="http://www.springframework.org/schema/context" 
20 xmlns:mvc="http://www.springframework.org/schema/mvc" 
21 xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd 
22 http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd 
23 http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd"> 
24 
25 <!-- 使用注解扫描的方式使用 --> 
26 <context:component-scan base-package="com.kite.controller" /> 
27 <mvc:annotation-driven /> 
28 <!-- 测试 一般在开发中不这么用,这是继承了AbstractController --> 
29 <bean name="/hello.html" class="com.kite.controller.HelloController"> 
30 </bean> 
31 <!-- 视图解析器 --> 
32 <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
33 <!-- 前缀 --> 
34 <property name="prefix" value="/WEB-INF/jsp/" /> 
35 <!-- 后缀 --> 
36 <property name="suffix" value=".jsp" /> 
37 </bean> 
38 </beans> 
39 step4:第一个controller 使用继承AbstractController的方式来实现
40 public class HelloController extends AbstractController
41 {
42  @Override
43  protected ModelAndView handleRequestInternal(HttpServletRequest request,
44    HttpServletResponse response) throws Exception
45  {
46   System.out.println("hello");
47 //返回一个模型视图将会用到上面的视图解析器来解析
48   return new ModelAndView("hello");
49  }
50 }
51 step5:第二个controller 使用注解的方式来实现更加的方便,&值的传递
52 /**
53  * 使用注解的方式实现
54  * @author kite
55  */
56 @Controller
57 public class SecondController
58 {
59  /**
60   @RequestMapping 对应哪个url会被这个方法拦截到
61   @RequestParam("access")将请求参数中为"access"的值注入到String userName 中
62   或者如果直接使用参数的方式只要参数对应也会将值映射到对应的参数上
63   如何将值传入到view层
64   1.可以使用Map<String,Object> 来对值进行传递,在页面中通过el表达式进行取值
65   2.使用springmvc的方式使用Model对象用来传递值
66  */
67  @RequestMapping({"/second","/"})
68  //public String second(@RequestParam("access") String userName)
69  //public String second(String userName,Map<String,Object> map)
70  public String second(String userName,Model model)
71  {
72   System.out.println("userName:" + userName);
73   System.out.println("second--------------------");
74   //map.put("userName", userName);
75   //使用model方式传递值
76   model.addAttribute("userName", userName);
77   //model.addAttribute(userName);使用这种方式的话在页面中取值就是使用变量的类型作为key?
78   //当前为String,那么key就为string第一个字母改为小写
79   //这有什么好处呢,如果model.addAttribute(new User()); 那么key就会为user
80   model.addAttribute(userName);
81   return "second";
82  }
83 }

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。