`
mixer_a
  • 浏览: 356873 次
社区版块
存档分类
最新评论

hibernate+sqlserver中文乱码的解决

阅读更多

首先要编写一个编码过滤器,起编码如下:

package com.Book.Page.Filter;
import javax.servlet.*;
import java.io.IOException;
public class SetCharacterEncodingFilter implements Filter {
protected String encoding = null;
protected boolean ignore = true;
protected FilterConfig filterConfig = null;
public void destroy() {
  this.encoding = null;
  this.filterConfig = null;
  }
public void doFilter(ServletRequest request, ServletResponse response,FilterChain chain)throws IOException, ServletException {
  if (ignore || (request.getCharacterEncoding() == null)) {
  String encoding = selectEncoding(request);
  if (encoding != null)
  request.setCharacterEncoding(encoding);
  }
  chain.doFilter(request, response);
}
  public void init(FilterConfig filterConfig) throws ServletException {
  this.filterConfig = filterConfig;
  this.encoding = filterConfig.getInitParameter("encoding");
  String value = filterConfig.getInitParameter("ignore");
  if (value == null)
  this.ignore = true;
  else if (value.equalsIgnoreCase("true"))
  this.ignore = true;
  else if (value.equalsIgnoreCase("yes"))
  this.ignore = true;
  else
  this.ignore = false;
  }
  protected String selectEncoding(ServletRequest request) {
  return (this.encoding);
  }
}
 

然后在web.xml文件中加入如下过滤器的配置:

<!--start config of characterEncoding filter-->
<filter>
  <filter-name>Set Character Encoding</filter-name>
  <filter-class>com.Book.Page.Filter.SetCharacterEncodingFilter</filter-class>
  <init-param>
  <param-name>encoding</param-name>
  <param-value>UTF-8</param-value>
  </init-param>
  <init-param>
  <param-name>ignore</param-name>
  <param-value>true</param-value>
  </init-param>
  </filter>
  <filter-mapping>
  <filter-name>Set Character Encoding</filter-name>
  <servlet-name>webwork</servlet-name>
  <url-pattern>*.action</url-pattern>
  </filter-mapping>
<!--end config of characterEncoding -->
hibernate的配置文件也要加入如下配置:
<property name="generate_statistics">true</property>
  <property name="useUnicode">true</property>
  <property name="characterEncoding">UTF-8</property>
 

页面也要改成UTF-8编码:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

还有一点需要注意的是如果使用的数据库是mysql的话还要将mysql的默认编码设置为utf8格式.

3
0
分享到:
评论

相关推荐

    ssh项目spring+stuts+hibernate+sql server 中文乱码解决方案_lj管用.txt

    ssh spring+stuts+hibernate+sql server 中文乱码解决方案_lj管用.txt

    Struts+Hibernate+MyEclipse+Tomcat+MySQL的乱码之解决篇

    在本篇文章中,我们将深入探讨如何解决Struts + Hibernate + MyEclipse + Tomcat + MySQL环境中出现的乱码问题。该问题通常出现在处理中文字符时,由于编码设置不当导致中文显示为乱码或无法正常读取。为了确保系统...

    SQL-SERVER-64位配置ORACLE连接-中文乱码问题

    本文将详细介绍如何解决64位系统下的SQL Server连接Oracle数据库时出现的中文乱码问题,并提供具体的配置步骤。 #### 一、背景介绍 当SQL Server尝试通过ODBC或JDBC等方式连接到Oracle数据库时,如果两个系统的...

    Struts+Hibernate+MyEclipse+Tomcat+MySQL的乱码之解决

    总之,要解决Struts+Hibernate+MyEclipse+Tomcat+MySQL环境中的乱码问题,你需要检查并设置以上提到的所有环节的编码,确保它们统一为UTF-8。通过这种方法,可以有效地避免乱码的出现,从而提供良好的用户体验。在...

    解析Hibernate + MySQL中文乱码问题

    本文将深入解析在使用Hibernate框架与MySQL数据库时遇到的中文乱码问题,以及如何解决这一问题。 首先,我们需要理解中文乱码出现的根本原因。当Java应用程序中的持久化类包含中文字符串,并通过Hibernate映射到...

    解决hibernate与MySql存储中文时出现乱码问题

    以下是解决hibernate与MySQL存储中文时出现乱码问题的详细步骤和相关知识点: 1. **配置Hibernate连接URL**: 在`hibernate.cfg.xml`配置文件中,需要正确设置连接URL以指定字符集。添加`useUnicode=true`和`...

    hibernate数据库中文乱码问题

    ### Hibernate数据库中文乱码问题详解 #### 背景与问题描述 在使用Hibernate框架进行数据库操作时,可能会...通过以上步骤,可以有效地解决Hibernate数据库中文乱码的问题,确保系统中的中文字符能够正确显示和存储。

    struts-hibernate-sprint开发详解 乱码问题 连接池

    本文将详细解析如何使用SSH框架进行开发,并解决乱码和连接池的问题。 首先,配置数据库是开发的第一步。在MyEclipse中,可以通过Database Explorer视图创建数据库连接。配置包括选择数据库类型(如SQL Server)、...

    SqlServer2000驱动框架包

    本资源,名为"SqlServer2000驱动框架包",包含了为SQL Server 2000设计的一系列驱动组件,主要针对的是Java开发环境。下面我们将详细解析其中的核心内容和应用要点。 首先,我们关注到的`jtds-1.2.jar`是此框架驱动...

    mysql乱码问题解决

    打印sql语句还是中文 到数据库发现乱码,本以为是hibernate搞的,结果证明不是hibernate 自己也是网上解决办法 自己的问题解决了 希望能帮助其他人 运行命令:SHOW VARIABLES LIKE 'character_set_%'; 结果如下 '...

    Eclipse创建的JSP文件链接SQLServer2012,Oracle,mysql的方法.rar

    本教程主要介绍如何在Eclipse环境中,使用JSP文件链接SQLServer2012、Oracle和MySQL这三种常见的关系型数据库,提供详细的操作步骤和可能遇到的问题解决方案。 首先,让我们了解Eclipse。Eclipse是一款开源的集成...

    数据库迁移及区别比较(Oracle,Sql Server,MySql).docx

    2. **数据导入与编码设置**:确保数据库编码正确,防止中文等多语言数据出现乱码。这可能需要修改数据库配置文件或使用SQL命令来设置字符集。例如,对于MySQL,可以设置`default-character-set`为`utf8`。 3. **...

    java+mysql 乱码

    通过以上步骤,通常可以解决Java与MySQL交互过程中的中文乱码问题。记得在每个环节都要检查并确保编码的一致性,避免因编码不匹配导致的数据乱码。如果仍然存在问题,可能需要进一步检查其他可能导致乱码的因素,...

    数据库迁移及区别比较(Oracle,Sql Server,MySql).pdf

    - 防止中文乱码:可以通过修改MySQL配置文件或在命令行中设置字符集,确保数据库支持UTF-8编码。 - 数据类型兼容性:如SQL Server的bit类型在MySQL中需转换为tinyint(1)。 3. **SQL语句的修改**: - 项目中的SQL...

    OpenKM6.2安装与配置(默认安装与SQLSERVER数据库安装)

    3. 从官网下载的中文 SQL 语句中,那个时间表示法有误,HH:mm:ss 中的 HH 要改成小写的。 其他配置 1. 修改 OpenKM.cfg 文件,每次修改后都要重启服务,以便修改生效。 2. 首次登录的用户名是 okmAdmin,密码是 ...

    如何在Spring中解决中文乱码的方法.doc

    本文将详细介绍如何在特定的技术栈下解决中文乱码问题,该技术栈包括:JDK 1.4.2_09、Eclipse 3.1、MSSQL Server 2000 SP3、JTDS 1.0.2、Struts 1.1、Hibernate 3.0.5 和 Spring 1.2.4。 #### 解决方案分析 解决...

    struts+hibernate入门实例(eclipse版)

    5. **设置字符集(Set Character Set)**: 设置项目的字符集为 UTF-8,以避免中文乱码的问题。 6. **添加 Struts 功能(Add Struts Capability)**: Struts 是一种流行的 MVC 框架,通过添加 Struts 功能,可以在 ...

    精通Java Web整合开发(JSP+AJAX+Sturts+Hibernate)

    本主题主要聚焦在JSP(Java Server Pages)、AJAX(Asynchronous JavaScript and XML)、Struts和Hibernate这四大技术的整合应用上,旨在提升Web应用的交互性和数据处理能力。 **JSP2.0**: JSP是Java EE展示层的...

    spirngmvc+hibernate

    - ** Criteria 查询** 和 **HQL(Hibernate Query Language)**:提供了一种面向对象的方式来执行数据库查询,相比SQL更加灵活。 描述中提到的“编码格式utf-8”表明该项目遵循UTF-8编码标准,这是Web开发中的常用...

Global site tag (gtag.js) - Google Analytics