环境
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
网友评论