Tag: 数据源

具有多个数据源Oracle和H2的Spring Boot

我为我的角项目开发了一个Spring Boot RestController并遇到了问题。 在我的rest服务逻辑中,我使用了两个不同的数据库来获取数据。 在这里您可以看到数据源配置: [application.properties] #datasource1 spring.datasource.url=[url] spring.datasource.username=[username] spring.datasource.password=[password] spring.datasource.driverClassName=org.h2.Driver #datasource2 spring.secondDatasource.url=[url] spring.secondDatasource.username=[username] spring.secondDatasource.password=[password] spring.secondDatasource.driverClassName=oracle.jdbc.OracleDriver [DatasourceConfig.java] @Bean @Primary @ConfigurationProperties(prefix=”spring.datasource”) public DataSource h2DataSource() { return DataSourceBuilder.create().build(); } @Bean @ConfigurationProperties(prefix=”spring.secondDatasource”) public DataSource oracleDataSource() { return DataSourceBuilder.create().build(); } 记录输出:(此问题不会引发exception) … 2016-11-22 13:20:25.853 [INFO ] 1 [main] dbsApplication : Started Application in 7.757 seconds (JVM running for 12.515) […]

Tomcat6 MySql JDBC数据源配置

我总是使用Spring的dependency injection来获取数据源对象并在我的DAO中使用它们,但现在,我必须编写一个没有它的应用程序。 有了Spring,我可以这样写: 但是如何在没有Spring或其他任何东西的情况下在我的DAO中使用数据源? 我只使用servlet和JSP。 性能是非常重要的因素。

如何在Tomcat 6中配置全局JNDI数据源?

我正在努力在Tomcat 6.0.32中配置一个简单的JNDI池数据源。 我想在我的Web应用程序工件之外创建数据源定义。 基本上我不希望我的应用程序知道访问数据库服务器的凭据。 我假设,在Weblogic中,应该可以在Tomcat中创建一个“全局”JNDI数据源,但到目前为止我一直没有成功。 我试图在CATALINA_HOME / conf / context中添加数据源定义: 结果是服务器在引导时输出以下行: SEVERE: Null component Catalina:type=DataSource,path=/,host=localhost,class=javax.sql.DataSource,name=”jdbc/mydb” 任何指针将不胜感激。

在1.7中的javax.sql.CommonDataSource中添加了新方法

试图针对java 1.7编译我的应用程序我发现在javax.sql.CommonDataSource中添加了一个新方法(在jsDataSource中也是如此) – 。 getParentLogger() 。 您可以将CommonDataSource:1.7与CommonDataSource进行比较:1.6 对我来说,这种改变肯定会破坏向后兼容 例如,我的应用程序(包含DataSource的实现)甚至不会在没有代码更改的情况下针对1.7进行编译。 根据我的观点,这应该是非常有力的理由 – 但我不能谷歌甚至一个。 有人可以解释这种变化背后的原因吗? 应该如何处理它 – 对我来说这是我第一次遇到与java的向后不兼容,所以我这里没有任何“最佳实践”……

用于localhost,开发和生产的Spring数据源配置

我试图弄清楚我的Spring应用程序如何确定它的部署位置并加载适当的数据源。 我们有3个环境……我的本地,开发服务器和生产服务器。 到目前为止,我有3个属性文件调用 localhost.datasource.properties development.datasource.properties production.datasource.properties 我让他们像这样: classpath:/resources/properties/production.datasource.properties classpath:/resources/properties/development.datasource.properties classpath:/resources/properties/localhost.datasource.properties 当我在我的localhost机器上时,这很好用。 如果我将war文件部署到开发中,它仍然在读取localhost属性,因为它是列表中的最后一个,我收到错误。 实现这个的最佳方法是什么? 谢谢

无法从前缀为jdbc /的java访问weblogic数据源

我在weblogic中创建了两个带有以下jndi名称的数据源 JDBC / testDatasource testDatasource1 我能够使用java访问数据源testDatasource1,但访问数据源jdbc / testDatasource我得到以下提到错误 javax.naming.NameNotFoundException: While trying to lookup ‘jdbc.testDatasource’ didn’t find subcontext ‘jdbc’. Resolved ” [Root exception is javax.naming.NameNotFoundException: While trying to lookup ‘jdbc.testDatasource’ didn’t find subcontext ‘jdbc’. Resolved ”]; remaining name ‘jdbc/testDatasource’ 似乎前缀jdbc /正在给出问题。

使用AbstractRoutingDataSource动态更改数据库架构/目录

根据这篇文章 ,您可以使用Spring Framework中的AbstractRoutingDataSource动态更改应用程序使用的数据源。 但是,使用的数据源是由配置定义的,而不是以编程方式定义的。 有没有办法配置要在运行时使用的数据源? 该解决方案的可扩展性如何,即数据源数量有何限制? 谢谢!

JDBC驱动程序JAR文件应该驻留在具有数据源的Tomcat部署中的哪个位置?

我有使用Spring,Hibernate,Tomcat7和MySql的java Web应用程序。 我使用Datasource进行数据库操作。 我不是很清楚加载jar文件( Tomcat-jdbc.jar和Mysql-connector.jar )的标准位置是什么? 如果我在CATALINA_HOME/lib/或webapps/myApp/WEB-INF/lib保留jar子,它就可以工作。 但我被告知只使用来自/WEB-INF/lib/ CATALINA_HOME / lib /和mysql-connector.jar的Tomcat-jdbc,它为Sql Driver提供了ClassNotFoundexception。 有人能告诉我这些jar子的正确位置吗?

是javax.sql.DataSource线程安全吗?

我在JBoss 7中部署的Java EE应用程序中使用PostgreSQL 9.1 JDBC4驱动程序(postgresql-9.1-902.jdbc4.jar)。 我可以假设javax.sql.DataSource是线程安全的,这样多个线程可以同时调用它上面的getConnection()方法吗?

如何将DataSource绑定到InitialContext以进行JUnit测试?

我正在尝试对数据库“worker”类运行JUnit测试,这些类在InitialContext上执行jndi查找以获取DataSource 。 工作类通常在Glassfish v3 App Server上运行,该服务器定义了适当的jdbc资源。 代码在App Server上部署时运行得很好,但是没有从JUnit测试环境运行,因为很明显它找不到jndi资源。 所以我尝试在测试类中设置一个InitialContext,它将数据源绑定到适当的上下文,但它不起作用。 这是我在测试中的代码 @BeforeClass public static void setUpClass() throws Exception { try { // Create initial context System.setProperty(Context.INITIAL_CONTEXT_FACTORY, “org.apache.naming.java.javaURLContextFactory”); System.setProperty(Context.URL_PKG_PREFIXES, “org.apache.naming”); InitialContext ic = new InitialContext(); ic.createSubcontext(“java:”); ic.createSubcontext(“java:/comp”); ic.createSubcontext(“java:/comp/env”); ic.createSubcontext(“java:/comp/env/jdbc”); // Construct DataSource SQLServerConnectionPoolDataSource testDS = new SQLServerConnectionPoolDataSource(); testDS.setServerName(“sqlserveraddress”); testDS.setPortNumber(1433); testDS.setDatabaseName(“dbname”); testDS.setUser(“username”); testDS.setPassword(“password”); ic.bind(“java:/comp/env/jdbc/TestDS”, testDS); DataWorker dw = […]