您的位置:首页 > 移动开发

Spring4 Note @Scope @RequestMapping @Controller

2015-12-25 22:48 441 查看
@RequestMapping
value 指定请求的实际地址,地址可以是URI Template模式.
method 指定请求的method方法类型GET,POST,PUT,DELETE.
consumes 指定提交的请求的内容的类型(Content-type) 如:application/json,text/html;
produces 指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回.
params 指定request中必须包含的参数值,才让该方法请求
headers 指定request中请求头必须包含的header值,才让该方法请求

@RequestMapping(value = "/home", method = RequestMethod.GET)
public String pluginHome() {
log.info("welcome! plugin home!");
return "plugin/home";
}

@RequestMapping(value = "/plugins",produces = "application/json",params = "id=pluginId", method = RequestMethod.GET)
public void plugins() {
}

@RequestMapping(value = "/plugins", method = RequestMethod.POST, consumes = "application/json")
public @ResponseBody String plugins(@RequestBody String pluginType) {
return "plugins by plugin type.";
}


@Controller
使用@Controller 注解的类为Spring mvc 控制器类


@Scope

singleton 单列模式 多个请求共用一个实例,并且如果容器不销毁则一直存活.
prototype 每当有一个请求,则生成一个实例.
request 在http请求结束之后即生命周期结束.
session 用于存储用户信息的时候,其相对于request生命周期存活的时间要长.
global session 只有应用在基于porlet的web应用程序中才有意义,他映射到porlet的global范围的session,如果普通的servlet的web 应用中使用了这个scope,容器会把它作为普通的session的scope对待.

proxyMode代理模式 这里使用的是AspectJ的类代理
@Scope(value = "request", proxyMode = ScopedProxyMode.TARGET_CLASS)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring spring mvc