TA的每日心情 | 开心 2021-3-12 23:18 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
以下环境:mysql5.1+jdk1.6+tomcat6.0.24+windows XP
1、首先确保mysql的my.ini文件中有如下参数,默认没有添加,须手动输入:
[client]
port=3306
default-character-set=gb2312
[mysql]
default-character-set=gb2312 [mysqld]
default-character-set=gb2312 2、建立数据库
create database test4;
或者:
create database if not exists test4 default character set gb2312; 3、创建表
注意:有些人可能会问,还有一个地方要设置编码,建立数据库表时候还没设置编码呢?其实,如果你数据库编码是gb2312的,则表也是.(c_type.txt)
create table type(
Type_id int not null AUTO_INCREMENT primary key,
Type_parent_id int not null,
Type_name_cn varchar(20) not null,
Type_name_en varchar(20) not null,
Type_order_id int not null)ENGINE=InnoDB DEFAULT CHARSET=gb2312; 4、插入数据(i_type.txt)
insert into type(Type_parent_id,Type_name_en,Type_name_cn,Type_order_id) values
("1","dir1","java学习笔记1",1),
("1","dir2","java文摘2",2),
("1","dir3","java下载3",3),
("1","dir4","java教程4",4),
("1","dir5","java实例5",5),
("1","dir6","译文习作6",6); 5、导入数据
mysql> create database if not exists test4 default character set gb2312;
Query OK, 1 row affected (0.02 sec) mysql> use test4;
Database changed
mysql> source c_type.txt;
Query OK, 0 rows affected (0.06 sec) mysql> source i_type.txt;
Query OK, 6 rows affected (0.03 sec)
Records: 6 Duplicates: 0 Warnings: 0 接下来就可以在jsp页面中建立与数据库的连接,直接显示数据库记录应该不会出现乱码,无须其他特别设置,最多注意页面的页面声明部分中
<%@ page contentType="text/HTML; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
那这样一般数据库记录是中文就是中文,不会显示出乱码。
5、测试页面:Test.jsp
<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.sql.*" %> <%
out.println("无乱码内容如下<br>");
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
String url ="jdbc:mysql://localhost:3306/test4?user=root&password=1&useUnicode=true&characterEncoding=gb2312";
//或:String url ="jdbc:mysql://localhost:3306/test4?user=root&password=1";
//cwb为你的数据库名
Connection conn= DriverManager.getConnection(url);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from type"; ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {
out.println("第一个字段内容:<font color=red>"+rs.getString(1)+"</font> 第三个字段内容:<font color=red>"+rs.getString(3)+"</font><br>");
}
out.print("数据库操作成功,恭喜你"); sql = "insert into type(Type_parent_id,Type_name_en,Type_name_cn,Type_order_id) values("1","dir1","java学习笔记3",8)";
stmt.execute(sql);
rs.close();
stmt.close();
conn.close();
} catch(Exception e){
System.out.println("数据库连接不成功"+e.toString());
}
%> 6、现在就是注意update页面了,其实也很简单,只要在页面的开头部分加入: <% request.setCharacterEncoding("gb2312"); %> 这样在表单中向数据库提交记录就不会是乱码了。 以上方法仅献给学习dw + jsp做网页的新手。
源码下载:http://file.javaxxz.com/2014/10/2/054325438.rar |
|