今天在使用hibernate的时候想使用hql实现两个String类型的字段相减报错,所以改用sql语句来实现,以下是连接sql语句的方法:
public List findBySql(final String sql){
List list = null;
try {
Session session = getSession();
Query querys = session.createSQLQuery(sql);
list = querys.list();
} catch (DataAccessResourceFailureException e) {
e.printStackTrace();
} catch (HibernateException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
}
return list;
}
而且在使用Hql语句的时候使用union all也无法实现,改用sql就可以了。
public List findBySql(final String sql){
List list = null;
try {
Session session = getSession();
Query querys = session.createSQLQuery(sql);
list = querys.list();
} catch (DataAccessResourceFailureException e) {
e.printStackTrace();
} catch (HibernateException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
}
return list;
}
而且在使用Hql语句的时候使用union all也无法实现,改用sql就可以了。