SpringMVC 注解(待补充)
来源:互联网 发布:linux 多进程通信 编辑:程序博客网 时间:2024/05/17 04:07
@ResponseBody
作用:
该注解用于将Controller的方法返回的对象,通过适当的HttpMessageConverter转换为指定格式后,写入到Response对象的body数据区,即:直接写入HTTP response body中,和response.getWriter().print(xxx)效果类似。
使用时机:
返回的数据不是html标签的页面,而是其他某种格式的数据时(如json、xml等)使用;
@PathVariable是用来对指定请求的URL路径里面的变量
eg: Java代码
- @RequestMapping(value = "form/{id}/apply", method = {RequestMethod.PUT, RequestMethod.POST})
public ModelAndView updateView(@PathVariable(value = "id") String id){
ModelAndView mav = new ModelAndView("demo/personUpdate");
Map<String,Object> map = new HashMap<String,Object>();
map.put("id", id);
Person person = personService.findPersonById(map);
mav.addObject("person", person);
return mav;
}
{id}在这个请求的URL里就是个变量,可以使用@PathVariable来获取
@PathVariable和@RequestParam的区别就在于:@RequestParam用来获得静态的URL请求参数;@PathVariable用来获得动态的URL请求入参
http://localhost:8080/Springmvc/user/page.do?pageSize=3&pageNow=2
你可以把这地址分开理解,其中问号前半部分:http://localhost:8080/Springmvc/user/page.do 这个就是路径,是你的请求url,而如果这个路径上有数据匹配,用的就是@PathVariable 如
@RequestMapping(value="/page{pageNo}.do")
public String page(@PathVariable int pageNo){}
【注意:看下这地方的@RequestMapping的地址,对照我上面说的路径】
而问号的后面部分就是请求参数部分,是要向请求路径提交的参数信息,用的就是@RequestParam ,对于这种参数,如果你要用的话,代码应该如下:
@RequestMapping(value="/page.do")
public String page(@RequestParam int pageSize,@RequestParam int pageNow){}
【注意:这个代码的RequestMapping地址只需要/page.do就行】
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?><
beans
xmlns
=
"http://www.springframework.org/schema/beans"
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.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
<
context:component-scan
base-package
=
"org.springframework.samples.petclinic.web"
/>
<!-- ... -->
</
beans
>
@Controller
@RequestMapping
(
"/favsoft"
)
public
class
AnnotationController {
@RequestMapping
(method=RequestMethod.GET)
public
String get(){
return
""
;
}
@RequestMapping
(value=
"/getName"
, method = RequestMethod.GET)
public
String getName(String userName) {
return
userName;
}
@RequestMapping
(value=
"/{day}"
, method=RequestMethod.GET)
public
String getDay(Date day){
DateFormat df =
new
SimpleDateFormat(
"yyyy-MM-dd"
);
return
df.format(day);
}
@RequestMapping
(value=
"/addUser"
, method=RequestMethod.GET)
public
String addFavUser(
@Validated
FavUser favUser,BindingResult result){
if
(result.hasErrors()){
return
"favUser"
;
}
//favUserService.addFavUser(favUser);
return
"redirect:/favlist"
;
}
@RequestMapping
(
"/test"
)
@ResponseBody
public
String test(){
return
"aa"
;
}
}
- SpringMVC 注解(待补充)
- 计划(待补充)
- 操作系统(待补充)
- HMM资源(待补充)
- linux常用命令(待补充)
- 常用路径(待补充)
- 浅谈搜索(待补充)
- 字典树(待补充)
- vector实现(待补充)
- 内部类(待补充)
- gdb调试(待)补充
- AtomicInteger原理(待补充)
- 广义表(待补充)
- moive纹理(待补充)
- 二分查找(待补充)
- 闭包(待补充)
- 组合数取模(待补充)
- Linux 常用命令(待补充)
- 折线分割平面(递归找规律)
- pacemaker+corosync搭建高可用集群
- 编译安装php
- 百思不得姐高仿
- 第一百二十一天 : varnish
- SpringMVC 注解(待补充)
- Unity3d中UI开发的MVC模式
- JavaSwing_1.8: SpringLayout(弹性布局)
- GDB调试-多进程与多线程程序
- PHP生成二维码
- JavaSwing_1.9: null(绝对布局)
- C++复合类型
- 贪心背包-南阳OJ-106
- spring概述