我有一个配置数据库连接的 spring xml 文件:
<bean name="dataSource" id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://127.0.0.1:3306/****" />
<property name="username" value="****" />
<property name="password" value="****" />
</bean>
为什么在 Java 中我可以获取 url、用户名和密码,但不能获取 driverClassName?
@Autowired
private DriverManagerDataSource dataSource;
private void connect() {
// dataSource.getDriverClassName() does not exist
final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
final String DB_URL = dataSource.getUrl();
final String USER = dataSource.getPassword();
final String PASS = dataSource.getUsername();
}
谢谢!
最佳答案
为什么该方法不存在?嗯 - 怎么样:因为你不需要它
在dinosaur-java(jdbc 4.0之前)中,您必须显式注册您的jdbc驱动程序 - 通常通过在Class.forName (driverName)
调用中加载类。那不再需要了。您所需要的只是类路径上的驱动程序 jar、正确的 jdbc-url、用户名和密码。这就是您在这里得到的全部内容。
关于java - Spring - 从 bean 数据源获取 driverClassName,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34508253/