jdbc中Class.forName(driverName)的作用】的更多相关文章

上次面试别人问我jdbc的过程: 我是这样回答的: Class.forName加载驱动 DriverManager.connect(url,username, password)获取连接对象 conn获取statement或者prepareStatement对象进行sql操作 关闭连接 后面在Class.forName这里把我问死了. 他问Class.forName是如何加载驱动的呢?Class.forName方法的作用是什么呢?我回答是得到Class对象.问那怎么装载的驱动对象呢?我产生怀疑了…
一直以来都不知道为什么执行了 Class.forName(); 之后,通过DriverManager.getConnection(); 就可以获取相关数据库的连接Connection的实现呢?今天看了一下学习的视频,顺便看了一下代码,终于明白的原理. 首先,得说说Class.forName(); 的作用:要求JVM查找并加载指定的类,也就是说JVM会执行该类的静态代码段. 而在com.mysql.jdbc.Driver类中,有以下代码: static { try { java.sql.Drive…
Statement 接口提供了三种执行 SQL 语句的方法:executeQuery.executeUpdate 和 execute.使用哪一个方法由 SQL 语句所产生的内容决定. 方法executeQuery 用于产生单个结果集的语句,例如 SELECT 语句. 被使用最多的执行 SQL 语句的方法是 executeQuery.这个方法被用来执行 SELECT 语句,它几乎是使用最多的 SQL 语句. 方法executeUpdate 用于执行 INSERT.UPDATE 或 DELETE 语…
http://www.360doc.com/content/10/0712/10/1720440_38421273.shtml# 使用jdbc方式连接数据库时会使用一句代码Class.forName(String className).这句话是什么意思呢?首先说一点Class.forName(String className)这个方法的作用是装载className这个字符串指定的类. 官方文档   返回与带有给定字符串名的类或接口相关联的 Class 对象.调用此方法等效于: Class.for…
前言 之前学习了JDK SPI的机制,本文专门讨论2个内容: 1.为什么在使用SPI后,不需要Class.forName()了? 2.SPI在JDBC中的运用. JDBC模板代码 private static final String URL = "jdbc:mysql://localhost:3306/demo?useSSL=true&useUnicode=true&characterEncoding=UTF-8"; private static final Stri…
package qddx.JDBC; import java.sql.*; public class JDBC_Connection { static String driverName = "com.mysql.jdbc.Driver";//驱动名 static String url="jdbc:mysql://localhost/bbs";//地址 static String userName="root";//账号 static Strin…
在实体Entity里面,可以使用java.sql.Date.java.sql.Timestamp.java.util.Date来映射到数据库的date.timestamp.datetime等字段 但是,java.sql.Date.java.sql.Timestamp.java.util.Date这些类都不好用,很多方法都过时了. Java8里面新出来了一些API,LocalDate.LocalTime.LocalDateTime 非常好用 如果想要在JDBC中,使用Java8的日期LocalDa…
使用JDBC中的问题 连接的后出现查询结果是乱码. 1.可能是代码的编码与数据库的编码不同 ​ 有可以将二者都设置为UTF-8 2.如果比较懒得话可以只设代码为UTF-8 mysql 连接url中useUnicode=true&characterEncoding=UTF-8 的作用 添加的作用是:指定字符的编码.解码格式. ​ 例如:mysql数据库用的是gbk编码,而项目数据库用的是utf-8编码.这时候如果添加了useUnicode=true&characterEncoding=UTF…
一.DAO设计模式概述###<1>概念 DAO,Data Access Object ,用于访问数据库的对象. 位于业务逻辑和数据持久化层之间,实现对数据持久化层的访问![](1.png) ###<2>作用 隔离了业务层和数据访问层,将两层进行解耦 隔离了不同数据库的实现 增强的程序的可移植性和可扩展性 ![](2.png) ###<3>组成 1. DAO接口(内存插槽的标准):定义操作数据的接口,CRUD 2. DAO实现类(不同内存条厂商生成的内存条):DAO接口的…
JDBC中的主要类(接口) 在JDBC中常用的类有: 1.DriverManager 2.Connection 3.Statement 4.ResultSet 1.DriverManager 其实我们今后只需要会用DriverManager的getConnection( )方法即可: 1. Class.forName("com.mysql.jdbc.Driver");//注册驱动 2. String url = "jdbc:mysq  l://localhost:3306/m…