JDBC结合MySql完成增删改查

来源:互联网 发布:立讯精密 知乎 编辑:程序博客网 时间:2024/05/17 07:04

JDBC结合MySql完成增删改查,代码及步骤如下:

JDBC结合Mysql体验:
第一步:
导入mysql-connector-java-5.1.7-bin.jar包

第二步,新建db.properties:
内容如下:
driver=com.myslq.jdbc.driver
url=jdbc:mysql://localhost:3306/day03(day03代表在MySQL创建的数据库)
username=root(root代表用户名)
password=root(root代表密码)


第三步:新建JdbcUtils(jdbc工具类)如下:
JdbcUtils

package cn.lsh.jdbc.utils;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;import java.util.Properties;public class JdbcUtils { private static Properties config = new Properties();  static{ try { //通过类加载器加载properties文件config.load(JdbcUtils.class.getClassLoader().getResourceAsStream("db.properties"));Class.forName(config.getProperty("driver"));} catch (Exception e) {throw new ExceptionInInitializerError();} }//获取连接public static Connection getConnection()throws Exception{//通过驱动类获取连接信息return (Connection) DriverManager.getConnection(config.getProperty("url"),config.getProperty("username"),config.getProperty("password"));}//添加自定义关闭数据库连接方法public static void release(Connection conn,Statement state,ResultSet set){if(set !=null){try {set.close();} catch (Exception e) {e.printStackTrace();}set=null;}if(state !=null){try {state.close();} catch (Exception e) {e.printStackTrace();}state=null;}if(conn !=null){try {conn.close();} catch (Exception e) {e.printStackTrace();}conn=null;}}}

第四步:新建一个普通的TestDemo1测试类(增删改查):
TestDemo1:
TestDemo1:package cn.lsh.jdbc.test;import java.sql.Connection;import java.sql.ResultSet;import java.sql.Statement;import java.util.ArrayList;import java.util.List;import org.junit.Test;import cn.lsh.domain.User;import cn.lsh.jdbc.utils.JdbcUtils;@SuppressWarnings("unchecked")public class TestDemo1 {//添加用户@Testpublic void insert() throws Exception {Connection conn = null;Statement state = null;ResultSet set = null;try {conn = JdbcUtils.getConnection();state = conn.createStatement();String sql = "insert into users (id,name,password)values(5,'zl','789789')";int num = state.executeUpdate(sql);if(num>0){System.out.println("插入成功");}}finally{JdbcUtils.release(conn, state, set);}}//更新@Testpublic void update() throws Exception {Connection conn = null;Statement state = null;ResultSet set = null;try {conn = JdbcUtils.getConnection();state = conn.createStatement();String sql = "update users set name='xq' where id=5";int num = state.executeUpdate(sql);if(num>0){System.out.println("更新成功!");}} finally{JdbcUtils.release(conn, state, set);}}@Test//查找某一个用户public void find() throws Exception {Connection conn = null;Statement state = null;ResultSet set = null;try {conn = JdbcUtils.getConnection();state = conn.createStatement();String sql = "select id,name,password from users where id=1";set = state.executeQuery(sql);User user = null;if(set.next()){//创建User对象user = new User();user.setId(set.getInt("id"));user.setName(set.getString("name"));user.setPassword(set.getString("password"));}System.out.println("查询到的用户信息是:"+user.getId()+","+user.getName()+","+user.getPassword());} finally{//关闭连接JdbcUtils.release(conn, state, set);}}@Test//查找所有用户public void findAll() throws Exception {Connection conn = null;Statement state = null;ResultSet set = null;try {conn = JdbcUtils.getConnection();state = conn.createStatement();String sql = "select * from users";set = state.executeQuery(sql);List list = new ArrayList();while(set.next()){//创建User对象int id = set.getInt("id");String name = set.getString("name");String password = set.getString("password");//获取所有的id,name,passwordSystem.out.println(id+","+name+","+password);}} finally{//关闭连接JdbcUtils.release(conn, state, set);}}//删除用户@Testpublic void delete() throws Exception {Connection conn = null;Statement state = null;ResultSet set = null;try {conn = JdbcUtils.getConnection();state = conn.createStatement();String sql = "delete from users where id=5";int num = state.executeUpdate(sql);if(num>0){System.out.println("删除成功");}} finally{JdbcUtils.release(conn, state, set);}}}

MySQL数据库如下:
users表如下:
day03mysql> desc users;+----------+-------------+------+-----+---------+----------------+| Field    | Type        | Null | Key | Default | Extra          |+----------+-------------+------+-----+---------+----------------+| id       | int(11)     | NO   | PRI | NULL    | auto_increment || name     | varchar(20) | YES  |     | NULL    |                || password | varchar(60) | YES  |     | NULL    |                |+----------+-------------+------+-----+---------+----------------+mysql> select * from users;+----+------+----------+| id | name | password |+----+------+----------+|  1 | zs   | 123      ||  2 | ls   | 456      ||  3 | ww   | 789      ||  4 | ff   | 123456   ||  5 | zl   | 789789   |+----+------+----------+


0 0
原创粉丝点击