我想在java conf Spring中获取JNDI值。
context.xml文件:
<Environment name="foo" type="java.lang.String" value="bar" />
xml spring config:
<jee:jndi-lookup id="foobar" jndi-name="java:comp/env/foo" default-value="nothing"/>
java spring config:
@Bean
public String foobar() {
???
}
如果有人能给我一个例子,它会非常有用。感谢
答案 0 :(得分:0)
修改强>
尝试自动加载JndiObjectFactoryBean
它将有一个getJndiName()方法,该方法继承自JndiObjectLocator将公开您的jndi名称
试试这个
@Bean
public DataSource dataSource() {
final JndiDataSourceLookup dsLookup = new JndiDataSourceLookup();
dsLookup.setResourceRef(true);
DataSource dataSource = dsLookup.getDataSource("jdbc/yourJdbcGoesHere");
return dataSource;
}