您的位置:首页 > 编程语言 > Java开发

SpringMVC简单构造restful, 并返回json——(一)

2015-08-21 00:02 661 查看
文章要要点:

快速搭建构造restful的StringMvc

GET, POST , PUT , DELETE的各种调用

同一资源 多种表述 (ContentNegotiatingViewResolver解析器),既可以返回对象给JSP, 也可以返回JSON

快速搭建构造restful的StringMvc

首现搭建一个简单的restfulMvc框架, 并上配置文件, 后期会增加带JSON返回值的配置

JAR包





web.xml配置

?
spring-servlet.xml配置

?
applicationContext.xml暂时没写东西

该配置的配置完了,下面就是写第一个HelloWord

?
@Scope("##") : spring默认的Scope是单列模式(singleton),顾名思义,肯定是线程不安全的. 而@Scope("prototype")

可以保证每个请求都会创建一个新的实例, 还有几个参数: session request

@Scope("session")的意思就是,只要用户不退出,实例就一直存在,

request : 就是作用域换成了request

@Controller : 不多做解释 , 标注它为Controller

@RequestMapping :是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是 以该地址作为父路径。 比如现在访问getProducts方法的地址就是 :

http://localhost:8080/项目名/上面web.xml配置(api)/products/list

l

暂时先介绍两个属性 value和method

具体可以参考我参考的文章 http://blog.sina.com.cn/s/blog_72827fb10101pl9i.html

value: 就是映射的实际地址,这个上面有说过, 而重要的是里面的值 , 有几个比较感兴趣的

1. 正常的 /list 访问地址类似 http://localhost:8080/项目名/api/products/list

2. 带参数的 /info/{proId} 访问地址类似 http://localhost:8080/项目名/api/products/info/0001

method: 请求的method类型 GET POST PUT DELETE等

好,做个测试 JSP代码:

?
地址栏输入 http://localhost:8080/RestFulMvc/api/products/list

得到结果





GET, POST , PUT , DELETE的各种调用

刚才写的是第一种GET, 第二种GET:

?
@PathVariable注解获取的就是大括号里的值

测试 : 输入地址 http://localhost:8080/RestFulMvc/api/products/info/00001

测试结果为





如果不用@PathVariable接收大括号里的值,也可以用bean来接收:

public String getProductInfo(Product pro, HttpServletRequest request,HttpServletResponse response)...

而且也可以设置多个参数

@RequestMapping(value="/info/{pid}/{pname}",method=RequestMethod.GET)

让我们看下面这段代码

?
访问地址: http://localhost:8080/RestFulMvc/api/products/info/00001/23123

得到的结果为 :



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: