小编use*_*090的帖子

捕获休眠异常 SqlExceptionHelper

当列与数据库列不匹配时,我们在日志中收到异常如下行。但它没有抛出异常。我什至保留了 try catch。我怎样才能捕捉到异常?

警告 2015-11-04 17:25:44,055 [http-apr-8080-exec-4][SqlExceptionHelper.java:144]:SQL 错误:904,SQLState:42000 错误 2015-11-04 17:25:44,055 http-apr-8080-exec-4][SqlExceptionHelper.java:146]:ORA-00904:“SH_RATE_DESCRIPTIO”:无效的标识符

 import javax.persistence.EntityManager;
 import javax.persistence.PersistenceContext;

 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Repository;

 import com.core.model.entity.ShippingTable;

 @Repository("sTableDAO")
 public class STableDao {


 @PersistenceContext(unitName = "somaUnit")
 private EntityManager entityManager;


 public STable save(STable sTable) {    
    try{
        sTable = entityManager.merge(sTable);
    }catch(Exception e){
        e.printStackTrace();
    }
    return sTable;      
 }  
}
Run Code Online (Sandbox Code Playgroud)

hibernate jpa

7
推荐指数
1
解决办法
6979
查看次数

JPA一对多关系查询

实现了一对多关系,并且工作正常.

我的问题是当我运行以下查询时,如果该表有100个员工行,并且每个员工有2个部门.数据库查询被调用101次,因为对于每个员工来说它正在调用部门查询,完成调用所有100行需要很长时间,任何人都可以建议任何替代解决方案吗?

请参阅下面的详细信息

它正在调用的查询:

    First query is :    SELECT * FROM Employee e

    Next 100 queries : SELECT * FROM DEPARTMENT d WHERE d.EmployeeId=?
Run Code Online (Sandbox Code Playgroud)

JPA数据库调用:

    javax.persistence.Query query = em.createNamedQuery("SELECT * FROM Employee e", Employee.class);

    return query.getResultList();




    import javax.persistence.CascadeType;
    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.FetchType;
    import javax.persistence.Id;
    import javax.persistence.NamedNativeQueries;
    import javax.persistence.NamedNativeQuery;
    import javax.persistence.OneToMany;
    import javax.persistence.Table;

    @Entity
    @Table(name = "EMPLOYEE")
    public class Employee implements Serializable
    {
        @Id
        @Column(name = "EmployeeId")
        String employeeId;

        @OneToMany(mappedBy = "employee", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
        private …
Run Code Online (Sandbox Code Playgroud)

java sql hibernate jpa

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

hibernate ×2

jpa ×2

java ×1

sql ×1