2 回答

TA貢獻1719條經驗 獲得超6個贊
Tomcat 不是像 Weblogic 那樣的 Java EE 容器。如果您真的想繼續使用 JNDI,請查看 TomEE。
就個人而言,我會讓 Spring 管理數據庫連接。使用像 Spring 這樣的框架的優點是它從您的應用程序運行的容器中承擔了很多責任,例如。數據庫連接。
Spring Boot 通過查看以下內容自動配置數據源:
你
application.yml
的 JDBC url 和用戶名/密碼您
pom.xml
可以查看它將使用哪個數據庫驅動程序(Spring Boot 也可以從您的 JDBC url 派生該驅動程序,但您必須添加驅動程序庫)
真的沒什么可做的了。
您現在可以自動裝配DataSource
或使用 SpringJdbcTemplate
來避免大量樣板代碼。

TA貢獻1797條經驗 獲得超6個贊
這可以使用配置文件使用 @Bean 注釋來初始化 TomcatEmbeddedServletContainerFactory 。請參閱下面的代碼片段,這可能會有所幫助。以下是需要根據您的需要更新的格式之一。
@Bean
public TomcatEmbeddedServletContainerFactory tomcatFactory() {
return new TomcatEmbeddedServletContainerFactory() {
@Override
protected TomcatEmbeddedServletContainer getTomcatEmbeddedServletContainer(Tomcat tomcat) {
tomcat.enableNaming();
return super.getTomcatEmbeddedServletContainer(tomcat);
}
/* (non-Javadoc)
* @see org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory#postProcessContext(org.apache.catalina.Context)
*/
@Override
protected void postProcessContext(Context context) {
ContextResource resource = new ContextResource();
resource.setName("your_app_DS_name");
resource.setType("your_app_property");
resource.setProperty("driverClassName", "your_app_Drive");
resource.setProperty("factory", "your_app_factory_property_details");
//similarly configure other needed and dependent properties.
context.getNamingResources().addResource(resource);
}
};
}
添加回答
舉報