今天写了一个controller
@RequestMapping("/addAUsertype")
public @ResponseBody Map<String,Object> addAUsertype(@RequestParam String typeId,@RequestParam String typeName,
@RequestParam Integer maxBorrowNum)
{
Map<String,Object> map = new HashMap<String,Object>();
Map<String,Object> paramMap = new HashMap<String,Object>();
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的
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
添加URIEncoding="utf-8"
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="utf-8"/>
post:
web.xml配置一个字符过滤器
<!-- Spring字符集过滤器 -->
<filter>
<filter-name>SpringEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>SpringEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>