`
xiao_yi
  • 浏览: 411248 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Hibernate连接SQL驱动与HQL问题

阅读更多

 第一个错误:

java.lang.NoClassDefFoundError: com/microsoft/jdbc/base/BaseDriver
 java.lang.ClassLoader.defineClass1(Native Method)
 java.lang.ClassLoader.defineClass(ClassLoader.java:620)
 java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
 org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1812)
 org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:866)
 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1319)
 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1198)
 java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
 java.lang.Class.forName0(Native Method)
 java.lang.Class.forName(Class.java:164)

解决方案:WEB-INF/lib目录导入工程所有的驱动包.

第二错误:

java.lang.NullPointerException
 at org.hibernate.hql.ast.ParameterTranslationsImpl.getNamedParameterExpectedType(ParameterTranslationsImpl.java:63)
 at org.hibernate.engine.query.HQLQueryPlan.buildParameterMetadata(HQLQueryPlan.java:245)
 at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:95)
 at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:54)
 at org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:71)
 at org.hibernate.impl.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:133)
 at org.hibernate.impl.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:112)
 at org.hibernate.impl.SessionImpl.createQuery(SessionImpl.java:1583)
 at jbedu.com.struts.action.LoginAction.execute(LoginAction.java:72)
 at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
 at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
 at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
 at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
 at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
 at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
 at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
 at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
 at java.lang.Thread.run(Thread.java:595)

错误原因:HQL 不能解析

解决方案: 

//String myHql = "from Users u where u.username =: name and u.password =: pwd";    --错误的HQL
  String myHql = "from Users u where u.username =:name and u.password =:pwd";      --正确的HQL

分享到:
评论

相关推荐

    hibernate 连接sqlserver2000

    标题 "Hibernate 连接 SQLServer2000" 暗示了我们将探讨如何使用流行的Java ORM框架Hibernate与较老版本的SQL Server数据库——SQL Server 2000进行交互。在Java应用程序开发中,Hibernate提供了对象关系映射功能,...

    使用hibernate对sqlserver 2005进行增删改查

    在这个场景中,我们将探讨如何使用Hibernate与SQL Server 2005数据库进行基本的CRUD(Create、Read、Update、Delete)操作。 首先,我们需要确保引入了Hibernate的依赖库。从描述中的“Hibernate 所需要的 jar 包”...

    hibernate连接DB2驱动包

    标题中的“hibernate连接DB2驱动包”指的是在Java应用程序中使用Hibernate ORM框架与IBM的DB2数据库进行交互时所需的驱动程序包。这些驱动包是连接Java应用程序和DB2数据库之间的桥梁,允许数据的存取和操作。下面将...

    Struts 1.1、Hibernate 3.0和SQL Server 2005数据库驱动包

    而"sqljdbc.jar"正是用于连接SQL Server 2005的JDBC驱动程序,将其添加到项目的类路径中,就可以通过Java代码与SQL Server 2005数据库进行通信。 在实际项目开发中,这三者结合使用能够构建出强大的Web应用。Struts...

    使用Hibernate访问sqlserver数据库

    1. **添加依赖**: 首先,我们需要在项目中引入Hibernate和SQL Server驱动的依赖。通常在Maven或Gradle项目中,这会体现在pom.xml或build.gradle文件中。对于SQL Server,需要引入`com.microsoft.sqlserver`的`mssql-...

    监控sql输出-可以查看hql转成sql的结果值

    标题中的“监控SQL输出-可以查看HQL转成SQL的结果值”指的是在使用HQL(Hibernate Query Language)进行数据库操作时,如何通过某些工具或手段来观察这些高级查询语句被转换成底层数据库能理解的SQL语句的过程,并对...

    HIbernate免注解实现操作数据库 及Hibernate3连接SQL的BUG解决办法

    本篇将深入探讨如何在Hibernate中实现数据库操作而无需使用注解,以及如何解决在Hibernate 3中遇到的连接SQL的常见问题。 首先,让我们了解在Hibernate中免注解实现数据库操作的基本步骤: 1. **配置Hibernate**: ...

    Hibernate驱动包

    这款最新的Hibernate驱动包包含了所有必要的组件,使得开发者能够更高效、更便捷地与各种数据库进行交互。 在Java开发中,Hibernate通过提供一个中间层,将应用程序的数据模型与数据库的表结构进行映射,从而消除了...

    hibernate所需驱动

    6. **HQL和 Criteria API**:Hibernate提供了自己的查询语言HQL(Hibernate Query Language),类似于SQL,但更面向对象。此外,Criteria API则提供了一种类型安全的方式来构建动态查询,无需直接编写SQL。 7. **...

    sql2000与sql2005的hibernate-configuration

    标题“sql2000与sql2005的hibernate-configuration”涉及的是在Hibernate框架中配置SQL Server 2000和2005数据库的过程。Hibernate是一个流行的Java对象关系映射(ORM)工具,它允许开发人员用Java对象来操作数据库...

    struts+hibernate+sql server2005分页的小项目

    由于Hibernate支持SQL Server 2005,因此我们可以通过HQL(Hibernate Query Language)或者原生SQL来实现分页查询。 **4. 分页实现** 在本项目中,分页通常包含以下步骤: - **计算总记录数**:使用Hibernate的...

    Hibernate使用中防止SQL注入的几种方案

    在使用Hibernate进行数据库操作时,虽然它提供了便捷的ORM(对象关系映射)功能,但同时也需要关注SQL注入的安全问题。SQL注入是一种常见的攻击手段,攻击者可以通过输入恶意的SQL语句来篡改数据库信息,严重威胁...

    hibernate和MySQL的jar

    7. **JDBC驱动**: MySQL的JDBC驱动(如mysql-connector-java.jar)是连接Hibernate与MySQL数据库的关键。它提供了Java应用程序与MySQL服务器通信的桥梁。 8. **事务管理**: Hibernate支持事务管理,可以使用`...

    hibernate的HQL的jar

    在压缩包的文件名称列表中,"mysql"可能指的是MySQL的驱动jar,因为Hibernate需要数据库驱动来连接特定的数据库。而"hibernate3"则表示这是Hibernate 3.x版本的库文件。在Hibernate 3中,引入了对HQL的广泛支持,...

    Hibernate连接MSSQL2000实例

    【标题】:“Hibernate连接MSSQL2000实例”是一个关于如何在Java应用程序中使用Hibernate框架与Microsoft SQL Server 2000数据库进行交互的教程。这个实例旨在简化初学者的学习过程,避免他们在配置上花费过多的时间...

    hibernate连接Access应用项目例子

    在本项目中,“hibernate连接Access应用项目例子”展示了如何使用Hibernate ORM框架与Microsoft Access数据库进行集成,实现数据的增、删、改、查(CRUD)操作。Hibernate是Java开发中的一个流行ORM(对象关系映射)...

    Hibernate不同数据库的连接及SQL方言.pdf

    当Hibernate配置中的方言设置不正确时,可能会导致各种问题,比如SQL语句无法正确执行。在示例错误信息中提到的“Caused by: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]'last_...

    Hibernate中连接MySql所需的jar包

    3. Query和Criteria:这些是执行SQL查询的API,允许开发者通过HQL(Hibernate查询语言)或Criteria API来检索数据。 接下来,`mysqljdbc.jar`(通常被称为`mysql-connector-java`)是MySQL官方提供的Java数据库连接...

    Hibernate与HQL

    HQL与SQL的最大区别在于它处理的是对象,而不是表格,这使得代码更加可读且易于维护。 总的来说,Hibernate结合HQL为Java开发者提供了一种高效、灵活的数据库操作方式,大大降低了数据层的复杂性。在实际项目中,...

    Hibernate连接ACCESS

    每个操作都会涉及到Session的打开、事务的管理、执行HQL(Hibernate查询语言)或SQL以及最后的提交或回滚。 5. **整合Struts2**:在Struts2的Action类中,注入DAO,然后在业务逻辑方法中调用DAO进行数据操作。记得...

Global site tag (gtag.js) - Google Analytics