我在Spring很新,我有以下问题。
我正在开发一个运行到JBoss服务器的应用程序,它必须使用 JdbcTemplate 在数据库上执行查询。
进入JBoss我已经设置了识别数据库连接的 JNDI名称。
我试图实现这个 JdbcTemplate 简单示例,我很清楚 JdbcTemplate 是如何工作的。在此示例中,为了创建与数据库的连接,它定义了一个 dataSource bean,然后以这种方式将其注入到使用 JdbcTemplate 的类中:
<!-- Initialization for data source -->
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/TEST"/>
<property name="username" value="root"/>
<property name="password" value="password"/>
</bean>
<!-- Definition for studentJDBCTemplate bean -->
<bean id="studentJDBCTemplate"
class="com.tutorialspoint.StudentJDBCTemplate">
<property name="dataSource" ref="dataSource" />
</bean>
因此,正如您所看到的,在此配置中,数据源配置显式写入xml配置文件。
如何通过定义的 JNDI名称从JBoss获取它?
答案 0 :(得分:2)
您可以使用以下spring-servlet.xml:
<jee:jndi-lookup id="dataSource" jndi-name="<JNDI NAME>" />
在beans标签的xsi:schemaLocation属性中添加以下内容:
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd