Spring mvc 使用Gson 返回Json数据 中文乱码问题
最近在学习java web 使用Intllij IDEA15.0.4创建一个maven管理的Spring mvc项目,我使用的是gson转化为Json返回,返回的中文显示????,
{”industry”:”?????”,”birthday”:”2014-07-24”,”saying”:”????”}
代码如下:
/**
* Created by Marven on 2016/12/29.
*/
@Controller
@RequestMapping(“/hello”)
public class HelloController {
@RequestMapping(value = “/index”, method = RequestMethod.GET)
@ResponseBody()
public String index(){
return “welcome”;
}
@RequestMapping(value = “/login”,method = RequestMethod.POST,produces = “text/html;charset=UTF-8”)
@ResponseBody()
public String login(HttpServletRequest request){
String name = request.getParameter(“username”);
String password = request.getParameter(“password”);
//调用业务处理LoginCheck
UserEntity entity=LoginCheck.login(name,password);
if(entity!=null){
;return JsonUtil.toJson(entity);
}else{
return “error”;
}
}
1
2
}
网上有很多解决方法,都看着比较复杂,最后发现只要在注解的地方加一句话,就能轻松搞定
produces = “text/html;charset=UTF-8”
@ResponseBody
@RequestMapping(value="/UserApi/SelectByPrimaryKey2",method= RequestMethod.POST,produces="text/html;charset=UTF-8")
publicStringSelectByPrimaryKey2(HttpServletRequest request,HttpServletResponse response){
User user=null;
String userJson =null;
try{
Integer userId = Integer.valueOf(request.getParameter("id"));
logger.debug("========userID===="+userId);
//查询user表中所有数据
user =this.userService.selectByPrimaryKey(userId);
Gson gson =newGson();
userJson = gson.toJson(user);
/*{"id":1,"username":"倪新生","pwd":"123","registtime":"2017-11-21 15:12:48","logintime":"2017-11-21 15:12:48","updatetime":"2017-11-21 15:13:47"}*/
logger.debug("=====用户信息json=====user="+userJson);
}catch(Exception e){
e.printStackTrace();
}
returnuserJson;
}