Hibernate org.Hibernate.exception.sqlgrammareexception

Hibernate org.Hibernate.exception.sqlgrammareexception,hibernate,Hibernate,我正在使用Hibernate和Struts2创建登录页面。在下面的代码中,我试图从LoginTable获取数据,其中用户名和密码是两个动态变量 String hql = "from LoginTable as log where log.userId=:userName and log.password=:passw"; Query query = session.createQuery(hql); query.setStrin

我正在使用Hibernate和Struts2创建登录页面。在下面的代码中,我试图从LoginTable获取数据,其中用户名和密码是两个动态变量

          String hql = "from LoginTable as log where log.userId=:userName and     log.password=:passw";
          Query query = session.createQuery(hql);
          query.setString("userName", userName);
          query.setString("passw", passw);
          List result = query.list();
登录代码:

            import javax.persistence.Column;
            import javax.persistence.Entity;
            import javax.persistence.GeneratedValue;
            import javax.persistence.Id;
            import javax.persistence.Table;

            @Entity
            @Table(name="user_details")
            public class LoginTable {  
              @Id
              @GeneratedValue
              private int id;
              @Column(name="user_id")
              private String userId;

              @Column(name="password")
              private String password;

              @Column(name="user_nm")
              private String userName;

              @Column(name="designation")
              private String designation;

              @Column(name="email")
              private String email;

              @Column(name="mobile")
              private String mobile;

              @Column(name="user_privilege")
              private String userPriviledge;

              @Column(name="first_login")
              private String firstLogin;

              @Column(name="password_status")
              private String passwordStatus;

              public String getUserId() {
                return userId;
              }

              public void setUserId(String userId) {
                this.userId = userId;
              }

              public String getPassword() {
                return password;
              }

              public void setPassword(String password) {
                this.password = password;
              }

              public String getUserName() {
                return userName;
              }

              public void setUserName(String userName) {
                this.userName = userName;
              }

              public String getDesignation() {
                return designation;
              }

              public void setDesignation(String designation) {
                this.designation = designation;
              }

              public String getEmail() {
                return email;
              }

              public void setEmail(String email) {
                this.email = email;
              }

              public String getMobile() {
                return mobile;
              }

              public void setMobile(String mobile) {
                this.mobile = mobile;
              }

              public String getUserPriviledge() {
                return userPriviledge;
              }

              public void setUserPriviledge(String userPriviledge) {
                this.userPriviledge = userPriviledge;
              }

              public String getFirstLogin() {
                return firstLogin;
              }

              public void setFirstLogin(String firstLogin) {
                this.firstLogin = firstLogin;
              }

              public String getPasswordStatus() {
                return passwordStatus;
              }

              public void setPasswordStatus(String passwordStatus) {
                this.passwordStatus = passwordStatus;
              }  
            }
但是在执行了上面的代码之后,我得到了下面的异常。 org.hibernate.exception.sqlgrammareexception:无法执行查询


只有我得到的SQLGrammarException

这个查询没有错。张贴完整的stacktrace以识别问题。同时分享登录类的代码。请发布完整的stacktrace。谢谢您的帮助。我得到了确切的问题。现在我可以解决这个问题了。