1.支持REST
REST,即REST(Representational State Transfer表述性状态转移)是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。
Spring3 全面支持REST风格的Web服务,而且用起来很方便
在Spring3 MVC 学习笔记(一)列子的基础上添加
RequestMapingController.java
package org.spring.mvc; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.servlet.ModelAndView; @Controller public class RequestMapingController { private Logger logger = LoggerFactory.getLogger(HelloWorldController.class); @RequestMapping(value="/requestMaping/{id}",method = RequestMethod.GET) public ModelAndView requestMaping1(@PathVariable String id, Model model) { ModelAndView mav = new ModelAndView(); mav.setViewName("helloWorld"); mav.addObject("message", "Hello World!"); logger.info("id:"+id); return mav; } }
2.@RequestMapping参数
/** * @see RequestMapping 参数 * * @param value 需要跳转的地址 * * @param mehtod 基于RestFul的跳转参数,有RequestMethod.get post,put 等 * * @param params 符合某个参数的时候才调用该方法 * * @param headers 符合头信息的时候才调用 * * */
@Controller @RequestMapping("/owners/{ownerId}") public class RelativePathUriTemplateController { @RequestMapping(value = "/pets/{petId}", params="myParam=myValue") public void findPet(@PathVariable String ownerId, @PathVariable String petId, Model model) { // implementation omitted } }
myParam表明指定的参数 不应该出现在请求request中
@Controller @RequestMapping("/owners/{ownerId}") public class RelativePathUriTemplateController { @RequestMapping(value = "/pets", method = RequestMethod.POST, headers="content-type=text/*") public void addPet(Pet pet, @PathVariable String ownerId) { // implementation omitted } }在上面的例子中,addPet()方法的内容 content-type时只有调用匹配文本/ *式样,例如,文本/ xml。
本人开了个充值淘宝网店。有需要的朋友请访问的店铺并拍下所充值的话费,
本店已加入消费保障服务计划,货源来源于淘宝充值平台,安全可靠便捷,
支付过后立即到账