@RequestBody和@RequestParam、@ResponseBody的使用

一:前沿

  针对spring mvc的使用,其实我不怎么熟悉的,因为我只是会用几个常用的注解,其他高深的我都不是很清楚的,而且每次用有时候还需要出查资料的,现在自己记载下吧。

二:内容

 (1)这里的@RequestBody是针对非application/x-www-form-urlencoded编码的

public String userRegister(HttpServletRequest request, @RequestBody User user){
  String name=user.getName()
}
public String userRegister(HttpServletRequest request, @RequestBody String datas){
  User user=JSON.parseObject(datas, User.class)
}

这两段代码,如果都不加@RequestBody的话,那么记过都是null的。这里接受的都是json数据,所以如果接受的是json或者xml数据

(2)@RequestParam

public String allNum(HttpServletRequest request,HttpServletResponse response,@RequestParam(value="a",required=false) String a){
   System.out.println(a);
}

这里的@RequestParam中可以指定这个参数是否必传的。接受某个参数,所以如果是接收多个建议用对象,或者是转json在在后台转化为对象等来做。

(3)@ResponseBody

  @ResponseBody的用法就是返回表示不要加前缀后缀的,return 什么就返回什么,知道我们再配置的前后缀

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/jsp/" />
        <property name="suffix" value=".jsp" />
    </bean>

比如访问一个方法返回return "/user/add",r如果没有加@ResponseBody 那么此时会在前面补上前缀和后缀的;如果加上了,那么就返回/user/add给你。所以当我们想返回对象或者json数据时就需要加上这个@ResponseBody

三:总结

   有关spring mvc的我没有怎么去记载,只是在用的时候去做这些事情的。不过现在该记载的还是要记载的哦。努力加油,明天就回家了,刚刚老大说了,会发年终奖的,我期待着哦;

posted @ 2015-02-13 17:03  郁闷的耗子  阅读(4188)  评论(0编辑  收藏  举报