栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

SQLGrammarException:无法执行查询

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SQLGrammarException:无法执行查询

SQLGrammarException
之所以引发,是因为Hibernate生成的SQL查询的SQL语法错误。构建查询的方式是错误的,不应将值(尤其是字符串值)连接到结果查询,因为此类代码容易受到SQL注入攻击的攻击。相反,您可以在查询字符串中使用参数

String empId = p.getEmpId();String paramValue = "";if (empId !=null && !empId.isEmpty())    paramValue = " where b.empId=:empId";String empName = p.getEmployeeName();if (empName !=null && !empName.isEmpty()) {    if (paramValue == "")     paramValue =" where b.employeeName=:empName";    else     paramValue =paramValue + " and b.employeeName=:empName"; }       System.out.println("=========paramvalues===="+paramValue);Query query = session.createQuery("from RequestBean b"+paramValue);//now set parameter valuesif(empId !=null && !empId.isEmpty())  query.setParameter("empId", empId);if(empName !=null && !empName.isEmpty())  query.setParameter("empName", empName);recList = (List<RequestBean>) query.list();


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/452259.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号