sql防注入形式,动态添加查询条件参数

/**

*

* 根据输入值查询出教师信息

* @param sort

* @param page

* @param countPerPage

* @param teacherName 教师名称

* @param teacherWorkUnit 工作单位

* @param teacherState 教师状态

* @param fieldName

* @param fieldId

* @param status

* @return

*/

public PaginationSupport findTeacherList(LinkedHashMap<String, String> sort,int page, int countPerPage,String teacherName,String teacherPosition, String teacherWorkUnit,String fieldName, Integer teacherState,String teaImport,Long fieldId,Integer status,String theme) {

String hql = "select distinct ti from SysTeaTeactherInfo ti " +

" left join ti.sysTeaProfFields pf " +

" left join ti.sysEduCourseInfos ci " +

" where 1=1 ";

// " and ti.teacherName like :teacherName " +

// " and ti.teacherPosition like :teacherPosition " +

// " and ti.teacherWorkUnit like :teacherWorkUnit ";

List<String> pn = new ArrayList<String>();

List pv = new ArrayList();

if (StringUtil.isNotEmpty(teacherName) && !teacherName.trim().equals("")) {

hql+=" and ti.teacherName like :teacherName ";

pn.add("teacherName");

pv.add("%"+teacherName.trim()+"%");

}

if (StringUtil.isNotEmpty(teacherPosition) && !teacherPosition.trim().equals("")) {

hql+=" and ti.teacherPosition like :teacherPosition ";

pn.add("teacherPosition");

pv.add("%"+teacherPosition.trim()+"%");

}

if (StringUtil.isNotEmpty(teacherWorkUnit) && !teacherWorkUnit.trim().equals("")) {

hql+=" and ti.teacherWorkUnit like :teacherWorkUnit ";

pn.add("teacherWorkUnit");

pv.add("%"+teacherWorkUnit.trim()+"%");

}

if (StringUtil.isNotEmpty(theme) && !theme.trim().equals("")) {

hql+=" and ti.courseTheme like :theme ";

pn.add("theme");

pv.add("%"+theme.trim()+"%");

}

if (null!=fieldId) {

hql +=" and concat(',',trim(str(pf.fieldId)),',',pf.fieldFatherStr) like "+"'%,"+fieldId.toString()+",%'";

}

//领域作为条件查询教师

if (null!=fieldName) {

if (!fieldName.trim().equals("")) {

hql+=" and pf.fieldName like "+"'%"+fieldName.trim()+"%'";

}

}

//下拉框中选择的教师状态

if (null!=teacherState) {

hql+=" and ti.teacherState = "+ teacherState +"";

}

//复选框勾选重点教师

if (null!=teaImport) {

hql+=" and ti.teacherImportant = "+ IMPORTANT_TEACHER +"";

}

//点击右边不同教师库,传进来的状态

if (null!=status) {

hql+=" and ti.teacherState = "+ status +"";

}

if(sort!=null && sort.size()>0){

String order = addOrder(sort);

if(order!=null && order!=""){

hql+=" order by "+order;

}

}else{

hql+=" order by ti.teacherPoint desc , ti.updateTime desc";

}

String[] pns = new String[pn.size()];

String[] arr = pn.toArray(pns);

Object[] obj = pv.toArray();

// if (StringUtil.isNotEmpty(theme) && !theme.trim().equals("")) {

// return this.findByHqlOnPage(hql, page, countPerPage,new String[]{"teacherName","teacherPosition","teacherWorkUnit","theme"},new Object[]{"%"+(StringUtil.isEmpty(teacherName)?"":teacherName.trim())+"%","%"+(StringUtil.isEmpty(teacherPosition)?"":teacherPosition.trim())+"%","%"+(StringUtil.isEmpty(teacherWorkUnit)?"":teacherWorkUnit.trim())+"%","%"+(StringUtil.isEmpty(theme)?"":theme.trim())+"%"});

// }else {

// return this.findByHqlOnPage(hql, page, countPerPage,new String[]{"teacherName","teacherPosition","teacherWorkUnit"},new Object[]{"%"+(StringUtil.isEmpty(teacherName)?"":teacherName.trim())+"%","%"+(StringUtil.isEmpty(teacherPosition)?"":teacherPosition.trim())+"%","%"+(StringUtil.isEmpty(teacherWorkUnit)?"":teacherWorkUnit.trim())+"%"});

// }

return this.findByHqlOnPage(hql, page, countPerPage, arr, obj);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值