- 浏览: 3418477 次
- 性别:
- 来自: 珠海
文章分类
- 全部博客 (1633)
- Java (250)
- Android&HTML5 (111)
- Struts (10)
- Spring (236)
- Hibernate&MyBatis (115)
- SSH (49)
- jQuery插件收集 (55)
- Javascript (145)
- PHP (77)
- REST&WebService (18)
- BIRT (27)
- .NET (7)
- Database (105)
- 设计模式 (16)
- 自动化和测试 (19)
- Maven&Ant (43)
- 工作流 (36)
- 开源应用 (156)
- 其他 (16)
- 前台&美工 (119)
- 工作积累 (0)
- OS&Docker (83)
- Python&爬虫 (28)
- 工具软件 (157)
- 问题收集 (61)
- OFbiz (6)
- noSQL (12)
最新评论
-
HEZR曾嶸:
你好博主,这个不是很理解,能解释一下嘛//左边+1,上边+1, ...
java 两字符串相似度计算算法 -
天使建站:
写得不错,可以看这里,和这里的这篇文章一起看,有 ...
jquery 遍历对象、数组、集合 -
xue88ming:
很有用,谢谢
@PathVariable映射出现错误: Name for argument type -
jnjeC:
厉害,困扰了我很久
MyBatis排序时使用order by 动态参数时需要注意,用$而不是# -
TopLongMan:
非常好,很实用啊。。
PostgreSQL递归查询实现树状结构查询
输入信息乱码
@RequestParam传值中文乱码
http://luanxiyuan.iteye.com/blog/1849169
使用代码手动转换
返回信息乱码
方法一:
http://blog.csdn.net/kissliux/article/details/14053761
采用了一个比较简单的方法来解决这个问题,就是需要服务器返回中文的时候不使用这个注解,而是直接用HttpServletResponse的对象来完成传输,在服务器端可以通过response.setContentType("text/plain;charset=UTF-8");来设定编码类型,这样就不会出现中文乱码了。
服务器端核心代码如下:
返回值时根据自己的数据类型进行设置,常用的有:
response.setContentType("text/html; charset=utf-8"); html
response.setContentType("text/plain; charset=utf-8"); 文本
response.setContentType("application/json; charset=utf-8"); 数据
response.setContentType("application/xml; charset=utf-8"); xml
方法二:@ResponseBody乱码
http://blog.csdn.net/kissliux/article/details/14053761
spring-servlet 配置
controller中
转换类:
@RequestParam传值中文乱码
http://luanxiyuan.iteye.com/blog/1849169
使用代码手动转换
try { return new String(str.getBytes(fromCharset), toCharset); } catch (Exception e) { e.printStackTrace(); return null; }
返回信息乱码
方法一:
http://blog.csdn.net/kissliux/article/details/14053761
采用了一个比较简单的方法来解决这个问题,就是需要服务器返回中文的时候不使用这个注解,而是直接用HttpServletResponse的对象来完成传输,在服务器端可以通过response.setContentType("text/plain;charset=UTF-8");来设定编码类型,这样就不会出现中文乱码了。
服务器端核心代码如下:
@RequestMapping(value = "test", method = RequestMethod.POST) public void test(HttpServletRequest request, HttpServletResponse response) { String result = null; //取得客户端传来的值 String userName = request.getParameter("userName"); //向客户端返回一句话 result = "您好!"; PrintWriter out = null; response.setContentType("text/plain;charset=UTF-8"); try { out = response.getWriter(); out.write(result.toString()); } catch (IOException e) { e.printStackTrace(); } finally { out.close(); } }
返回值时根据自己的数据类型进行设置,常用的有:
response.setContentType("text/html; charset=utf-8"); html
response.setContentType("text/plain; charset=utf-8"); 文本
response.setContentType("application/json; charset=utf-8"); 数据
response.setContentType("application/xml; charset=utf-8"); xml
方法二:@ResponseBody乱码
http://blog.csdn.net/kissliux/article/details/14053761
spring-servlet 配置
<mvc:annotation-driven> <mvc:message-converters register-defaults="true"> <bean class="com.abc.spring.UTF8StringHttpMessageConverter"/> </mvc:message-converters> </mvc:annotation-driven>
controller中
@RequestMapping(value = "/getWeather",method = {RequestMethod.POST,RequestMethod.GET},produces="text/plain;charset=UTF-8") @ResponseBody
转换类:
public class UTF8StringHttpMessageConverter extends AbstractHttpMessageConverter<String> { public static final Charset DEFAULT_CHARSET = Charset.forName("UTF-8"); private final List<Charset> availableCharsets; public UTF8StringHttpMessageConverter() { this(DEFAULT_CHARSET); } public UTF8StringHttpMessageConverter(Charset defaultCharset) { super(new MediaType("text", "plain", defaultCharset), MediaType.ALL); this.availableCharsets = new ArrayList<Charset>(Charset .availableCharsets().values()); } @Override protected boolean supports(Class<?> clazz) { return String.class.equals(clazz); } @Override protected String readInternal(Class<? extends String> clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException { MediaType contentType = inputMessage.getHeaders().getContentType(); Charset charset = contentType.getCharSet() != null ? contentType .getCharSet() : DEFAULT_CHARSET; return FileCopyUtils.copyToString(new InputStreamReader(inputMessage .getBody(), charset)); } @Override protected void writeInternal(String t, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException { MediaType contentType = outputMessage.getHeaders().getContentType(); Charset charset = contentType.getCharSet() != null ? contentType .getCharSet() : DEFAULT_CHARSET; FileCopyUtils.copy(t, new OutputStreamWriter(outputMessage.getBody(), charset)); } protected List<Charset> getAcceptedCharsets() { return this.availableCharsets; } @Override protected Long getContentLength(String s, MediaType contentType) { if (contentType != null && contentType.getCharSet() != null) { Charset charset = contentType.getCharSet(); try { return (long) s.getBytes(charset.name()).length; } catch (UnsupportedEncodingException ex) { throw new InternalError(ex.getMessage()); } } else { return null; } } }
发表评论
-
Spring Boot 属性配置
2016-06-24 11:04 1179Spring Boot 属性配置和使用 http://blog ... -
Spring Boot 集成MyBatis
2016-06-24 10:55 2024Spring Boot 集成MyBatis http://bl ... -
Spring MVC防重复提交
2016-06-17 15:47 1641http://my.oschina.net/zyqjustin ... -
Spring容器加载完之后执行特定任务
2016-06-17 15:36 2281http://my.oschina.net/simpleton ... -
使用spring-session和shiro来代理session的配置
2016-06-16 11:21 12053使用spring-session和redis来代理sessio ... -
JSTL 的 if else : 有 c:if 没有 else 的处理
2016-06-14 09:52 1332http://blog.csdn.net/xiyuan1999 ... -
spring mvc 请求转发和重定向
2016-06-14 09:48 1393http://blog.csdn.net/jackpk/art ... -
mvc:view-controller
2016-05-18 10:26 1080http://blog.csdn.net/lzwglory/a ... -
spring配置事物的方式:注解和aop配置
2016-05-14 00:26 4100参考: Spring AOP中pointcut express ... -
分布式任务调度组件 Uncode-Schedule
2016-05-13 14:47 2286http://www.oschina.net/p/uncode ... -
Mybatis分库分表扩展插件
2016-05-12 15:47 1619http://fangjialong.iteye.com/bl ... -
spring+mybatis+atomikos 实现JTA事务
2016-05-11 22:00 5520sping配置多个数据源 不同用户操作不同数据库 http:/ ... -
Spring中使用注解 @Scheduled执行定时任务
2016-05-10 09:39 1565原文:http://dwf07223.blog.51cto.c ... -
Spring中配置Websocket
2016-05-05 16:55 1275spring+websocket整合(springMVC+sp ... -
redis 集群中Session解决方案之Spring Session
2016-05-04 08:54 1309集群中Session解决方案之Spring Session h ... -
使用Spring-data进行Redis操作
2016-05-04 08:54 4788使用Spring-data进行Redis操作 http://z ... -
Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
2016-05-03 13:35 1058Spring4新特性——集成Bean Validation 1 ... -
SpringMVC介绍之Validation
2016-05-03 13:10 982SpringMVC介绍之Validation http://h ... -
spring 注解方式下使用commons-validator 验证表单
2016-05-03 11:08 3073原文: http://www.programgo.com/ar ... -
Spring MVC学习详解
2016-04-28 09:13 1002原文 http://blog.csdn.net/alsocod ...
相关推荐
在开发Web应用时,Spring MVC和Ajax的交互过程中,经常遇到中文乱码的问题。这个问题主要出现在数据从服务器传输到客户端的过程中,由于编码设置不正确,导致中文字符无法正常显示。以下将详细介绍四种解决Spring ...
主要介绍了springMVC解决ajax请求乱码的三种方法的相关资料,在springmvc的项目中,使用返回页面的请求方式,数据都能正常显示,但是对于ajax的请求,始终显示乱码,这里提供解决办法,需要的朋友可以参考下
【SpringMVC与jQuery实现Ajax功能详解】 Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,实现了网页的部分刷新,...
"AJAX中文乱码.txt"可能涉及的是在使用SpringMVC进行AJAX通信时遇到的字符编码问题。在JavaScript中发送AJAX请求到服务器,如果处理不当,可能会出现中文乱码。解决这个问题通常需要在服务器端和客户端都设置正确的...
这是一个 springmvc + mybatis + jdbc 的基础项目 这里使用了 jackson-databind 包, spring-mvc转json的包 <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind <version>2.12.1 也...
【基于AJAX结合SpringMVC的信息访问服务模式研究】 AJAX(Asynchronous JavaScript and XML)是一种在不重新加载整个网页的情况下,能够更新部分网页的技术。它利用JavaScript、XHTML、CSS、DOM、XML、XSLT以及...
当前端通过Ajax使用JSON格式向SpringMvc后台发送数据时,可能出现中文乱码。这通常是因为服务器默认的字符编码不支持UTF-8导致的。以下是两种解决方法: - 方式一:在Controller方法中手动转码 在接收到请求参数...
在整个开发流程中,还需要特别注意请求参数的绑定和类型转换、请求中文乱码问题的处理、Session和Cookie的使用、Ajax异步请求的处理、文件上传功能的实现、异常处理机制以及拦截器的应用等细节。 对于文件上传,...
在本文中,我们将深入探讨如何使用Spring MVC框架来实现AJAX功能。AJAX(Asynchronous JavaScript and XML)是一种在不刷新整个页面的情况下与服务器交换数据并更新部分网页的技术。Spring MVC提供了一种简单的方式...
在上述问题中,当使用Ajax请求Spring MVC后台并从MySQL数据库查询数据时,页面显示中文出现了乱码。这通常涉及到多个环节的字符编码设置,包括前端、后端和数据库。 1. **前端响应头设置**: 在Ajax请求中,响应头...
三、解决 Ajax 请求中文乱码问题 对于 Ajax 请求,我们可以使用同样的方法来解决中文乱码问题。只需要在 GET 方式中添加 UTF-8 编码支持,并在 Tomcat 服务器中的 server.xml 文件中添加 UTF-8 编码支持。 四、...
- 解决Ajax中JSON中文乱码问题,通常需要设置Tomcat的字符编码,以及在Servlet容器中配置过滤器,如`CharacterEncodingFilter`,确保请求和响应的编码一致。 5. **jar包说明**: 压缩包中的jar包涵盖了Spring、...
完成上述修改后,SpringMvc将能够正确处理`text/plain`类型的数据,并以UTF-8编码返回,从而解决Ajax加载JSON数据时的中文乱码问题。 三、总结 解决Ajax加载JSON数据中文乱码问题的关键在于确保服务器端正确设置...
12. **Ajax和RESTful API支持**:SpringMVC可以方便地处理Ajax请求,并支持创建RESTful风格的API。 13. **视图技术**:SpringMVC支持多种视图技术,如JSP、FreeMarker、Thymeleaf等,允许开发者根据项目需求选择...
在实际项目中,你还需要关注代码的可维护性、扩展性以及与前端的交互,例如使用 AJAX 进行无刷新上传和下载,或者利用 Vue.js、React.js 等前端框架构建更友好的用户界面。同时,确保你的应用符合相关的安全标准和...
在进行Web开发时,使用AJAX技术与服务器进行异步通信,然后将服务器返回的JSON数据展示在前端页面上是一种常见需求。...通过上述方法,可以有效解决使用AJAX传递JSON数据到前台时出现的中文乱码问题。
该项目使用springmvc4.0.3 + Mybatis3.2.5 前端使用easyUI1.4.1 ...1.ajax请求,返回JSON数据,有中文乱码解决方案 2.登陆拦截,未登陆过的用户将跳转到登陆页面 3.邮件发送 4.企业级前端界面 5.前端数据分页、查询