@Bean public DataSource masterDataSource() throws IllegalArgumentException, NamingException { JndiObjectFactoryBean bean = new JndiObjectFactoryBean(); bean.setJndiName("jdbc/test"); bean.setProxyInterface(DataSource.class); bean.setLookupOnStartup(false); bean.setResourceRef(true); bean.afterPropertiesSet(); return (DataSource) bean.getObject(); }
tomcat 中context.xml配置
Spring Boot 2.0版本怎么玩呢?
打包成war包
通过上一篇文章,我们可以把配置放到tomcat/conf/context.xml里,那么在Spring Boot中,我们只要配置jndi指向的名称就可以了,对于这个点的,Spring Boot还是提供了相应的配置的,在application.properties添加如下配置:
spring.datasource.jndi-name=jdbc/test