Java
操作MySQL
的中文处理方法一则
这是很头痛的问题,一直都是在困扰着我们。我有一个不算简单也不算难的方法,这是我一直在用的方式。
1
、建立一个类,包括一个格式将中文转换为
ISO8859-1
编码的方法:
public
class
Format2Chinese {
public
Format2Chinese() {
}
public
String format2IS08859(String str) {
try
{
if
(str ==
null
|| str.trim().equals(
""
))
str =
""
;
else
str =
new
String(str.getBytes(
"ISO8859-1"
));
}
catch
(Exception e) {
e.printStackTrace();
}
return
str;
}
}
2
、你的
bean
里面这时就要加一些东西了,如下面这个简单的
bean:
public
class
Leavemsg
{
public
Leavemsg() {
}
//
这个要加的,因为写入的时候我们不格式,写出的时候格式化
public
Leavemsg(
boolean
format) {
this
.
format
= format;
}
private
String msg;
boolean
format
=
false
;
//
用于确定是否将字符格式转换
Format2Chinese
function
=
new
Format2Chinese();
public
void
setMsg(String msg) {
if
(
format
) {
this
.msg =
function
.format2IS08859(msg);
}
else
this
.msg = msg;
}
public
String getMsg() {
return
msg;
}
}
3
、在用
bean
装数据的时候,这样声明:
Leavemsg msg=
new
Leavemsg(
true
);
然后其它的操作都是一样的,就
OK
了。
这时页面显示中文的时候就不会出问题了,在
JSP
页面里这可以这样,用该类做包装得到的内容。