sql向mysql数据库迁移,分页出现问题,报的应该是 关键字错误,但是死活发现不了
错误: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '15 dpt0_.Id as Id5_, dpt0_.text as text5_, dpt0_.url as url5_, dpt0_.parentId as' at line 1
数据库 mysql
hibernate 方法
public List findPageByQuery(final String queryString,final Object[] parameters, final PageInfo pageInfo) {
return getHibernateTemplate().executeFind(new HibernateCallback(){
public Object doInHibernate(Session session)throws HibernateException, SQLException{
Query query = session.createQuery("from Dpt");
query.setMaxResults(15);
query.setFirstResult(0);
return query.list();
}
});
}
[最优解释]
hibernate配置文件里
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>这句有没有
[其他解释]
LZ,你发表的另外一个帖子有回复,你去看看,是否对你有帮助,也是这个问题的!
[其他解释]
支持一下楼主!
[其他解释]
LZ,建议你看看自己的配置文件,对象Dpt和你的hibernate配置文件的列,属性是否一致!
[其他解释]
<hibernate-mapping>
<class name="org.heb.lib.sms.model.Dpt" table="dpt">
<id name="id" type="java.lang.Integer">
<column name="Id" />
<generator class="native" />
</id>
<property name="text" type="java.lang.String">
<column name="text" length="500" />
</property>
<property name="url" type="java.lang.String">
<column name="url" length="500" />
</property>
<property name="parentId" type="java.lang.Integer">
<column name="parentId" />
</property>
<property name="cls" type="java.lang.String">
<column name="cls" length="50" />
</property>
<property name="leaf" type="java.lang.Integer">
<column name="leaf" />
</property>
<property name="code" type="java.lang.String">
<column name="code" length="50" />
</property>
</class>
</hibernate-mapping>
[其他解释]
package org.heb.lib.sms.model;
import java.util.HashSet;
import java.util.Set;
/**
* Dpt entity. @author MyEclipse Persistence Tools
*/
public class Dpt implements java.io.Serializable {
// Fields
private Integer id;
private String text;
private String url;
private Integer parentId;
private String cls;
private Integer leaf;
private String code;
// Constructors
/** default constructor */
public Dpt() {
}
/** full constructor */
public Dpt(String text, String url, Integer parentId, String cls,
Integer leaf, String code) {
this.text = text;
this.url = url;
this.parentId = parentId;
this.cls = cls;
this.leaf = leaf;
this.code = code;
}
// Property accessors
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
public String getText() {
return this.text;
}
public void setText(String text) {
this.text = text;
}
public String getUrl() {
return this.url;
}
public void setUrl(String url) {
this.url = url;
}
public Integer getParentId() {
return this.parentId;
}
public void setParentId(Integer parentId) {
this.parentId = parentId;
}
public String getCls() {
return this.cls;
}
public void setCls(String cls) {
this.cls = cls;
}
public Integer getLeaf() {
return this.leaf;
}
public void setLeaf(Integer leaf) {
this.leaf = leaf;
}
public String getCode() {
return this.code;
}
public void setCode(String code) {
this.code = code;
}
}
[其他解释]
配置文件,没有错误吧
而且就是 一个 查询,from dpt 为什么会报错呢
而且在sql 底下就没事,为什么
[其他解释]
恩,配置没错。
public List<InvoiceAll> getList(final String hql, final String start, final String limit) {
getHibernateTemplate().execute(new HibernateCallback() {
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
Query q = session.createQuery(hql);
q.setFirstResult(Integer.parseInt(start));
q.setMaxResults(Integer.parseInt(limit));
list = q.list();
return list;
}
});
return list;
}