Hibernate+MySQL 中文问题的解决

以下的文章主要讲述的是Hibernate+MySQL 中文问题的实际解决方法,即 MySQL数据库安装时我们设置的相关字符集为 utf-8, jdbc 驱动3.0.15 以上,以下的内容就是对Hibernate+MySQL 中文问题的实际解决方案的介绍。

1、Hibernate+MySQL 中文问题解决方案:MySQL安装时设置字符集utf-8, jdbc驱动3.0.15以上.

2. hibernate配置文件中,加上属性

 
 
 
  1. <property name="connection.useUnicode">true</property>   
  2. <property name="connection.characterEncoding">UTF-8</property>  

3. web.xml设置Filter
 

 
 
 
  1. <filter>   
  2. <filter-name>   
  3. Set Web Application Character Encoding   
  4. </filter-name>   
  5. <filter-class>cn.com.commnet.util.SetEncodeFilter</filter-class>   
  6. <init-param>   
  7. <param-name>defaultencoding</param-name>   
  8. <param-value>UTF-8</param-value>   
  9. </init-param>   
  10. </filter>   
  11. <filter-mapping>   
  12. <filter-name>   
  13. Set Web Application Character Encoding   
  14. </filter-name>   
  15. <url-pattern>/*</url-pattern>   
  16. </filter-mapping>   
  17. SetEncodeFilter.java   
  18. public class SetEncodeFilter implements Filter {   
  19. protected FilterConfig filterConfig = null;   
  20. protected String defaultEncoding = null;   
  21. /**//* (non-Javadoc)   
  22. * @see javax.servlet.Filter#init(javax.servlet.FilterConfig)   
  23. */   
  24. public void init(FilterConfig arg0) throws ServletException {   
  25. // TODO Auto-generated method stub   
  26. this.filterConfig = arg0;   
  27. this.defaultEncoding = filterConfig.getInitParameter("defaultencoding");   
  28. }   
  29. /**//* (non-Javadoc)   
  30. * @see javax.servlet.Filter#doFilter(javax.servlet.ServletRequest, 
    javax.servlet.ServletResponse, javax.servlet.FilterChain)   
  31. */   
  32. public void doFilter(   
  33. ServletRequest request,   
  34. ServletResponse response,   
  35. FilterChain chain)   
  36. throws IOException, ServletException {   
  37. // TODO Auto-generated method stub   
  38. request.setCharacterEncoding(selectEncoding(request));   
  39. chain.doFilter(request, response);   
  40. }   
  41. public void destroy() {   
  42.  
  43. this.defaultEncoding = null;   
  44. this.filterConfig = null;   
  45. }   
  46. protected String selectEncoding(ServletRequest request) {   
  47. return this.defaultEncoding;   
  48. }   
  49. }  

以上的相关内容就是对Hibernate+MySQL 中文问题解决方案. 的介绍,望你能有所收获。

【编辑推荐】

  1. MySQL双向复制技术经典版
  2. MySQL数据库备份基础知识汇总
  3. asp.net连接MySQL的正确操作流程
  4. 支持MySQL数据库,SPL升级到3.2
  5. MySQL导入与导出.sql文件实操
THE END