Java Hibernate HQL出错-意外令牌: ***导入org.hibernate.Query*** String hql=“FROM:className其中userCreate-like”:userName'; Query=session.createQuery(hql); query.setParameter(“className”,className); query.setParameter(“用户名”,用户名); 列表结果=query.List();
还有一个错误Java Hibernate HQL出错-意外令牌: ***导入org.hibernate.Query*** String hql=“FROM:className其中userCreate-like”:userName'; Query=session.createQuery(hql); query.setParameter(“className”,className); query.setParameter(“用户名”,用户名); 列表结果=query.List();,java,hibernate,annotations,hql,Java,Hibernate,Annotations,Hql,还有一个错误 ***import org.hibernate.Query;*** String hql = "FROM :className WHERE userCreate like ':userName'"; Query query = session.createQuery(hql); query.setParameter("className", className); query.setParameter("userName", userName); List<Node>
***import org.hibernate.Query;***
String hql = "FROM :className WHERE userCreate like ':userName'";
Query query = session.createQuery(hql);
query.setParameter("className", className);
query.setParameter("userName", userName);
List<Node> result = query.list();
org.hibernate.hql.internal.ast.QuerySyntaxException:意外标记::第1行第6列附近[发件人:className WHERE userCreate like':userName']
位于org.hibernate.hql.internal.ast.QuerySyntaxException.convert(QuerySyntaxException.java:91)
位于org.hibernate.hql.internal.ast.ErrorCounter.throwQueryException(ErrorCounter.java:109)
位于org.hibernate.hql.internal.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:304)
位于org.hibernate.hql.internal.ast.QueryTranslatorImpl.docomFile(QueryTranslatorImpl.java:203)
位于org.hibernate.hql.internal.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:158)
在org.hibernate.engine.query.spi.HQLQueryPlan.(HQLQueryPlan.java:126)
在org.hibernate.engine.query.spi.HQLQueryPlan.(HQLQueryPlan.java:88)
位于org.hibernate.engine.query.spi.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:167)
位于org.hibernate.internal.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:301)
位于org.hibernate.internal.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:236)
位于org.hibernate.internal.SessionImpl.createQuery(SessionImpl.java:1800)
位于com.SDC.DAO.DAOFileAndFolderService.findUserCreteFileOrFolder(DAOFileAndFolderService.java:36)
位于com.SDC.View.Main.Main(Main.java:57)
线程“main”java.lang.NullPointerException中出现异常
在com.SDC.View.Main.Main(Main.java:58)中,不能对Hibernate查询使用命名参数。您可以通过手动将表名附加到hql字符串中来解决这个问题。您的代码将改为如下所示:
org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: : near line 1, column 6 [FROM :className WHERE userCreate like ':userName']
at org.hibernate.hql.internal.ast.QuerySyntaxException.convert(QuerySyntaxException.java:91)
at org.hibernate.hql.internal.ast.ErrorCounter.throwQueryException(ErrorCounter.java:109)
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:304)
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:203)
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:158)
at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:126)
at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:88)
at org.hibernate.engine.query.spi.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:167)
at org.hibernate.internal.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:301)
at org.hibernate.internal.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:236)
at org.hibernate.internal.SessionImpl.createQuery(SessionImpl.java:1800)
at com.SDC.DAO.DAOFileAndFolderService.findUserCreteFileOrFolder(DAOFileAndFolderService.java:36)
at com.SDC.View.Main.main(Main.java:57)
String hql=“FROM”+className+,其中userCreate-like':userName';
Query=session.createQuery(hql);
query.setParameter(“用户名”,用户名);
列表结果=query.List();
是的。谢谢你的回答
String hql = "FROM " + className + " WHERE userCreate like ':userName'";
Query query = session.createQuery(hql);
query.setParameter("userName", userName);
List<Node> result = query.list();