gpt4 book ai didi

java - JPA 是否要求数据源来自 JNDI?

转载 作者:行者123 更新时间:2023-11-28 22:44:06 26 4
gpt4 key购买 nike

我在 Tomcat 中为我的 Web 应用程序使用 Spring。我的数据源是在 Spring 中构建的,然后使用 org.springframework.jndi.JndiTemplate 发布到 JNDI。由于一些原因,这很笨拙,但我的主要问题是很难控制正在使用的数据库(我想做测试)。是否可以在不使用 JNDI 作为查找服务的情况下使用 JPA?理想情况下,我能够将数据源直接提供给 JPA,或者通过一些不依赖于容器的其他方法来实现(我已经研究了容器不提供的 JNDI 实现,但它们'它们不适合我的需要)。

最佳答案

您可以在 spring 配置文件中指定数据源。这是我使用 MySql 数据库的摘录。要查看完整的配置文件和项目,请查看 GitHub 上的源代码.

<!-- Database -->
<bean id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/to_thought_tutorial" />
<property name="username" value="tutorial" />
<property name="password" value="tutorial" />
</bean>

<!-- Entity Manager -->
<bean id="entityManagerFactory"
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="dataSource" ref="datasource" />
<property name="persistenceUnitName" value="tothought-tutorial" />
</bean>

我也鼓励您访问我的博客,其中包含描述如何设置数据源的视频:http://tothought.cloudfoundry.com/post/4

Spring 文档还包括如何设置不依赖 JNDI 的数据源的示例:http://static.springsource.org/spring/docs/3.2.x/spring-framework-reference/html/jdbc.html#jdbc-datasource

关于java - JPA 是否要求数据源来自 JNDI?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14131114/

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