`
jbeduhai
  • 浏览: 504477 次
  • 性别: Icon_minigender_1
  • 来自: 山东
社区版块
存档分类
最新评论

JPA数据源转换Tomcat数据源 配置问题 随笔

    博客分类:
  • jpa
阅读更多

在使用到jpa 的开发过程中,有时会用到数据源转换的问题,

以下方法只是我个人遇到的一种情况及解决方法,如有不同的情况,请大家贴出来供大家参考

 

tomcat启动时遇到:
Hibernate Dialect must be explicitly set 解决方法
错误提示:没有设置数据库方言(dialect)

persistence.xml
<persistence-unit name="GameInfoPU"
  transaction-type="RESOURCE_LOCAL">
  <provider>org.hibernate.ejb.HibernatePersistence</provider>
  <class>com.business.userPass</class>
 </persistence-unit>
</persistence>

 

//Tomcat数据源配置

<Context>
<WatchedResource>WEB-INF/web.xml</WatchedResource>

<!--配置数据源-->
<Resource auth="Container" driverClassName="com.mysql.jdbc.Driver" maxActive="20" maxIdle="2" maxWait="5000" name="hibernate/mysql" password="admin" type="javax.sql.DataSource" url="jdbc:mysql://localhost:3306/dbcurr" username="root" />

</Context>

此时的配置启动时会出现:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: org.hibernate.HibernateException: Hibernate Dialect must be explicitly set

解决方法: 修改persistence.xml文件为如下:

persistence.xml
<persistence-unit name="userPassPU"
  transaction-type="RESOURCE_LOCAL">
  <provider>org.hibernate.ejb.HibernatePersistence</provider> //默认jpa本身数据源
  <non-jta-data-source>java:comp/env/hibernate/mysql</non-jta-data-source> // 设置数据库方言,默认去找tomcat数据源
  <class>com.business.userPass</class> //实体类,表
 </persistence-unit>
</persistence>

 

默认jpa本身数据源  tomcat数据源 不能同时都配置,否则出错,冲突

以上方法只是我个人遇到的一种情况及解决方法,如有不同的情况,请大家贴出来供大家参考

分享到:
评论
1 楼 fsy123456 2009-03-02  
可是俺一窍不通啊

相关推荐

    Spring Boot+Jpa多数据源配置Demo(支持不同数据库)

    Spring Boot结合JPA(Java Persistence API)和JdbcTemplate,为开发者提供了灵活且强大的多数据源配置能力。本示例将详细介绍如何在Spring Boot项目中实现这样的配置,以支持不同类型的数据库。 首先,我们要理解...

    使用springboot + JPA / MyBatis 实现多数据源动态切换

    3. **配置JPA实体**:为每个数据源创建对应的`LocalContainerEntityManagerFactoryBean`,并设置相应的数据源。 **三、动态数据源切换** 1. **AbstractRoutingDataSource**:Spring提供的抽象数据源类,可以根据上...

    Spring Boot使用spring-data-jpa配置Mysql多数据源

    在Spring Boot应用中,使用`spring-data-jpa`来配置MySQL多数据源是一项常见的需求,尤其是在构建大型分布式系统时,为了实现数据隔离、负载均衡或读写分离等目的。本教程将详细介绍如何在Spring Boot项目中配置多个...

    springmvc +shiro+querydsl+jpa框架多数据源配置详细说明

    Spring MVC + Shiro + QueryDSL + JPA 框架多数据源配置详细说明 Spring MVC + Shiro + QueryDSL + JPA 框架多数据源配置是当前 Web 应用程序中常见的技术栈组合。该技术栈组合可以提供强大的安全认证、数据查询和...

    springBoot Jpa多数据源配置.rar

    下面将详细解释如何在Spring Boot中设置JPA的多数据源配置。 首先,我们需要理解数据源是什么。数据源是连接到数据库的桥梁,它封装了数据库连接池,提供获取数据库连接的方法。在Spring Boot中,我们可以使用`...

    springboot+JPA 多数据源配置

    通过以上步骤,你就可以在Spring Boot项目中成功配置并使用JPA进行多数据源操作了。这种方式允许你灵活地管理不同数据库的数据,对于复杂的分布式系统和多租户应用特别有用。在实际开发中,还可能需要考虑数据源的...

    SpringBoot操作多数据源(JPA+JdbcTemplate)

    本篇文章将探讨如何在Spring Boot中利用JPA(Java Persistence API)和JdbcTemplate来实现多数据源的管理,同时使用HikariCP作为高效的数据源连接池。 首先,让我们理解一下关键概念: 1. **Spring Boot**: 它是...

    spring3+springmvc+jpa+hibernate多数据源

    3. **JPA实体配置**:针对每个数据源,创建相应的实体类和映射文件,定义它们与数据库表的关系。 4. **数据源切换**:在服务层或DAO层,根据业务逻辑选择合适的数据源,可能需要自定义拦截器或AOP切面来实现。 5. **...

    springboot-多数据源配置 -mybatis-jpa

    Spring Boot提供了灵活的方式来配置这些数据源,结合MyBatis和JPA,可以构建出高效的数据访问层。下面我们将深入探讨如何在Spring Boot项目中实现多数据源配置,并结合MyBatis和JPA进行数据操作。 首先,理解多数据...

    各种数据源配置之Spring+JPA配置BoneCP数据源

    总结起来,配置Spring+JPA与BoneCP数据源涉及的关键知识点包括:Spring框架、JPA、BoneCP连接池、数据库驱动、依赖管理、Spring配置、实体类、Repository接口以及Spring Boot的启动配置。理解并熟练掌握这些知识点,...

    springboot多数据源配置

    总之,Spring Boot的多数据源配置涉及多个层面,包括依赖管理、配置类、数据源对象创建、JPA实体管理工厂、事务管理器以及业务代码中的数据源选择。通过合理配置,我们可以轻松地实现对多个数据库的管理和操作。

    SpringBoot+gradle+mybatis多数据源动态配置

    本项目结合了SpringBoot、Gradle和MyBatis,旨在实现多数据源的动态配置,这对于处理多个数据库或者分库分表的场景尤其有用。以下是对这个项目的详细解析: **SpringBoot** SpringBoot是由Pivotal团队提供的全新...

    springboot+jpa配置多数据源.zip

    首先,`springboot+jpa配置多数据源.zip`这个压缩包可能包含了一个示例项目,用于演示如何在Spring Boot中集成JPA并配置多个数据源。JPA是Java平台上的ORM(Object-Relational Mapping)标准,它简化了与关系型...

    SpringBoot+Atomikos+动态多数据源+事务+2种切换数据源的方式

    3. **事务管理**:SpringBoot默认使用LocalContainerEntityManagerFactoryBean处理JPA事务,但在多数据源环境中,需要改为使用Atomikos的`JtaPlatformTransactionManager`。此外,确保开启@...

    SpringBoot+JPA+JTA(可选)+JdbcTemplate多数据源配置源码

    本资源包含了两个子项目,分别进行了springboot+jpa+jdbcTemplate的多数据源独立事务配置和jta分布式事务配置,并针对不同的情况编写了事务配置测试接口,还演示了JPA的domain一对多自动生成数据库表且不生成数据库...

    springboot+mysql+jpa多数据源操作源码

    本项目"springboot+mysql+jpa多数据源操作源码"旨在提供一个示例,帮助开发者了解如何在Spring Boot环境中配置和管理多个数据源。 首先,我们需要理解Spring Boot的自动配置特性。Spring Boot通过`@...

    SpringMVC配置多数据源实战

    在SpringMVC框架中配置多数据源是一项常见的需求,尤其在大型企业级应用中,由于业务的复杂性,往往需要连接不同的数据库以满足不同模块的需求。以下将详细讲解如何实现这一功能。 首先,理解数据源(DataSource)...

    java+hibernate双数据源配置

    双数据源配置是指在一个应用中同时管理两个或更多的数据源,每个数据源可以连接到不同的数据库。在SpringBoot框架中,我们通常会使用`@ConfigurationProperties`注解来配置数据源,并通过`@Primary`注解指定默认数据...

    spring boot多数据源配置

    在Spring Boot应用中,多数据源配置是一项关键的技术,它允许我们同时管理多个数据库,比如主库和从库,或者不同类型的数据库。本教程将详细阐述如何在Spring Boot项目中实现这一功能,从数据源配置、实体管理到...

    SpringBoot实现动态切换数据源(含源码)

    在实际应用中,我们需要在Spring Boot的配置文件(`application.yml`或`application.properties`)中定义多个数据源,然后在`@Configuration`类中配置`DynamicDataSource`,使其能够根据业务逻辑动态选择数据源。...

Global site tag (gtag.js) - Google Analytics