第一个问题 2个submit2个action
如果想在一个表单中 同时设置两个submit,比如 添加 和查询, 那么自然得设置 2个action,但其实不用设置两个action
只需要通过button设置即可
这种情况弃用 submit标签
<form name="form1" action=" ">
而是 <input type="button" onclick=" document.form1.action='第一个url地址' ;document.form1.submit() ">
<input type="button" onclick=" document.form1.action='第2个url地址' ;document.form1.submit() ">
这样就可以实现了表格的复用 ,一张表单因为 提交button的设置,实现了2个功能,添加和查询, 另外,这样说吗在一个html或JavaScript页面中,是可以通过
document.标签名name属性的方式获得这个标签元素的。
另外,为了实现 hibernateTemplate 多条件组合查询,以及模糊查询, 我采取了以下方式,
其中注意2点,怎样进行 多条件复合查询的 HQL 语句设置,怎样随机不同条件的语句连接, 最初的 from tablename where 1=1 这句默认是在是充满了前辈们的智慧;
另外,如果是模糊查询,无法使用 ? 占位符的方式,反正我用不成功,而且也没必要使用,直接 通过 + 变量名 来书写 HQL语句即可,
但特别注意,模糊查询 的 %景% 之外 ,必须加上单引号‘ ’ ,必须写成这样 ‘ %景% ’ 才可正常运行。
public List<Emp> query(Emp emp) {//…………………………………………查询
List<Emp> list;
System.out.println("bbbbbbbbbbbbbbbbbbb");
ArrayList alist = new ArrayList();
String hql= "from Emp where 1=1";
if(emp.getAge().length()>0) //年龄
{
hql=hql+" and age=?";//? 占位符 是不可以外加 ‘ ’ 引号或双引号的
alist.add(emp.getAge());
}
if(emp.getEname().length()>0) //姓名
{
hql=hql+" and ename like '%"+emp.getEname().trim()+"%' ";// 但是,和?占位符不同, %景% 模糊查询符号之外,必须加上 单引号 ‘ ’
//模糊查询 的 ‘ %景% ’ 之外要多加个单引号,还要注意除空
}
if(emp.getDname().length()>0) //部门
{
hql=hql+" and Dname like '%"+emp.getDname().trim()+"%'";
}