SSH框架下DAO中有此方法
public List findbyDdwnameChance(String ddwname,String dspname,String qsrq,String zzrq){
Session session = this.getSession();
String hql = "SELECT distinct pf_ckmx.RIQI,DOCDSP.DSPNAME,DOCDSP.DSPSPGG,DOCDSP.JLDW AS DANWEI," +
"pf_ckmx.picih,pf_ckmx.SHUL,DOCDDW.DDWNAME,DOCDSP.SHENGCCJ,pf_ckmx.SXRQ,H.ddwname " +
"FROM pf_ckmx JOIN DOCDDW ON pf_ckmx.DDWID=DOCDDW.DDWID " +
"JOIN DOCDSP ON pf_ckmx.DSPID=DOCDSP.DSPID " +
"LEFT JOIN JH_DHMX ON pf_ckmx.DSPID=JH_DHMX.DSPID and JH_DHMX.picih=pf_ckmx.picih " +
"LEFT JOIN DOCDDW H ON h.DDWID=JH_DHMX.DDWID WHERE H.ddwname ='" + ddwname + "' ";
if(dspname != null || "".equals(dspname)){
hql += "and DOCDSP.dspname like '%" + dspname + "%' ";
}
if(qsrq != null || "".equals(qsrq)){
hql += "and pf_ckmx.RIQI >= '" + qsrq + "' ";
}
if(zzrq != null || "".equals(zzrq)){
hql += "and pf_ckmx.RIQI <= '" + zzrq + "' ";
}
Query query = session.createQuery(hql);
List list = query.list();
session.close();
return list;
}
每当执行到 List list = query.list();地方的时候就会报错
严重: Servlet.service() for servlet action threw exception
line 1:188: unexpected token: ON
at org.hibernate.hql.antlr.HqlBaseParser.fromJoin(HqlBaseParser.java:1351)
at org.hibernate.hql.antlr.HqlBaseParser.fromClause(HqlBaseParser.java:1053)
at org.hibernate.hql.antlr.HqlBaseParser.selectFrom(HqlBaseParser.java:759)
at org.hibernate.hql.antlr.HqlBaseParser.queryRule(HqlBaseParser.java:611)
at org.hibernate.hql.antlr.HqlBaseParser.selectStatement(HqlBaseParser.java:263)
at org.hibernate.hql.antlr.HqlBaseParser.statement(HqlBaseParser.java:150)
public List findbyDdwnameChance(String ddwname,String dspname,String qsrq,String zzrq){
Session session = this.getSession();
String hql = "SELECT distinct pf_ckmx.RIQI,DOCDSP.DSPNAME,DOCDSP.DSPSPGG,DOCDSP.JLDW AS DANWEI," +
"pf_ckmx.picih,pf_ckmx.SHUL,DOCDDW.DDWNAME,DOCDSP.SHENGCCJ,pf_ckmx.SXRQ,H.ddwname " +
"FROM pf_ckmx JOIN DOCDDW ON pf_ckmx.DDWID=DOCDDW.DDWID " +
"JOIN DOCDSP ON pf_ckmx.DSPID=DOCDSP.DSPID " +
"LEFT JOIN JH_DHMX ON pf_ckmx.DSPID=JH_DHMX.DSPID and JH_DHMX.picih=pf_ckmx.picih " +
"LEFT JOIN DOCDDW H ON h.DDWID=JH_DHMX.DDWID WHERE H.ddwname ='" + ddwname + "' ";
if(dspname != null || "".equals(dspname)){
hql += "and DOCDSP.dspname like '%" + dspname + "%' ";
}
if(qsrq != null || "".equals(qsrq)){
hql += "and pf_ckmx.RIQI >= '" + qsrq + "' ";
}
if(zzrq != null || "".equals(zzrq)){
hql += "and pf_ckmx.RIQI <= '" + zzrq + "' ";
}
Query query = session.createQuery(hql);
List list = query.list();
session.close();
return list;
}
每当执行到 List list = query.list();地方的时候就会报错
严重: Servlet.service() for servlet action threw exception
line 1:188: unexpected token: ON
at org.hibernate.hql.antlr.HqlBaseParser.fromJoin(HqlBaseParser.java:1351)
at org.hibernate.hql.antlr.HqlBaseParser.fromClause(HqlBaseParser.java:1053)
at org.hibernate.hql.antlr.HqlBaseParser.selectFrom(HqlBaseParser.java:759)
at org.hibernate.hql.antlr.HqlBaseParser.queryRule(HqlBaseParser.java:611)
at org.hibernate.hql.antlr.HqlBaseParser.selectStatement(HqlBaseParser.java:263)
at org.hibernate.hql.antlr.HqlBaseParser.statement(HqlBaseParser.java:150)









