彻底理解jdbc为什么用反射创建驱动程序对象
Posted THISISPAN
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了彻底理解jdbc为什么用反射创建驱动程序对象相关的知识,希望对你有一定的参考价值。
1.class.forName(mysql),这样更换数据库时,不需要更改程序代码,程序不需要重新编译就能运行。
因为反射是动态编译的,程序运行期间生成指定类的对象,
这样就可以程序运行期间生成不同的数据库驱动程序对象。省去了固定写死一个数据库驱动对象(通过new 构造函数的方法),造成每更换一个数据库,要重新编译代码的问题。
2.ioc容器中生成对象时,也是根据xml配置信息中的类型,反射生成对象的。并把这些对象存储在hashmap中,供程序调用的
3.hibernate/mybatis这种持久层框架中,进行数据持久化时,通过反射生成sql语句
以上是关于彻底理解jdbc为什么用反射创建驱动程序对象的主要内容,如果未能解决你的问题,请参考以下文章