我是楼主 上面报错,我是选取的比较重要的两行org.hibernate.hql.ast.QuerySyntaxException: unexpected token: member near line 1, column 6 [from member where name=1] 和at hibenate.DbOperate.getMember(DbOperate.java:20)详细报错如下:
00:35:17,984 ERROR PARSER:33 - line 1:6: unexpected token: member
00:35:18,000 ERROR [LoginAction]:260 - Servlet.service() for servlet LoginAction threw exception
org.hibernate.hql.ast.QuerySyntaxException: unexpected token: member near line 1, column 6 [from member where name=1]
at org.hibernate.hql.ast.QuerySyntaxException.convert(QuerySyntaxException.java:31)
at org.hibernate.hql.ast.QuerySyntaxException.convert(QuerySyntaxException.java:24)
at org.hibernate.hql.ast.ErrorCounter.throwQueryException(ErrorCounter.java:59)
at org.hibernate.hql.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:258)
at org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:157)
at org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:111)
at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:77)
at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:56)
at org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:72)
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:1623)
at hibenate.DbOperate.getMember(DbOperate.java:20)
at servlet.LoginAction.doPost(LoginAction.java:41)
at servlet.LoginAction.doGet(LoginAction.java:17)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
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(Unknown Source)

解决方案 »

  1.   

    member 要同你的类名相同.
    类名一般都是大写开头.
    我想应该是这里错了
    改成 
    from Member where name="+name
    应该就可以了
      

  2.   


    如果是写sql,那么直接写表名,如果是写HQL,那么需要写的是映射类的名字,字段也要换成映射的属性名字
      

  3.   

    ("from Member where name='"+name+"')
      

  4.   

    我是楼主  谢谢楼上各位大侠 问题已经完美解决了 结帖了
    楼上的代码多了个引号哟 因该是 Query query=session.createQuery("from Member where name='+name+'")