gpt4 book ai didi

java - Spring Context中可以使用@DataSourceDefinition注解吗?

转载 作者:行者123 更新时间:2023-11-29 09:21:19 29 4
gpt4 key购买 nike

我可以使用新的 @DataSourceDefinition 而不是在 Spring 上下文中声明 Datasource 吗?

@DataSourceDefinition(name="java:global/MyApp/MyDataSource",
className="com.foobar.MyDataSource",
portNumber=6689,
serverName="myserver.com",
user="lance",
password="secret"
)

使用网址:

@DataSourceDefinition(name="java:global/MyApp/MyDataSource",
className="org.apache.derby.jdbc.ClientDataSource",
url="jdbc:derby://localhost:1527/myDB",
user="lance",
password="secret"
)

从 EJB 中查找数据源的示例:

@Stateless
public class MyStatelessEJB {
@Resource(lookup="java:global/MyApp/myDataSource")
DataSource myDB;
...
}

最佳答案

根据文档,

http://static.springsource.org/spring/docs/3.1.x/spring-framework-reference/html/

spring 不知道这个注解。

但是,一如既往,您可以使用 Spring 的 @Configuration 注释在代码中声明您的数据源:

例子:

@Configuration
public class DatabaseConfig {
@Bean
public DataSource dataSource() {
// instantiate, configure and return DataSource
}
}

其他例子在这里:http://static.springsource.org/spring/docs/3.1.x/javadoc-api/org/springframework/context/annotation/Configuration.html

如果需要访问 JNDI 资源,可以使用 Spring 的 jee 命名空间(xml 配置),说明在:http://static.springsource.org/spring/docs/3.1.x/spring-framework-reference/html/xsd-config.html#xsd-config-body-schemas-jee , C.2.3 节 jee 模式。

例子:

<jee:jndi-lookup id="dataSource" jndi-name="jdbc/MyJdbcDataSource" />

关于java - Spring Context中可以使用@DataSourceDefinition注解吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6204678/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com