Jersey RESTful WebService框架学习(六)接收MultivaluedMap类型参数
现在的web开发中有些工程会觉得实体bean的架构会比较重,现在的持久层的框架的特点也层出不穷,核心思想的ORM在此基础上,提供了很多便捷操作,mybatis,jfinal(内部持久层框架)之类的也诞生了很多工具,包括官方的也不乏很多国产的,说这么多。。。表达一个意思很多框架都提供map形式的入库,说说Jersey 这个RESTful 框架怎么处理前端对象转为map的吧。
一、前端静态页面
<body>
<input type="text" name="name" ng-model="user.name">
<input type="text" name="age" ng-model="user.age">
<input type="button" value="保存" ng-click="save()">
</body>
二、http请求
<script type="text/javascript">
var app = angular.module("app", []);
app.controller("ctrl", function($scope, $http) {
$scope.user = {};
$scope.save = function() {
$http({
method : 'post',
url : "/Jersey/api/1.0/my/MultivaluedMap",
data : "json=" + angular.toJson($scope.user),
headers : {
'Content-Type' : 'application/x-www-form-urlencoded'
}
}).success(function(data) {
alert(data)
});
};
});
</script>
三、后端接收
@SuppressWarnings("unchecked")
@POST
@Path("/MultivaluedMap")
@Consumes("application/x-www-form-urlencoded")
@Produces({ MediaType.APPLICATION_JSON + ";charset=UTF-8" })
public String bean(MultivaluedMap<String, String> viParams) {
//得到viParams转换为json
System.out.println(viParams.getFirst("json"));
//转为map便于入库
System.out.println((Map<String, String>)JSON.parse(viParams.getFirst("json")));
return viParams.getFirst("json");
}
Jersey RESTful WebService框架学习(六)接收MultivaluedMap类型参数的更多相关文章
- Jersey RESTful WebService框架学习(一)
介绍:RESTful (Representation State Transfer) 描述了一个架构样式的网络系统,比如 web 应用程序.它首次出现在 2000 年 Roy Fielding 的博士 ...
- Jersey RESTful WebService框架学习(五)使用@BeanParam
第一步:定义一个实体类 注意:实体类的属性需要加上FormParam注解 public class User { @FormParam("name") private String ...
- Jersey RESTful WebService框架学习(二)使用@PathParam
@PathParamuri路径参数写在方法的参数中,获得请求路径参数.比如:@PathParam("username") String userName 前端请求: <!DO ...
- Jersey RESTful WebService框架学习(八)maven搭建
一.pom文件: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www. ...
- Jersey RESTful WebService框架学习(七)文件上传
引入jar包:jersey-media-multipart-2.22.jar 前端: <body> <input id="commonFile" type=&qu ...
- Jersey RESTful WebService框架学习(四)使用@FormParam
前端 <form action="/Jersey/api/1.0/my/form" method="post"> <input type=&q ...
- Jersey RESTful WebService框架学习(三)使用@QueryParam
介绍:@QueryParamuri路径请求参数写在方法的参数中,获得请求路径附带的参数.比如:@QueryParam("desc") String desc 前端控制 <!D ...
- Jersey RESTful WebService框架学习(八)文件下载防乱码
最近在做下载时候 不同浏览器下载的文件一直出现乱码,不知道怎么设置文件的编码,百度许久,找到一个解决办法如下 /** * 文件下载 * @param request * @return */ @GE ...
- Jersey框架一:Jersey RESTful WebService框架简介
Jersey系列文章: Jersey框架一:Jersey RESTful WebService框架简介 Jersey框架二:Jersey对JSON的支持 Jersey框架三:Jersey对HTTPS的 ...
随机推荐
- MongoDB的索引(六)
数据准备:在mongodb命令行终端执行如下代码 for(var i=0;i<100000;i++) { ... db.users.insert({username:"user&quo ...
- LRU缓存原理
LRU(Least Recently Used) LRU是近期最少使用的算法,它的核心思想是当缓存满时,会优先淘汰那些近期最少使用的缓存对象. 采用LRU算法的缓存有两种:LrhCache和DisL ...
- js阻止a标签默认事件的几种方法
方法/步骤 疑问 打开编辑器,新建html并加入a标签,如图所示,小编想点击a标签时执行pop函数同时禁止a标签的默认的href跳转,该如何阻止呢? 方法一 要阻止a标签跳转,可以改变href ...
- andorid 进度条和图片的透明度
layout.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:a ...
- PyTorch 1.0 发布,JIT、全新的分布式库、C++ 前端
Python 张量与动态神经网络 PyTorch 1.0 发布了. 此版本的主要亮点包括 JIT 编译.全新并且更快的分布式库与 C++ 前端等. JIT 编译器 JIT(Just-In-Time)是 ...
- CF402D Upgrading Array
原题链接 先用素数筛筛下素数,然后考虑贪心去操作. 先求前缀\(GCD\)(求到\(GCD\)为\(1\)就不用再往下求了),得到数组\(G[i]\),然后从后往前扫,如果\(f(G[i]) < ...
- python httplib2应用get post
import httplib2,time #装饰器方法,用于记录方法消耗时间 #推荐将print 改成log def timer(func): def _warpper(self,*argv) ...
- swift 官方获取JSON 数据方法
var url = NSURL(string: "http://www.weather.com.cn/data/sk/101120501.html") var data = NSD ...
- js生成简单二维码
js文件下载地址:https://download.csdn.net/download/weixin_38296752/10554485 一.引入qrcode.js文件 <script type ...
- ubuntu 配置ftp server(zz)
ubuntu 配置 ftp server 安装vsftpd sudo apt-get install vsftpd # vsftp(Very Secure FTP)是一种在Unix/Linux中非 ...