学习笔记-JDBC
JDBC学习笔记
超会写BUG的小凌
这个作者很懒,什么都没留下…
展开
-
JDBC DbUtils的使用
dbutils是个特别好的工具类,前面文章中实现的BaseDao基本就是此工具类底层原理jar包改善前面的BaseDao方法public class DbUtils { QueryRunner query=new QueryRunner(); public <T> List<T> getAll(Class<T> clazz, String sql, Object... args) throws SQLException, IOExcep.原创 2021-08-03 13:22:37 · 67 阅读 · 0 评论 -
JDBC 将数据库字段映射实体类中
实体类public class Urls { private long id; private String province; private String city; private String url; @Override public String toString() { return "Urls{" + "id=" + id + ", province='"原创 2021-08-03 13:14:57 · 2758 阅读 · 0 评论 -
JDBC 自定义数据库连接工具类(连接池)
使用数据库连接池技术的一个工具类/*使用数据库连接池 */public class JDBCUtils1 { public static void main(String[] args) throws SQLException, IOException, ClassNotFoundException { System.out.println(getConnection()); } static DataSource dataSource; st原创 2021-08-03 13:09:13 · 231 阅读 · 0 评论 -
JDBC 自定义数据库连接工具类
专栏中mysql自定义工具类/*未使用数据库连接池 */public class JDBCUtils { static String user; static String password; static String url; static { Properties pro=new Properties(); //通过反射拿到资源包 try { pro.load(JDBCUtils.cl原创 2021-08-03 13:07:59 · 97 阅读 · 0 评论 -
JDBC Druid德鲁伊数据库连接池
jar包下载properties资源包driverclassName=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3306/kanfang?rewriteBatchedstatements=trueusername=rootpassword=123456initialsize=5maxActive=10maxwait=1000测试代码/*德鲁伊 数据库 连接池 */public class DruidTest {.原创 2021-08-03 13:05:38 · 170 阅读 · 0 评论 -
JDBC 通过properties资源包加载配置
写了一个Utils工具类,减少每次创建连接和关闭连接的重复代码,使用静态代码块在类加载时自动导入配置和注册驱动。/*未使用数据库连接池 */public class JDBCUtils { static String user; static String password; static String url; static { Properties pro=new Properties(); //通过反射拿到资源包 .原创 2021-08-02 12:55:37 · 205 阅读 · 0 评论 -
JDBC MySQL开启事务
通过控制事务,达到数据更新的一致性 @Test public void test01(){ //事务 /* connection.setAutocommit(false); connection.rolLback( );//回滚 connection.lommit();//提交 */ String url="jdbc:mysql://localhost:3306/kanfa原创 2021-08-02 12:50:16 · 355 阅读 · 0 评论 -
JDBC 开启mysql批处理
通过MySQL批处理来提高效率 @Test public void test01() throws SQLException { //使用批处理 /* 告诉mysqL服务器开启批处理的支持 ?rewriteBatchedstatements=true addBatch();将任务赞到一起 excuteBatch();执行批处理 */ String url="原创 2021-08-02 12:48:59 · 173 阅读 · 0 评论 -
JDBC 获取插入数据中自动增长的key值
在prepareStatement方法中传入第二参数Statement.RETURN_GENERATED_KEYS再通过getGenerateKeys获取键值 @Test public void test01() throws SQLException, ClassNotFoundException { //获取自动增长的key值 String url="jdbc:mysql://localhost:3306/kanfang"; Str原创 2021-08-02 12:47:57 · 239 阅读 · 0 评论 -
JDBC 在MySQL中存入图片
虽然可以,但不建议这么做。public class Test04 { @Test public void test01() throws SQLException, FileNotFoundException { //blob存储图片 /* Packet for query is too Large (161636789 > 4194304 ) . You can change this value on the.原创 2021-08-02 12:44:50 · 212 阅读 · 0 评论 -
JDBC 查询数据
在增删改时,使用的是executeUpdate方法,而查询数据时,则是使用executeQuery方法来完成executeQuery会返回一个结果集,通过遍历结果集来获取数据。 ResultSet resultSet = statement.executeQuery(sql);通过resultSet.next()的返回结果来判断是否是最后一条数据通过while遍历 while (resultSet.next()){ Object原创 2021-08-02 01:31:00 · 1116 阅读 · 0 评论 -
JDBC 防止SQL注入
sql语句参数化,防止sql注入创建命令发送器(prepareStatement)在选择命令发送器时,不再使用createStatement,而是使用prepareStatement在建立连接后,先写好sql语句,使用?占位 //1.注册驱动 Class.forName("com.mysql.cj.jdbc.Driver"); //2.建立连接 Connection connection = DriverManager.ge原创 2021-08-02 01:20:43 · 312 阅读 · 0 评论 -
使用JDBC连接MySQL数据库
步骤:一 注册驱动 方式一:通过DriverManager中静态方法registerDriver来注册驱动。DriverManager.registerDriver(new Driver()); 方式二:利用反射来注册驱动:利用反射加载Driver类,Driver类在加载时会先加载静态代码块的内容,来实现注册。Class.forName("com.mysql.cj.jdbc.Driver"); Driver类源码:二 ...原创 2021-08-02 01:11:07 · 134 阅读 · 0 评论 -
JDBC 连接MySQL jar包依赖导入
笔记-仅供参考第一步 下载driver首先需要下载jdbc driver的jar包,这里使用的是MySQL80的版本,使用的是官网最新的jar包为了方便下载,在这里分享个网盘第二步 添加依赖下载好driver的jar包后,要添加到项目依赖,才能使用。依次打开:文件=》项目结构=》模块=》选择要当前要导入的模块=》点击加号=》选择jar或目录的选项=》找到下好的驱动文件=》应用即可。...原创 2021-08-02 00:52:15 · 1838 阅读 · 0 评论