| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
jopen
11年前发布

springMVC之annotation优化

1.在之前配置的spring配置文件中会有这样的代码:

<!-- 方法映射 -->
 <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"></bean>
 <!-- 找类 -->
 <bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"></bean>

这两句是注入开启映射的类。

在spring3.0后有了mvc标签,可以将上两句改为:

<mvc:annotation-driven/>

同样可以达到以上的结果。

2.在controller中我们是这样配置的:

package com.yx.controller.annotation;    import org.springframework.stereotype.Controller;  import org.springframework.web.bind.annotation.RequestMapping;  import org.springframework.web.bind.annotation.RequestMethod;  import org.springframework.web.servlet.ModelAndView;    @Controller  public class HelloAnnotationController {     @RequestMapping(value="/user/adduser",method=RequestMethod.GET)   public ModelAndView addUser(){        return new ModelAndView("/annotationTest","result","add user");       }   @RequestMapping(value="/user/deluser")   public ModelAndView delUser(){        return new ModelAndView("/annotationTest","result","delete user");       }    }

这里面也有很多可以优化的:

(1).对于传输方法,在平时开发时没有必要必须规定是什么方法传输,也就是无论get还是post均可以运行。这样只要将“method=RequestMethod.GET”删掉即可。

(2).在没给个方法前面都会出现“/user”即为命名空间,这样代码会太重复。可以在类的前面加上“@RequestMapping("/user2")”

(3).在struts2中方法的返回值一般为String,在springMVC中也可以这样做。

最后controller的代码可以修改为:

package com.yx.controller.annotation;    import javax.servlet.http.HttpServletRequest;    import org.springframework.stereotype.Controller;  import org.springframework.web.bind.annotation.RequestMapping;  import org.springframework.web.bind.annotation.RequestMethod;  import org.springframework.web.servlet.ModelAndView;    @Controller  @RequestMapping("/user2")  public class HelloAnnotationController2 {     @RequestMapping("/adduser")   public String addUser(HttpServletRequest request){    request.setAttribute("result","add user 方法");    return "/annotationTest";       }   @RequestMapping("/deluser")   public String delUser(HttpServletRequest request){    request.setAttribute("result","delete user上述");    return "/annotationTest";       }  }

 本文由用户 jopen 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
 转载本站原创文章,请注明出处,并保留原始链接、图片水印。
 本站是一个以用户分享为主的开源技术平台,欢迎各类分享!
 本文地址:https://www.open-open.com/lib/view/open1373292584862.html
Spring MVC Web框架 SpringMVC