springmvc @RequestMapping注解的入门配置教程
直接代码喽。
@Controller @RequestMapping("/appointments") public class AppointmentsController { private final AppointmentBook appointmentBook; @Autowired public AppointmentsController(AppointmentBook appointmentBook) { this.appointmentBook = appointmentBook; } @RequestMapping(method = RequestMethod.GET) public Map<String, Appointment> get() { return appointmentBook.getAppointmentsForToday(); } @RequestMapping(value="/{day}", method = RequestMethod.GET) public Map<String, Appointment> getForDay(@PathVariable @DateTimeFormat(iso=ISO.DATE) Date day, Model model) { return appointmentBook.getAppointmentsForDay(day); } @RequestMapping(value="/new", method = RequestMethod.GET) public AppointmentForm getNewForm() { return new AppointmentForm(); } @RequestMapping(method = RequestMethod.POST) public String add(@Valid AppointmentForm appointment, BindingResult result) { if (result.hasErrors()) { return "appointments/new"; } appointmentBook.addAppointment(appointment); return "redirect:/appointments"; } }
DispatcherServle
<servlet> <servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcher</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>
/appointments/new.do
映射方法是getNewForm()
/appointments.do
GET请求映射方法是 get()
POST请求映射方法是add(@Valid AppointmentForm appointment, BindingResult result)
通过参数条件缩小路径映射
@RequestMapping(value = "/path", params="myParam=myValue") public void add(){...}
http://localhost:8080/DynamicWebProject/hao/hello.do?myParam=myValue
URL中只有存在myParam=myValue参数时才被允许访问路径映射的方法
@RequestMapping(value = "/path", method = RequestMethod.POST, headers="content-type=text/*") public void add(){...}
只有在URL的头信息中包含有content-type=text/*(content-type=text/xml)的POST请求才能访问add()方法
配合@RequestMapping使用的方法或注解
org.springframework.web.context.request.WebRequest或org.springframework.web.context.request.NativeWebRequest。通用请求参数允许访问 request/session属性,到本机的Servlet / Portlet API的。
java.util.Locale 当前请求的区域设置,由解析器提供最具体的语言环境。
java.io.InputStream /java.io.Reader访问请求的内容。这个值是原始的InputStream /Reader ,由Servlet API公开。
java.io.OutputStream /java.io.Writer生成响应的内容。这个值是原始的OutputStream /Writer,由Servlet API公开。
@ PathVariable注明获取URI模板变量的参数。
@ RequestParam注明为获取特定的servlet请求参数的参数。
@ RequestHeader 访问特定的servlet请求的HTTP头的参数。参数值转换为声明的方法的参数类型。
@ RequestBody 访问HTTP请求体参数。参数值转换为所声明的方法的参数类型使用HttpMessageConverters。
HttpEntity <?>访问servlet请求的HTTP头和内容。请求流将被转换为实体采用HttpMessageConverters。
java.util.Map/ org.springframework.ui.Model /org.springframework.ui.ModelMap为丰富的隐含模型,暴露在Web视图
org.springframework.validation.Errors / org.springframework.validation.BindingResult
org.springframework.web.bind.support.SessionStatus
原文地址:http://www.blogjava.net/wmcoo/articles/333428.html
由最代码官方编辑于2016-9-20 10:03:52
猜你喜欢
- springmvc @RequestMapping注解伪静态技术
- Spring MVC基于注解配置入门教程及其代码实例
- Spring MVC入门学习教程及其配置实例
- 基于浏览器首选语言的springmvc和freemarker国际化配置的实现
- springMVC注解与hibernate完美结合完成基本的增删改查demo源码下载
- spring mvc注解代码实例教程
- java MemCached使用配置教程代码例子
- springmvc开发微信公众平台验证token接口教程及其java源代码分享
- java日志框架log4j配置教程
- spring3.0 mvc和rest风格的小例子配置demo代码教程
- java logback日志输出到多个文件配置学习教程
- spring MVC3原理教程及其框架搭建实例
- 证精 基于浏览器首选语言的springmvc和freemarker国际化配置的实现
- 原 基于maven与springMVC的拦截器Interceptor,控制器Controller的使用
- 精 SpringMVC的三种统一异常处理实例代码分享
- 证精 bootstrap jquery underscore backbone 新浪微博 springmvc整合demo代码
- 精 spring mvc-showcase,便于学习springmvc,maven工程,建议使用谷歌浏览器
- 原证精 springmvc @RequestMapping注解伪静态技术
- 原 springMVC注解与hibernate完美结合完成基本的增删改查demo源码下载
- 原 SpringMVC整合Redis demo小例子
- 原证精 java Web SpringMVC项目实现12306余票查询功能
- 原证 springmvc开发微信公众平台验证token接口教程及其java源代码分享
- 原 SpringMvc整合Mybatis搭建java Web入门项目实例,是基于MAVEN的java web工程
- SpringMvc从propertites属性文件读取常量