JDBC学习笔记
来源:互联网 发布:遗传算法 实际应用 编辑:程序博客网 时间:2024/06/05 11:50
JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,同时,JDBC也是个商标名。(百度知识点概述)
Jdbc连接数据库6大步骤
1.加载驱动
2.获取连接
3.获取处理命令
4.执行sql语句
5.处理结果
6.回收资源
DTO:数据传输对象
DAO:Data Access Object数据访问对象
DAO通用增删改
public static boolean execUpdate(Connection conn,String sql,Object ...objs){try {PreparedStatement ps = conn.prepareStatement(sql);for (int i = 0; i < objs.length; i++) {ps.setObject(i+1, objs[i]);}int i = ps.executeUpdate();return i>0 ? true:false;} catch (SQLException e) {e.printStackTrace();}return false;}
查询所有
public static <T> List<T> queryList(String sql,CallBack<T> call,Object...params){Connection conn = DBConnection.getConn();PreparedStatement ps = null;try {ps = conn.prepareStatement(sql);for(int i = 0;i<params.length;i++){ps.setObject(i+1, params[i]);}ResultSet rs = ps.executeQuery();return call.getDatas(rs);} catch (SQLException e) {e.printStackTrace();}return null;}
查询一条记录
public static <T> T queryOne(String sql,CallBack<T> call,Object...params){Connection conn = DBConnection.getConn();PreparedStatement ps = null;try {ps = conn.prepareStatement(sql);for(int i = 0;i<params.length;i++){ps.setObject(i+1, params[i]);}ResultSet rs = ps.executeQuery();return call.getData(rs);} catch (SQLException e) {e.printStackTrace();}return null;}
查询返回接口 jdk1.8支持
public interface CallBack<T>{default List<T> getDatas(ResultSet rs){return null;}default T getData(ResultSet rs){return null;}}
//jdk1.8以下使用抽象类public static abstract class CallBack<T>{public List<T> getDatas(ResultSet rs){return null;}public T getData(ResultSet rs){return null;}}
阅读全文
0 0
- JDBC学习笔记(二)
- JDBC学习笔记(二)
- JDBC学习笔记(三)
- JDBC学习笔记(四)
- JDBC学习笔记(六)
- JDBC学习笔记
- JDBC学习笔记
- JDBC学习笔记1
- jdbc学习笔记2
- jdbc学习笔记
- JDBC学习笔记
- jdbc学习笔记(1)
- jdbc学习笔记(2)
- jdbc学习笔记(3)
- JDBC学习笔记
- J2EE学习笔记--JDBC
- JDBC学习笔记
- JDBC学习笔记
- jdk1.8 date新特性
- JDBC基本概念
- 浏览器PC端自定义滚动条样式-vue-bar
- 集训 第一天 三分 结构体排序
- spring boot1.5.X以上版本@ConfigurationProperties注解没有location属性后的替代用法
- JDBC学习笔记
- 内存文件映射原理和简单应用
- git-子模块subtree
- [编程题] DNA片段
- C++11新特性:Lambda函数(匿名函数)
- How to create and kill processes on remote PC
- 离线安装chrome插件Postman总结
- 从《Unity5.X从入门到精通》上扒来的基础知识(一)
- Java跳出循环-break和continue语句