首页 > 代码库 > MyBatis 智能标签

MyBatis 智能标签

使用Where 只能标签 检索部门Y2162Dept

数据库已存在表Y2162Dept
技术分享

 

实现动态查询

Deptno Deptname
赋值                   不赋值
不赋值                  赋值
赋值                   赋值
不赋值                   不赋值

<!-- 使用Where 智能标签实现动态查询 --><select id="selectDeptDynamic" parameterType="cn.happy.entity.Dept" resultType="cn.happy.entity.Dept"> select * from Y2162dept <where> <if test="deptno!=null"> and deptno=#{deptno} </if> <if test="deptname!=null"> and deptname=#{deptname} </if> </where> </select>

 

//智能标签where 动态查询    @Test    public  void dynamicWhereTest() throws Exception{        Dept dept=new Dept();              //dept.setDeptname("财务部");        //dept.setDeptno(3);                        List<Dept> list=session.selectList("selectDeptDynamic",dept);        for (Dept dt : list) {            System.out.println(dt.getDeptname());        }        session.close();    } 

运行结果:

技术分享

使用set智能标签修改数据

<!-- 智能标签set --><update id="UpdateDept" parameterType="cn.happy.entity.Dept">Update Y2162Dept <set><if test="deptno!=null">            deptno=#{deptno},          </if>          <if test="deptname!=null">            deptname=#{deptname},          </if></set>     where deptno=#{deptno}</update>
//使用智能标签set 修改数据    public void updateTest(){        Dept dt=new Dept();        dt.setDeptno(45);        dt.setDeptname("月饼不");        int count = session.update("UpdateDept",dt);        session.commit();        System.out.println(count);        session.close();                    }

 

MyBatis 智能标签