您的位置:首页 > 编程语言 > Java开发

springMVC学习笔记---注解优化

2015-08-12 11:55 537 查看
上次学习到springMVC的注解启用,在注解启用的时候使用如下中的包和bean,这两个bean的特点是没有id和name,开启springMVC的注解之后会自动调用

<span style="font-size:18px;"><!-- 注解扫描包 -->
<context:component-scan base-package="com.web.controller.annotation"></context:component-scan>
<!-- 开启注解 -->
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"></bean>
<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"></bean></span>


但是在spring3.0以后提出了MVC标签,使用更方便,可以不配置这两个bean,这样也避免了去找到这两个bean和他们的位置,不容易出现错误,像我上次那样找错了包,就总是调试不出来结果。

<mvc:annotation-driven/> 这个标签会自动加载那两个bean

<!-- 注解扫描包 -->
<context:component-scan base-package="com.web.controller.annotation"></context:component-scan>
<!-- 开启注解 -->
<mvc:annotation-driven/>


在controller中配置类和方法时,方法名字前面每个都要加路径比较麻烦,可以直接在类上面配置RequestMapping

1.@ RequestMapping (“/user”),其中字符串中是访问时controller的路径

2.在controller中不需要配置method 则在页面post和get方法都可以取到

3.将之前写的value=去掉,可以直接配置该方法的访问路径

4.我们配置访问前台页面的返回值时,可以直接返回String,不需要每次都new ModelAndView(),至于传递参数,我们在刚学习web开发,servlet的时候,就学习了使用HttpServletRuquest和HttpServletResponse,我们还是使用request来设置参数值,在页面取值就可以。
@Controller
@RequestMapping("/annoUser")
public class AnnoUserController {

@RequestMapping("/addUser")
public String addUser(HttpServletRequest request) {
String result = "----add----optimization--";
request.setAttribute("result", result);
return "/annotation";
}

@RequestMapping("/delUser")
public ModelAndView delUser() {
String result = "----del----optimization--";
return new ModelAndView("/annotation","result",result);
}
}


这是优化后的controller,和上次学习的对比简洁了很多,传递参数的第一个方法也比第二个方法简单。学习了框架之后,也要结合之前学习的内容,使自己的开发更简洁。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: