环境

MySQL 5.5 版本

eclipse

MySQL 连接驱动 mysql-connector-java-5.1.18-bin.jar

mysql8.0之前的版本与之后的版本使用的jar包是不同的,在使用时也有一定的区别。这里,我的 MySQL 版本为 5.5。

准备工作

将 jar 包添加到项目中,右键项目,如下,选择Configure Build Path...

将刚才下载好的 jar 包添加进去即可

增删查改操作

首先,建立一个数据库模板 DBConfig.java

注意:要提前建立一个数据库,然后在JDBC_URL中填写你自己的数据库名称

/*

* 若尘

*/package test;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.Statement;/**

* 数据库连接和关闭工具类

* @author ruochen

* @version 1.0

*/publicclassDBConfig{/** 定义数据库驱动类名称 */privatestaticfinalStringJDBC_DRIVER="com.mysql.jdbc.Driver";/** 数据库连接地址 */privatestaticfinalStringJDBC_URL="jdbc:mysql://127.0.0.1:3306/JavaDB?characterEncoding=utf8";/** 数据库用户名 */privatestaticfinalStringJDBC_USERNAME="root";/** 数据库密码 */privatestaticfinalStringJDBC_PASSWORD="root";/** 数据库连接对象 */privatestaticConnectionconn = null;/**

* 获得链接

* @return

*/publicstaticConnectiongetConnection() {try{try{// 加载驱动程序Class.forName(JDBC_DRIVER);System.out.println("加载成功");}catch(java.lang.ClassNotFoundExceptione) {System.out.println("ForName: "+ e.getMessage());}conn =DriverManager.getConnection(JDBC_URL,JDBC_USERNAME,JDBC_PASSWORD);}catch(Exceptione) {e.printStackTrace();}returnconn;}publicstaticvoid closeConnection(ResultSetrs,Statementps,Connectionconn) {try{if(null != rs) {rs.close();}if(null != ps) {ps.close();}if(null != conn) {conn.close();}}catch(Exceptione) {System.out.println("Close connection error");e.printStackTrace();}}}

建表操作 CreateTest.java

/*

* 若尘

*/packagetest;importjava.sql.Connection;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;/** * JDBC链接数据库,创建数据表  *@authorruochen *@version1.0 */publicclassCreateTest{publicstaticvoidmain(String[] args){Connection conn = DBConfig.getConnection();try{Statement st = conn.createStatement();ResultSet re = conn.getMetaData().getTables(null,null,"student",null);if(re.next()) {System.out.println("表已经存在");}else{// 建表语句String sql ="create table student ( "+"id char(10),"+"name char(16),"+"score integer"+")";st.executeUpdate(sql);System.out.println("创建成功");}DBConfig.closeConnection(re, st, conn);}catch(SQLException e) {System.out.println("SQLException: "+ e.getMessage());}}}

加载成功

创建成功

插入操作 InsertTest.java

/*

* 若尘

*/packagetest;importjava.sql.Connection;importjava.sql.SQLException;importjava.sql.Statement;/** * 数据表中插入数据  *@authorruochen *@version1.0 */publicclassInsertTest{publicstaticvoidmain(String[] args){Connection conn = DBConfig.getConnection();try{Statement st = conn.createStatement();String r1 ="insert into student values('0001', '小王', 80)";String r2 ="insert into student values('0002', '小李', 82)";String r3 ="insert into student values('0003', '小张', 90)";st.executeUpdate(r1);st.executeUpdate(r2);st.executeUpdate(r3);System.out.println("插入成功");DBConfig.closeConnection(null, st, conn);}catch(SQLException e) {e.printStackTrace();}}}

加载成功

插入成功

更新操作 UpdateTest.java

/*

* 若尘

*/packagetest;importjava.sql.Connection;importjava.sql.PreparedStatement;/** * 更新数据库操作  *@authorruochen *@version1.0 */publicclassUpdateTest{publicstaticvoidmain(String[] args){Connection conn = DBConfig.getConnection();String[] id = {"0002","0003"};int[] score = {70,60};PreparedStatement ps;try{ps = conn.prepareStatement("Update student set score=? where id=?");inti =0, idlen = id.length;do{ps.setInt(1, score[i]);ps.setString(2, id[i]);ps.executeUpdate();System.out.println("修改成功");++i;}while(i < idlen);DBConfig.closeConnection(null, ps, conn);}catch(Exception e) {e.printStackTrace();}}}

加载成功

修改成功

修改成功

删除、查询操作 SearchTest.java

/*

* 若尘

*/package test;importjava.sql.Connection;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.Statement;/**

* 删除、查询数据库操作

* @author ruochen

* @version 1.0

*/publicclassSearchTest{publicstaticvoid main(String[] args) {Connectionconn =DBConfig.getConnection();try{Statementst = conn.createStatement();PreparedStatementps = conn.prepareStatement("delete from student where id=?");ps.setString(1,"0002");ps.executeUpdate();System.out.println("删除成功");ResultSetrs = st.executeQuery("select * from student");while(rs.next()) {System.out.println(rs.getString("id") +"\t"+ rs.getString("name") +"\t"+ rs.getShort("score"));}st.close();DBConfig.closeConnection(rs, ps, conn);}catch(Exceptione) {e.printStackTrace();}}}

加载成功删除成功0001小王800003小张60