JDBC工具类
使用JDBC API操作数据库的基本步骤
分析使用JDBC API操作数据库,进行CRUD基本步骤都相似。
1、加载和注册驱动
2、获取数据库连接
3、准备操作执行SQL的Statement对象
4、执行SQL
(1)调用Statement对象的executeUpdate(String sql)执行SQL语句进行插入、修改、删除操作
(2)调用Statement对象的executeQuery(String sql)执行SQL语句进行查询操作
5、处理执行结果
(1)CUD操作,根据返回的int值判断结果
(2)查询操作,根据返回ResultSet结果集,获取查询数据
6、释放资源
总结:
(1)加载和注册驱动,整个项目做一次即可
(2)获取数据库连接可以封装到一个方法中
(3)释放资源可以封装到一个方法中编写工具类JDBCUtilspackage com.atguigu.utils; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Properties; /* * 工具类: * 1、注册驱动:只要运行一次 * 2、获取连接 * 3、关闭资源 */ public class JDBCUtils { private static String drivername; private static String url; private static String user; private static String password; private static Properties pro = new Properties(); static{ try { //加载,读取jdbc.properties配置的信息 //pro.load的作用是把jdbc.properties文件中配置的信息,一一put到pro这个map中 pro.load(ClassLoader.getSystemClassLoader().getResourceAsStream("jdbc.properties")); // drivername = pro.getProperty("key") drivername = pro.getProperty("drivername"); url = pro.getProperty("url"); user = pro.getProperty("user"); password = pro.getProperty("password"); //注册驱动,加载驱动 Class.forName(drivername); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public static Connection getConnection()throws SQLException{ Connection conn = DriverManager.getConnection(url, user, password); return conn; } public static void closeQuietly(Connection conn){ try { if(conn!=null){ conn.close(); } } catch (SQLException e) { e.printStackTrace(); } } public static void closeQuietly(Statement st){ try { if(st!=null){ st.close(); } } catch (SQLException e) { e.printStackTrace(); } } public static void closeQuietly(ResultSet rs){ try { if(rs!=null){ rs.close(); } } catch (SQLException e) { e.printStackTrace(); } } public static void closeQuietly(Statement st,Connection conn){ closeQuietly(st); closeQuietly(conn); } public static void closeQuietly(ResultSet rs,Statement st,Connection conn){ closeQuietly(rs); closeQuietly(st); closeQuietly(conn); } }
相关阅读:
如何使用JDBC API
java编程技术JDBC
如何使用JDBC API操作数据库
数据库连接池之DBCP数据源
JDK1.8之前日期时间类
是什么成就了特斯拉想象一个没有电灯电机电泵电扇冰箱或者电梯的世界。如果没有微波,就没有收音机或电视。下次当你按下开关时,你应该想一想尼古拉特斯拉(NikolaTesla)。特斯拉比其他任何一位发明家
走ups快递渠道的交税方式有哪些?最近有个客户发国际快递ups到英国,在清关派送环节经常会出现收件人未支付关税,派件不成功,将尝试第二次派送或者第X次派送。遇到这种情况,客户和收件人都百思不得其解,按道理,收件人除
宽容失败,宽容学生创业证券时报记者余胜良曾经的明星独角兽柔宇科技,如今陷入困境。刘姝威教授大声疾呼,要保护柔宇科技从0到1的成就,帮助柔宇从1到N。怎么帮?就要对柔宇进行全面诊断,看是哪里出了问题。一位
MarsCamTrack是HTCVive新出的一站式虚拟制片解决方案它能让演员在制片过程中进入到任意虚拟背景中。HTCViveHTCVive日前推出了一套名为MarsCamTrack的一站式虚拟制片解决方案,它能帮助影视创作者以相对容易接受的预算,
马斯克440亿美元收购推特股价大涨广州日报讯(全媒体记者文静)当地时间4月25日,社交媒体平台推特公司接受了埃隆马斯克的收购协议。根据协议,马斯克将以每股54。2美元,总计约440亿美元的价格收购推特。马斯克当天在
押注虚拟时尚1000亿市场,张一鸣的野心藏不住字节跳动入局虚拟时尚千亿市场你会购买虚拟服装吗?这个回答可能答案各异,但是你一定玩过QQ秀。虚拟服装可以简单理解为对QQ秀穿搭玩法的再一次升级。风口下,有机构称元宇宙将引领未来20
光刻机霸权美国以20的专利,操纵全球市场,我国如何超越?前言自从2018年,美国主动掀起中美贸易战以来,芯片和光刻机这两个词,就成了插在所有中国人心中的一根刺。美国在技术领域,用霸权手段,限制荷兰ASML公司,向中国出售最先进的EUV光
以案说法互联网金融犯罪之非法吸收公众存款罪互联网金融相比于传统金融更加方便快捷,与此同时互联网金融犯罪相比于传统金融犯罪更具隐蔽性传染性和广泛性。近年来,互联网金融犯罪呈现出案件逐年上升犯罪数额巨大覆盖区域广泛犯罪主体组织
小米新发布,旗下首款55英寸电子水牌,它有什么用?2022年4月25日消息,小米推出了旗下首款电子水牌,搭载55英寸4K屏,售价3999元,比自家2022款EA55英寸智能电视贵了近一倍的价格,已开启预售,将于4月30日正式开售。
荣耀优质新机开启预售,6nm芯片40W快充,仅1399元还送耳机如今的荣耀可谓风生水起,经历了至暗时刻后的荣耀,现在的产品已经完全覆盖高中低三个档位,高端机型看荣耀Magic系列中端机型看荣耀数字系列和X系列,千元市场看荣耀Play系列,而今天
发不出的快递收不到的货,互联网电商行业遭遇断崖式下跌如果最近还会网购的朋友都会发现,很多地方都发不了货,或者只能发邮政,而且要自己掏钱出运费。其中家装家电等业务都出现了断崖式的下跌,那些产品有效期相对比较短的商家更是雪上加霜。其实自