今天写了一个controller
@RequestMapping("/addAUsertype")
public @ResponseBody Map addAUsertype(@RequestParam String typeId,@RequestParam String typeName,
@RequestParam Integer maxBorrowNum)
{
Map map = new HashMap();
Map paramMap = new HashMap();
try{
paramMap.put("typeId", typeId);
paramMap.put("typeName", typeName);
paramMap.put("maxBorrowNum", maxBorrowNum);
int flag = usertypeservice.addAUsertype(paramMap);
if(flag == 1)
{
map.put(Constants.STATUS, Constants.SUCCESS);
map.put(Constants.MESSAGE, "添加用户类型成功");
}
else
{
map.put(Constants.STATUS, Constants.FAILURE);
map.put(Constants.MESSAGE, "添加用户类型失败");
}
}
catch(Exception e)
{
e.getStackTrace();
map.put(Constants.STATUS, Constants.FAILURE);
map.put(Constants.MESSAGE, "添加用户类型失败");
}
return map;
}
然而在测试的时候http://localhost:8080/pandastore/usertype/addAUsertype.do?typeId=00005&typeName= 教师&maxBorrowNum=100
2015-12-08 13:10:18 [com.panda.mapper.UsertypeMapper.addAUsertype]-[DEBUG] ==> Preparing: insert into usertype(type_id,type_name,max_borrow_num,is_delete) values(?,?,?, 0)2015-12-08 13:10:18 [com.panda.mapper.UsertypeMapper.addAUsertype]-[DEBUG] ==> Parameters: 00020(String), é???????????(String), 100(Integer)2015-12-08 13:10:18 [com.panda.mapper.UsertypeMapper.addAUsertype]-[DEBUG] <== Updates: 1
接收到的中文参数变为了乱码
解决方法:get方法:在tomcat的server.xml的
添加URIEncoding=”utf-8″
post:
web.xml配置一个字符过滤器
SpringEncodingFilter
org.springframework.web.filter.CharacterEncodingFilter
encoding
UTF-8
forceEncoding
true
SpringEncodingFilter
/*