DruidDataSource在jifnal创建DruidPlugin之前,就通过读取配置文件,根据读取类路径反射创建实例,类似Spring xml配置文件一样
<bean id="druidDataSource" class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="org.postgresql.Driver"></property>
<property name="url" value="jdbc:postgresql://127.0.0.1:5432/xxxxx"></property>
<property name="username" value="postgres"></property>
<property name="password" value="123456"></property>
</bean>
只不过可能不是xml,而是其他的形式。
在jifnal创建DruidPlugin之前,DruidDataSource就已经被反射创建,通过类似getbean之类的函数获得DruidDataSource实例,然后怎么加入到DruidPlugin中?我发现DruidPlugin源码内,并没有提供添加DruidDataSource实例的功能,它的构造函数只能必须再设置url,username,password,driver.但是DruidPlugin内部有一个DruidDataSource类型字段。怎么把DruidDataSource实例设置进去?
当然可以通过 .getUrl(), .getUsername(), .getPassword(),.getDriverClassName() 方式,但是反射创建的DruidDataSource实例可能不止也设置了这四个,也设置了其他内容啊。