基本情况:数据库mysql
以下是数据库的my.ini的几根关键参数
[client]
port=3306
[mysql]
default-character-set=gb2312
character-set-server=gb2312
数据库建立的编码是gb2312-----做的是登录页面-------
用servlet做的 关键代码:
request.setCharacterEncoding("GBK");
response.setCharacterEncoding("GBK");
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String userName = request.getParameter("userName");
String password = request.getParameter("password");
String passwordConfirm = request.getParameter("password1");
String email = request.getParameter("email");
String tel = request.getParameter("tel");
int ut_type = new Integer(request.getParameter("ut_type"));
int m = 0;
Manager manager = new Manager();
manager.setMa_name(userName);
manager.setMa_passwd(password);
manager.setMa_tel(tel);
manager.setUt_id(ut_type);
ManagerDao managerDao = DaoFactory.getManagerInstance();
m = managerDao.addManager(manager);
out.println(manager.getMa_name());
if (m == 0) {
out.println("抱歉,您没有注册成功,请联系管理员!");
}
if (m != 0) {
out.println("您已经注册成功");
}这是那个登录页面的编码参数
<meta http-equiv="Content-Type" content="text/html; charset=GBK" />
这样的话插入好了就是在数据库中是乱码
经过测试
表单到达servlet这个过程我打印的那些都不是乱码 中文
现在求求教经验丰富的老师们
以下是数据库的my.ini的几根关键参数
[client]
port=3306
[mysql]
default-character-set=gb2312
character-set-server=gb2312
数据库建立的编码是gb2312-----做的是登录页面-------
用servlet做的 关键代码:
request.setCharacterEncoding("GBK");
response.setCharacterEncoding("GBK");
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String userName = request.getParameter("userName");
String password = request.getParameter("password");
String passwordConfirm = request.getParameter("password1");
String email = request.getParameter("email");
String tel = request.getParameter("tel");
int ut_type = new Integer(request.getParameter("ut_type"));
int m = 0;
Manager manager = new Manager();
manager.setMa_name(userName);
manager.setMa_passwd(password);
manager.setMa_tel(tel);
manager.setUt_id(ut_type);
ManagerDao managerDao = DaoFactory.getManagerInstance();
m = managerDao.addManager(manager);
out.println(manager.getMa_name());
if (m == 0) {
out.println("抱歉,您没有注册成功,请联系管理员!");
}
if (m != 0) {
out.println("您已经注册成功");
}这是那个登录页面的编码参数
<meta http-equiv="Content-Type" content="text/html; charset=GBK" />
这样的话插入好了就是在数据库中是乱码
经过测试
表单到达servlet这个过程我打印的那些都不是乱码 中文
现在求求教经验丰富的老师们
manager.setMa_tel(tel);
实体里面这两个参数乱码么?
如果还乱码 你连数据库用的jdbc么 用jdbc插入数据试下还乱码么 ?如果还乱 数据库编码修改百度下