一共三个文件,就是连接好了后打开MYSQL看到插入数据中文是乱码,查过资料但是没解出来,请各位帮忙了,大家能帮小弟指出具体把哪段代码改成什么样就可以显示中文,否则还是难以明白
javabean文件如下:package jspshujuku;
import java.sql.*;public class databean {
String url="jdbc:odbc:mysqldemo";
Connection conn;
public databean()
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn=DriverManager.getConnection(url,"root","liulei"); }
catch(Exception ex)
{
ex.printStackTrace();
}
}
public Connection getconn()
{
return conn;
}
}创建数据库代码文件如下:
<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.sql.*" %>
<html>
<head>
<title>
tablecreate
</title>
</head>
<jsp:useBean id="databeanId" scope="session" class="jspshujuku.databean" />
<jsp:setProperty name="databeanId" property="*" />
<body bgcolor="#ffffff">
<h1>
JBuilder Generated JSP
</h1>
<%
Connection conn=databeanId.getconn();
Statement stmt=conn.createStatement();
String sql="create table tabledemo1("+
"id int primary key auto_increment,"+
"title varchar(100),"+
"content text)"+
"ENGINE=InnoDB DEFAULT CHARSET=gbk;";
try
{
stmt.execute(sql);
out.println("成功穿件表");
}
catch(Exception ex)
{
out.println("数据表已经穿件");
}%>
</body>
</html>
插入数据库代码如下:
<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.sql.*" %>
<html>
<head>
<title>
insertdemo
</title>
</head>
<body bgcolor="#ffffff">
<jsp:useBean id="databean" scope="session" class="jspshujuku.databean">
</jsp:useBean>
<h3>插入数据</h3><%
Connection conn=databean.getconn();
Statement stmt=conn.createStatement();
for(int i=1;i<7;i++)
{ String insertstr="insert into tabledemo1(title,content) values('记录"+i+"','内容"+i+"')";
try
{
stmt.execute(insertstr);
out.println("<p>成功插入记录"+i+".</p>");
}
catch(Exception ex)
{
ex.printStackTrace();
}
} %>
</body>
</html>
javabean文件如下:package jspshujuku;
import java.sql.*;public class databean {
String url="jdbc:odbc:mysqldemo";
Connection conn;
public databean()
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn=DriverManager.getConnection(url,"root","liulei"); }
catch(Exception ex)
{
ex.printStackTrace();
}
}
public Connection getconn()
{
return conn;
}
}创建数据库代码文件如下:
<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.sql.*" %>
<html>
<head>
<title>
tablecreate
</title>
</head>
<jsp:useBean id="databeanId" scope="session" class="jspshujuku.databean" />
<jsp:setProperty name="databeanId" property="*" />
<body bgcolor="#ffffff">
<h1>
JBuilder Generated JSP
</h1>
<%
Connection conn=databeanId.getconn();
Statement stmt=conn.createStatement();
String sql="create table tabledemo1("+
"id int primary key auto_increment,"+
"title varchar(100),"+
"content text)"+
"ENGINE=InnoDB DEFAULT CHARSET=gbk;";
try
{
stmt.execute(sql);
out.println("成功穿件表");
}
catch(Exception ex)
{
out.println("数据表已经穿件");
}%>
</body>
</html>
插入数据库代码如下:
<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.sql.*" %>
<html>
<head>
<title>
insertdemo
</title>
</head>
<body bgcolor="#ffffff">
<jsp:useBean id="databean" scope="session" class="jspshujuku.databean">
</jsp:useBean>
<h3>插入数据</h3><%
Connection conn=databean.getconn();
Statement stmt=conn.createStatement();
for(int i=1;i<7;i++)
{ String insertstr="insert into tabledemo1(title,content) values('记录"+i+"','内容"+i+"')";
try
{
stmt.execute(insertstr);
out.println("<p>成功插入记录"+i+".</p>");
}
catch(Exception ex)
{
ex.printStackTrace();
}
} %>
</body>
</html>
解决方案 »
- JAVA WEB 这段代码为什么不能同时判断用户名 密码 确定密码 等。。(有代码)
- ExtJS技术问题——属性
- 如何直接取得页面中element的属性的值,知道的朋友请帮帮忙
- 请教:jsp制作在线录音录制视频
- 以下几个参数不知道是什么意思,请高手指教!!
- 求JSP网站设计的源码
- 奇怪的问题?帮我解决一下?谢谢!!
- 如何在jsp中接收表单中ListBox的多选值
- 为什么在执行response.sendRedirect("test.jsp")后,session参数就没有了呢?
- Lucky day! 今天我通过了IBM Websphere Studio认证考试
- 求Jfreereport
- Unix操作系统下想用JSP做电子商务网服务器配置方法!
试试?反正就是在各种编码之间折腾来、折腾去=jsp
Statement stmt=conn.createStatement();
String updatestr="update tabledemo set content='似的发生12' where id=5";
out.println(updatestr);
updatestr=new String(updatestr.getBytes("GBK"),"GBK");
上面语句的在JSP输出结果是
update tabledemo set content='似的发生12' where id=5 update tabledemo set content='似的发生12' where id=5 成功更新记录很正常,但是到数据库就是乱码了
------- ------------ ----------------- ------ ------ ------- -------------- ------------------------------- -------
id int(11) NULL PRI (NULL) auto_increment select,insert,update,references
title varchar(100) gb2312_chinese_ci YES (NULL) select,insert,update,references
content text gb2312_chinese_ci YES (NULL) select,insert,update,references /*Index Information For - mysqldemo.tabledemo*/
-----------------------------------------------Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
--------- ---------- -------- ------------ ----------- --------- ----------- -------- ------ ------ ---------- -------
tabledemo 0 PRIMARY 1 id A 5 (NULL) (NULL) BTREE /*DDL Information For - mysqldemo.tabledemo*/
---------------------------------------------Table Create Table
--------- -----------------------------------------
tabledemo CREATE TABLE `tabledemo` (
`id` int(11) NOT NULL auto_increment,
`title` varchar(100) default NULL,
`content` text,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312
改一下mysql database的字符集呢ALTER DATABASE db_name
DEFAULT CHARACTER SET gb2312
DEFAULT COLLATE gb2312
建议你改用 com.mysql.jdbc.driver的方式我并没用过jdbc-odbc的方式 ^_*