看了好多java连接数据库的配置过程,不同的人有不容的配制方法吧,我这里也写出来供大家参考。
首先安装Eclipse,MySQL,下载jdbc连接器(MySQL Connector J里的jar文件),我这里用的版本是jdk1.7.0_60,MySQL的版本是5.6.17,连接器的版本是mysql-connector-java-5.1.31-bin.jar。
首先将MySQL Connector J解压至任意一个目录(我解压在目录D:\MySQLConnectorJ),然后配置环境变量,在classpath里添加 ;D:\MySQLConnectorJ\mysql-connector-java-5.1.31-bin.jar (注意D前面的“;”,分隔路径用的,如果原来就有不必再加),路径中不能有空格!设置好后将MySQL Connector J中的mysql-connector-java-5.1.31-bin.jar文件复制在jdk文件里的lib文件中(也有说放在jre文件中的lib中,我是都放了反正放多了也没坏处),到此配置完成了。
现在,先配置Java连接MySQL,设其用户名为“root”,密码为“root”。在命令行或用一个SQL的前端软件创建Database。
我是用SQLyog的前端软件来创建Database的。
先创建数据库:
1. CREATE DATABASE SCUTCS;
接着,创建表:
1. CREATE TABLE STUDENT
2. (
3. SNO CHAR(7) NOT NULL,
4. SNAME VARCHAR(8) NOT NULL,
5. SEX CHAR(2) NOT NULL,
6. BDATE DATE NOT NULL,
7. HEIGHT DEC(5,2) DEFAULT 000.00,
8. PRIMARY KEY(SNO)
9. );
然后插入数据,可以用SQL语句insert into <表名> values (value1, value2, ...);
也可以用SQLyog来操作
好了,创建好了。
下面,我们来编写.java文件来演示一下如何访问Java连接MySQL数据库。
1. import java.sql.*;
2. public class JDBCTest {
3. public static void main(String[] args){
驱动程序名
String driver = "com.mysql.jdbc.Driver";
// URL指向要访问的数据库名scutcs
String url = "jdbc:mysql://127.0.0.1:3306/scutcs";
// MySQL配置时的用户名
String user = "root";
// Java连接MySQL配置时的密码
String password = "root";
try {
// 加载驱动程序
Class.forName(driver);
// 连续数据库
Connection conn = DriverManager.getConnection(url, user, password);
if(!conn.isClosed())
System.out.println("Succeeded connecting to the Database!");
// statement用来执行SQL语句
Statement statement = conn.createStatement();
// 要执行的SQL语句
String sql = "select * from student";
结果集
1. ResultSet rs = statement.executeQuery(sql);
2. System.out.println("-----------------");
3. System.out.println("执行结果如下所示:");
4. System.out.println("-----------------");
5. System.out.println(" 学号" + "\t" + " 姓名");
6. System.out.println("-----------------");
7. String name = null;
8. while(rs.next()) {
选择sname这列数据
name = rs.getString("sname");
// 首先使用ISO-8859-1字符集将name解码为字节序列并将结果存储新的字节数组中。
// 然后使用GB2312字符集解码指定的字节数组
name = new String(name.getBytes("ISO-8859-1"),"GB2312");
// 输出结果
1. System.out.println(rs.getString("sno") + "\t" + name);
2. }
3. rs.close();
4. conn.close();
5. } catch(ClassNotFoundException e) {
6. System.out.println("Sorry,can`t find the Driver!");
7. e.printStackTrace();
8. } catch(SQLException e) {
9. e.printStackTrace();
10. } catch(Exception e) {
11. e.printStackTrace();
12. }
13. }
14. }
接下来我们运行一下看下效果:
D:\testjdbc>javac JDBCTest.java
D:\testjdbc>java JDBCTest
Succeeded connecting to the Database!
-----------------------
执行结果如下所示:
-----------------------
学号 姓名
-----------------------
0104421 周远行
0208123 王义平
0209120 王大力
0309119 李 维
0309203 欧阳美林