`

字符编码 Mysql, SpringMVC, GlashFish, Tomcat

 
阅读更多

(转自)http://hi.baidu.com/quest2run/blog/item/696488143eea1104c83d6da3.html

已经记不得自己最后一次解决这个问题是什么时候了,反正当时是觉得自己搞定啦,可是最近使用新的框架,新的 GlassFish 服务器,突然间又遇到这个问题,可是却一下想不起怎么解决了,看来“好心性不如烂笔头”啊。

1. 基本原则
在所有的层统一 encoding, 比如要做国际化的应用,那就是 UTF-8 了

2. Mysql
2.1 数据库配置 my.cnf 中
default-character-set=utf8

2.2 jdbc.url=jdbc:mysql://localhost:3306/study?useUnicode=true&characterEncoding=UTF-8

3. servlet container 或 Application Container
3.1 Tomcat   server.xml     

<Connector port="8080" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true"
               URIEncoding="UTF-8"
   />
3.2 GlassFish
默认情况是 UTF-8,但可是在 sun-web.xml 中加上
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sun-web-app PUBLIC "-//Sun Microsystems, Inc.//DTD GlassFish Application Server 3.0 Servlet 3.0//EN" "http://www.sun.com/software/appserver/dtds/sun-web-app_3_0-0.dtd">
<sun-web-app error-url="">
<context-root>/study</context-root>
<class-loader delegate="true"/>
<jsp-config>
<property name="keepgenerated" value="true">
<description>Keep a copy of the generated servlet class' java code.</description>
</property>
</jsp-config>
<parameter-encoding default-charset="UTF-8"/>
</sun-web-app>

4. Servlet/Filter

web.xml

<!-- filter to set the encoding, the encoding should be consistent in all layers of the application -->
<filter>
<filter-name>Set Character Encoding</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>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

5. JSP/HTML page
5.1  JSP
<%@ page contentType="text/html;charset=UTF-8" %>
<%@page pageEncoding="UTF-8"%>

5.2 HTML
<HEAD>
<TITLE>JPetStore Demo</TITLE>
<META content="text/html;charset=UTF-8" http-equiv=Content-Type>
</HEAD>


注意,mysql 官方公布了一些老的 connectJ 的 Bug, 不认 UTF-8, 只认 UTF8 (不带中画线的)
分享到:
评论

相关推荐

    基于SpringMVC+Tomcat搭建的WEB工程

    在本文中,我们将深入探讨如何基于SpringMVC和Tomcat搭建一个WEB工程,这是一个常见的Web开发实践,尤其适合初学者入门。我们将从编程环境的设置、SpringMVC框架的介绍、Tomcat服务器的使用,以及项目目录结构等方面...

    源码:基于 springmvc+tomcat+mysql 的BBS论坛

    基于 springmvc+tomcat+mysql 的BBS论坛 本系统具有以下功能: 1.前台服务功能 登录、注册、修改信息、注销、管理个人留言信息、查看发表回复帖子、查询留言 2.后台管理功能 用户管理、版主后台管理、管理员后台...

    基于springmvc+tomcat+mysql的房屋租赁系统

    基于springmvc+tomcat+mysql的房屋租赁系统 本项目实现功能: 1、租客登录或注册该房屋租赁系统 2、登陆后可以查询房源信息、发布房源信息、修改房源信息、删除房源信息。 实现语言:java 环境要求:Eclipse+...

    项目源码:基于 springmvc+tomcat+mysql 的超市平台系统

    该项目源码是一个基于SpringMVC、Tomcat应用服务器和MySQL数据库构建的超市平台管理系统,主要服务于后台管理员对超市货物的日常运营与管理。系统具备以下关键功能模块: 1. **管理员登录**:此功能是系统的基础,...

    基于(springmvc+tomcat+JavaScript)的收支管理MoneySSM系统 开发工具:eclipse、tomc

    开发工具:eclipse、tomcat、navicat、mysql8.0 开发技术:Java、html、css、JavaScript、jsp、springmvc。 功能实现:OB列表、菜单管理、菜单主页面、充值列表、出资列表、登录页面、分配角色、富有日志、角色管理...

    SpringMVC+JNDI+Tomcat配置数据源

    ### SpringMVC+JNDI+Tomcat配置数据源 #### 一、简介 在Java Web开发中,数据源(DataSource)是管理数据库连接的重要组件。SpringMVC框架结合Java Naming and Directory Interface (JNDI) 和Apache Tomcat服务器...

    基于springmvc+tomcat+mybatis所做的博客登陆界面

    【标题】"基于SpringMVC+Tomcat+MyBatis的博客登录界面"是一个Web应用程序,它整合了三个核心的Java技术栈组件:SpringMVC作为控制器层,MySQL作为数据库,MyBatis作为数据访问层。这个项目主要是为了实现一个用户...

    springmvc-tomcat-spike:Spring MVC和不带XML的嵌入式Tomcat

    springmvc-tomcat-spike Spike找出使用嵌入式Tomcat运行Spring MVC应用程序所需的条件,该应用程序仅使用代码和注释(没有XML文件)进行配置。 启动后,您应该可以访问并查看“ Hello World”。 可以使用PORT环境...

    Spirng+SpringMVC+Maven+Mybatis+MySQL+tomcat实例

    这是一个基于Java技术栈的经典组合——SSM框架(Spring、SpringMVC、Mybatis)与Maven构建工具,以及MySQL数据库和Tomcat应用服务器的实践项目。这个实例将带你深入理解这些技术如何协同工作,构建一个完整的Web应用...

    基于(springmvc+tomcat+JavaScript)实现化妆品商城系统

    1、开发工具:eclipse、tomcat、navicat、mysql8.0 2、开发技术:Java、html、css、JavaScript、jsp、springmvc。 3、项目描述:该化妆品销售系统可以实现顾客的注册、登录、浏览化妆品、查询化妆品、查看购物车、...

    SpringMVC+Mysql实例详解

    在这个实例详解中,我们将深入理解SpringMVC的核心概念以及如何与MySQL数据库进行集成。 首先,我们从SpringMVC的基本组件开始。在MVC模式中,“模型”负责处理业务逻辑和数据管理,通常由JavaBeans或实体类表示;...

    SpringMVC Tomcat控制台乱码问题解决方案

    这是因为Tomcat的控制台默认使用的字符编码是GBK,而SpringMVC框架使用的字符编码是UTF-8。因此,当我们使用SpringMVC框架时,需要解决这个乱码问题。 二、解决方案 解决方案主要分为两部分,一部分是解决Tomcat...

    SpringMVC+MyBatis+MySql注解示例

    **SpringMVC、MyBatis和MySQL整合详解** 在现代Java Web开发中,SpringMVC、MyBatis和MySQL是常见的技术栈,被广泛用于构建高效、可维护的Web应用程序。这个“SpringMVC+MyBatis+MySql注解示例”是一个完整的整合...

    springMVC解决中文乱码

    解决 SpringMVC 中的中文乱码问题可以通过多种方法来实现,包括在 web.xml 文件中配置字符编码、使用注解配置字符编码、使用 CharacterEncodingFilter 或者自定义 Filter 等。这些方法都可以有效地解决中文乱码问题...

    二年级JAVAEE学生信息管理系统_Spring+SpringMVC+Mybatis+Mysql+Tomcat.zip

    《二年级JAVAEE学生信息管理系统:Spring+SpringMVC+Mybatis+Mysql+Tomcat实践解析》 在信息技术日益发达的今天,信息化管理已成为各行各业不可或缺的重要组成部分。本项目——"二年级JAVAEE学生信息管理系统",...

    SpringMVC Mysql 实例详解

    SpringMVC和MySQL是两种广泛应用于Java Web开发的技术。SpringMVC是Spring框架的一个模块,主要负责处理HTTP请求,提供模型-视图-控制器(MVC)架构模式,而MySQL则是一款关系型数据库管理系统,用于存储和管理应用...

    springmvc+mybatis+mysql+maven

    该项目框架使用:springmvc+mybatis+mysql,用maven管理,项目结构清晰,登录demo已经做好。后期开发只需要改数据库配置文件,以及参照这个结构往上面堆砌代码即可。遇到问题欢迎指出tks!同时sql建表语句已经放在D...

    SSM框架实现监考安排与查询系统(技术栈:spring+springmvc+mybatis+mysql+tomcat+jsp)

    SSM框架实现监考安排与查询系统(技术栈:spring+springmvc+mybatis+jsp+tomcat+mysql) 系统分前后台,角色包括:管理员、学生、老师 登录和注册模块 考场信息模块 考试信息模块 点我收藏 功能 监考安排模块 考场...

    springMvc+mybatis+mysql整合实例

    在IT行业中,SpringMVC、MyBatis和MySQL是三个非常关键的技术组件,它们共同构建了一个强大且灵活的Web应用程序框架。SpringMVC是Spring框架的一部分,专门用于处理Web请求和响应;MyBatis是一个轻量级的持久层框架...

    学生管理系统 mysql+springMVC

    《学生管理系统:MySQL + SpringMVC的深度剖析》 学生管理系统是JavaEE开发中的常见应用场景,它涵盖了数据库设计、后端开发以及前端展示等多个技术环节。在这个系统中,MySQL作为关系型数据库,负责存储和管理学生...

Global site tag (gtag.js) - Google Analytics