2009-9-4 8:46:13 com.sun.faces.lifecycle.LifecycleImpl phase
WARNING: phase(RENDER_RESPONSE 6,com.sun.faces.context.FacesContextImpl@31e2ad) threw exception: javax.faces.el.EvaluationException: org.hibernate.hql.ast.QuerySyntaxException: Unable to locate appropriate constructor on class
[com.dz.web.ajaxbean.TransferOrderForTable] [select new com.dz.web.ajaxbean.TransferOrderForTable( oi.id, oi.customer.phone,oi.customer.custName,oi.customer.male,oi.customer.road,oi.customer.lane,oi.customer.branch,oi.customer.roadNo,oi.customer.building,oi.customer.doorNo,oi.customer.pickupPlace,oi.customer.destn, oi.expectedTime,oi.customer.remarks,oi.carCompany) from com.dz.dispatch.domain.Order oi LEFT JOIN oi.customer where oi.expectedTime>=:expectedTime and oi.orderStatus=:orderStatus and oi.carCompany in (0,1,3,4,10,11,2) order by oi.carCompany, oi.id ] org.hibernate.hql.ast.QuerySyntaxException: Unable to locate appropriate constructor on class [com.dz.web.ajaxbean.TransferOrderForTable] [select new com.dz.web.ajaxbean.TransferOrderForTable( oi.id, oi.customer.phone,oi.customer.custName,oi.customer.male,oi.customer.road,oi.customer.lane,oi.customer.branch,oi.customer.roadNo,oi.customer.building,oi.customer.doorNo,oi.customer.pickupPlace,oi.customer.destn, oi.expectedTime,oi.customer.remarks,oi.carCompany) from com.dz.dispatch.domain.Order oi LEFT JOIN oi.customer where oi.expectedTime>=:expectedTime and oi.orderStatus=:orderStatus and oi.carCompany in (0,1,3,4,10,11,2) order by oi.carCompany, oi.id ]
com.sun.faces.application.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:97)
org.offseam.application.OnLoadPhaseListener.processRule(OnLoadPhaseListener.java:311)
org.offseam.application.OnLoadPhaseListener.processOnLoad(OnLoadPhaseListener.java:265)
org.offseam.application.OnLoadPhaseListener.beforePhase(OnLoadPhaseListener.java:131)
com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:222)
com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:368)
org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:495)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:301)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
org.offseam.Filter.doFilter(Filter.java:166)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
com.dz.web.filter.ValidateFiler.doFilter(ValidateFiler.java:56)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
java.lang.Thread.run(Thread.java:595)
以上为使用EntityManager.createQuery
自动封装至自定义EntityBean时,select出来的数据类型与EntityBean的构造方式中的不符,如
select new com.dz.web.ajaxbean.TransferOrderForTable( oi.id, oi.customer.phone,oi.customer.custName,oi.customer.male,oi.customer.road,oi.customer.lane,oi.customer.branch,oi.customer.roadNo,oi.customer.building,oi.customer.doorNo,oi.customer.pickupPlace,oi.customer.destn, oi.expectedTime,oi.customer.remarks,oi.carCompany) from ....
TransferOrderForTable(long id, String PHONE, String CUSTNAME,
boolean MALE, String ROAD, String LANE, String BRANCH,
String ROADNO, String BUILDING, String DOORNO, String PICKUPPLACE,
String DESTN, Date EXPECTEDTIME, String REMARKS, long CARCOMPANY_id);
JPQL出的整型数据默认为Integer
,与long
CARCOMPANY_id不符....
而使用EntityManager.creat额NativeQuery(sql,class)时,直接报sql语句未结束,此sql与createQuery中相同,怀疑是hib的bug
分享到:
相关推荐
本文将深入探讨如何使用JPA和Spring Boot结合,实现代码自动生成工具,提高开发效率。 首先,让我们了解JPA。JPA通过提供一套标准API,使得开发者无需关注底层SQL语句,而是通过定义实体类、注解以及Repository接口...
在实际应用中,Spring Data JPA是一个基于JPA的流行框架,它扩展了JPA的功能,提供了更多的便利,如自动生成查询方法,只需定义接口,无需编写实现。Spring Data JPA的Repository接口使得开发者可以更快速地构建数据...
JPA提供了多种注解来描述实体类的属性,如`@Column`用于指定列名和数据类型,`@GeneratedValue`用于自动生成主键值,`@Temporal`用于日期时间类型,等等。例如: ```java @Entity public class User { @Id @...
Spring Data JPA是Spring框架的一个模块,它简化了Java应用程序对数据库的操作,通过提供自动的repository接口实现。在处理复杂的查询需求时,Spring Data JPA的`Specifications`接口提供了动态构建查询的能力,允许...
配置文件(如application.yml或application.properties)中,你需要设置数据源的相关信息,包括数据库URL、用户名、密码,以及JPA的配置,比如是否显示SQL语句、自动建表策略等。 分页查询是JPA的一个重要特性,...
在IT行业中,实体类是Java开发中的重要组成部分,特别是在企业级应用开发中,它们用于封装数据库中的表数据,便于业务逻辑处理。自动生成实体类是一个高效的方法,可以帮助开发者节省大量手动编写代码的时间,提高...
4. **数据访问对象(DAO)**: 使用JPA的实体管理器实现对数据库的操作,封装业务逻辑,提供CRUD(Create, Read, Update, Delete)接口。 **JPA操作示例** 在JPA中,操作数据库的基本步骤如下: 1. **创建实体**: ...
通过配置数据源、JPA供应商(如Hibernate)、实体扫描路径等,Spring Boot会自动配置并启动JPA。同时,Spring Data JPA的自动查询生成能力极大地提高了开发效率,减少了手动编写SQL的繁琐工作。 总的来说,Spring ...
JPA允许我们将数据库操作封装到Java对象中,使得我们可以使用面向对象的方式来处理数据,而无需直接编写SQL语句。 1. **对象/关系映射(ORM)** JPA的核心功能是ORM,它将Java类映射到数据库表,Java对象的属性...
本篇文章将深入探讨Spring Data JPA的封装机制及其源代码解析,帮助你更好地理解和运用这一强大的工具。 一、Spring Data JPA简介 Spring Data JPA是Spring Data项目的一部分,它旨在通过提供一个统一的编程模型来...
Spring Boot是Spring框架的一个子项目,它提供了一种快速构建和部署应用程序的方式,通过默认配置和自动配置简化了项目初始化。JPA则是一个标准,允许开发者使用Java语言进行数据库操作,避免直接编写SQL,提高了...
此外,"附带代码生成工具"是一个实用的功能,它可以自动化生成Mapper接口、Mapper XML文件、Service接口和服务实现、DAO实体类等,极大地减少了手动编码的工作量。这些工具通常基于数据库表结构,能够快速生成基础...
在Java开发过程中,实体类是模型层的重要组成部分,它们通常代表数据库中的表,用于封装数据。手动编写每个实体类不仅耗时,而且容易出错,尤其是当数据库表结构复杂或者频繁变化时。为了解决这个问题,Java提供了一...
例如,要保存一个客户到数据库,可以创建一个`Customer`实体类,使用`@Entity`注解标识,然后通过JPA的`EntityManager`接口进行操作,如`persist()`方法用于保存新对象到数据库。 总的来说,Spring Data JPA结合JPA...
Spring Data JPA 基于Repository 模式,我们定义一个接口,继承`JpaRepository` 或`PagingAndSortingRepository`,然后可以不用编写实现类,Spring Data JPA 将自动为这些接口生成实现。 5. **自定义查询** 如果...
Spring Data JPA 封装了 JPA,提供了更简单的方法来实现数据访问。通过定义 Repository 接口,Spring Data JPA 可以自动生成实现,包括CRUD操作,甚至复杂的查询方法。 在 "springMvc-jpa-blank-master" 这个项目中...
开发者只需要定义自己的Repository接口,继承Spring提供的JpaRepository或CrudRepository接口,然后Spring会自动为我们生成实现,无需编写实体类的DAO层代码。 2. **Entity**: Entity是JPA中的核心概念,代表数据库...
Spring Data JPA是Spring Data项目的一部分,它提供了对JPA的高级封装,使得我们可以用更简洁的代码进行数据库操作。通过使用Spring Data JPA,开发者可以避免编写大量的DAO层代码,如CRUD操作、复杂的查询等。它...
而 Spring Data JPA 是 Spring 框架的一个模块,它简化了数据库操作,特别是通过 Java Persistence API (JPA) 实现的实体管理和数据访问。 Spring MVC 的核心概念包括 DispatcherServlet、Controllers、Models、...
Spring Data JPA是Spring对JPA的封装,提供了更多的便利性,例如自动数据源配置、Repository接口自动实现、事务管理等。 在Spring Boot中集成JPA,我们需要以下步骤: 1. 添加JPA和数据库驱动依赖:在`pom.xml`或`...