最开始我用springMvc做接口,前端可以通过post一个json格式的字符串,到后端就自动拼装成我想要的java对象了,需要设置一个转换器:
<
bean
class
=
"org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"
>
<
property
name
=
"messageConverters"
>
<
list
>
<
bean
class
=
"org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"
/>
<
st
>
</
property
>
</
bean
>
这样就可以通过js来传json数据:
function
addUser(){
var
jsondata = {
"username"
:
"hahaha"
,
"password"
:
"fsd"
};
$.ajax({
type:
"POST"
,
url:
"/lotteryproject/services/rest/sample/hahaha"
,
dataType:
"json"
,
contentType:
"application/json"
,
data:jsondata,
success:
function
(data){
alert(
"添加用户成功!"
);
}
});
然后请求也能正确返回一个json对象,测试正常
然后我换了spring+cxf的方式来开发restful接口,接口的定义如下:
@POST
@Path
(
"/hahaha"
)
@Produces
(
"application/json"
)
public
User regedit(User ut);
我通过设置jsonProvider使其能够在response的时候返回一个json格式的数据且测试成功:
<
bean
id
=
"jsonProvider"
class
=
"org.codehaus.jackson.jaxrs.JacksonJsonProvider"
>
</
bean
>
<
jaxrs:providers
>
<
ref
bean
=
"jsonProvider"
/>
</
jaxrs:providers
>