SpringMVC学习心得

最近项目比较清闲,抽出时间来学习一下传说中的SpringMVC,讲学习心得记录如下:

导入需要的jar文件

在web.xml中配置关键映射文件:


   Hello
   org.springframework.web.servlet.DispatcherServlet
    
     contextConfigLocation
     
     classpath*:/config/*.xml
    

   1
 

 
   Hello
   /
 

注意:在此配置中,拦截全部配置,并且加载所有classpath目录下面的配置文件

然后创建controller的映射文件


 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
 xmlns:context="http://www.springframework.org/schema/context"
 xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context-3.0.xsd">
 
 
 
 
  
   
  
 
 

 
    class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
  
 

 
    class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  
  
 

         

编写完成controller的映射文件之后,就开始编写controller的代码,当然根据上面编写的配置文件总可以看出来,它实现了两种传值方式:访问一个方法、访问多个方法。

开始编写最原始的helloworld:

public class HelloController implements Controller{

 @Override
 public ModelAndView handleRequest(HttpServletRequest request,
   HttpServletResponse response) throws Exception {
  System.out.println("请求了。。");
  String value="fuck";
  
  //向页面传递Map
  Map map=new HashMap();
  map.put("map1", "value1");
  map.put("map2", "value2");
  map.put("map3", "value3");
  return new ModelAndView("Hello","map",map);
 }
}
controller代码编写完成之后在页面上就可以取出来了

SpringMVC学习心得_第1张图片

另外一个方法就是一个controller中可以编写多个方法,实体配置如上就不多咀笔了,重点是controller的代码。之前编写helloworld中,是实现的Controller接口;在编写一个controller中编写多个方法是继承MultiActionController:

public class ManyMethodController extends MultiActionController {

 public ModelAndView add(HttpServletRequest request,
   HttpServletResponse response) {
  System.out.println("-----add-------");
  return new ModelAndView("manyMethod", "methodName", "add");

 }

 public ModelAndView update(HttpServletRequest request,
   HttpServletResponse response) {
  System.out.println("-----update-------");
  return new ModelAndView("manyMethod", "methodName", "update");

 }
}

让后可以在页面上取出来:SpringMVC学习心得_第2张图片

在使用一个controller编写多个方法时,遇到一个小问题:为什么编写的方法一定要传递request和response参数呢?编写普通的方法就不行呢?

 

你可能感兴趣的:(SpringMVC心得)