操作"/>
使用JDBC对表进行增删改查操作
1、使用properties配置文件
开发中获得连接的4个参数(驱动,url ,用户名,密码)通常都存在配置文件,方便后期维护,程序如果需要更换数据,只需要修改配置文件即可。
通常情况下,我们习惯使用properties文件。此文件我们将做如下要求:
(1)、文件位置:任意,建议src下
(2)、文件名称:任意,扩展名为properties
(3)、文件内容:一行一组数据,格式是“key = vaue”
*key 命名自定义,如果是多个单词,习惯使用点隔开。例如jdbc.driver
*value 值不支持中文,如果需要使用非英文字符,将进行Unicode转换
2、创建配置文件
右键/New/File,输入“db.properties”文件名
jdbc.driver = com.mysql.jdbc.Driver
jdbc.url = jdbc:mysql://localhost:3306/test
jdbc.user = root
jdbc.password = 123456
3、加载配置文件获取连接
我们将使用jdk提供的工具ResourceBundle加载properties文件,ResourceBundle提供getBundle()方法用于只提供properties文件即可,之后使用getString(key)通过key获得value的值。
JdbcUtils.java
public class JdbcUtils{private static String driver; //驱动private static String url; //路径private static String username; //用户名private static String password; //密码/*** 静态代码块加载配置文件信息,只需要加载一次*/static{//1、使用jdk提供的工具类加载properties文件ResourceBundle bundle = ResourceBundle.getBundle("db");//2、通过key获得需要的值driver = bundle.getString("jdbc.driver");url = bundle.getString("jdbc.url");username = bundle.getString("jdbc.user");password = bundle.getString("jdbc.password");}/*** 获取连接方法* * @return*/public static Connection getConnection() {Connection conn = null;try {//1、注册驱动Class.forName(driver);//2、获取连接conn = DriverManager.getConnection(url, username, password);} catch (Exception e) {throw new RuntimeException(e);}return conn;}
}
4、实现
4.1模板
//模板
@Test
public void demo00() throws Exception {Connection conn = null;Statement st = null;ResultSet rs = null;try {//获取连接conn = JdbcUtils.getConnection();} catch (Exception e) {} finally {//释放资源JdbcUtils.release(conn, st, rs);}
}
4.2、添加:insert into
//添加
@Test
public void demo01() throws Exception {Connection conn = null;Statement st = null;ResultSet rs = null;try {//1、获取连接conn = JdbcUtils.getConnection();//2、获得语句执行者st = conn.createStatement();//3、执行语句int r = st.executeUpdate("insert into category(cid,cname) value ('c001''家电')");//4、输出结果System.out.println(r);} catch (Exception e) {} finally {//释放资源JdbcUtils.release(conn, st, rs);}
}
4.3、更新:update ... set
//更新
@Test
public void demo02() throws Exception {Connection conn = null;Statement st = null;ResultSet rs = null;try {//1、获取连接conn = JdbcUtils.getConnection();//2、获得语句执行者st = conn.createStatement();//3、执行语句int r = st.executeUpdate("update category set cname = '服饰' where cid = 'c001'");//4、输出结果System.out.println(r);} catch (Exception e) {} finally {//释放资源JdbcUtils.release(conn, st, rs);}
}
4.4、删除:delete
//删除
@Test
public void demo03() throws Exception {Connection conn = null;Statement st = null;ResultSet rs = null;try {//1、获取连接conn = JdbcUtils.getConnection();//2、获得语句执行者st = conn.createStatement();//3、执行语句int r = st.executeUpdate("delete from category where cid = 'c001'");//4、输出结果System.out.println(r);} catch (Exception e) {} finally {//释放资源JdbcUtils.release(conn, st, rs);}
}
4.5、通过id查询
//通过id查询
@Test
public void demo04() throws Exception {Connection conn = null;Statement st = null;ResultSet rs = null;try {//1、获取连接conn = JdbcUtils.getConnection();//2、获得语句执行者st = conn.createStatement();//3、执行语句int r = st.executeUpdate("select * from category where cid = 'c002'");//4、输出结果if(rs.next()){String cid = rs.getString("cid"); //通过列名获得值String cname = rs.getString(2); //通过索引号获得值,从1开始System.out.println(cid+":"+cname);}else{System.out.println("没有查询结果");}} catch (Exception e) {} finally {//释放资源JdbcUtils.release(conn, st, rs);}
}
更多推荐
使用JDBC对表进行增删改查操作
发布评论