发表于: 2017-09-22 23:53:21
1 739
今天完成的任务
写作业
1.学习了如何判断mybait的删除更改语句是否生效
一个比较简单的判断方法(单次调用),是在接口直接声明int属性的接口。
@Delete("delete from student where id= #{id}")
public int del(Category category);//删除
这样在方法中会直接返回0失败,1sql语句使用成功。
categoryMapper.del(category)
但是根据mybatis的官方文件(这我也不知道是不是真的):If the BATCH executor is in use, the update counts are being lost
这种方法对批量处理sql语句很容易失败。
2.#{} ${},因为这是我临睡前学会的,故而没有在作业里书写
从理论上来说
#{id}的方式在注入到sql语句是以“id”的形式注入的,在某一方面很大程度提高了防止其它途径对其的注入
而${id}是以 id的形式注入到sql语句里面的,很容易被其它方式更改
一般而言${}可以用于对sql语句中对表名进行修改,即如下图
即通过#{} ${}分别对表名进行修改,在log4j检测到生成的语句分别是
#{} :
select * from "student"
${}:
select *from student
故而表名只可以用${}
下附#{} ${}在实际代码中的写法
category.setListDate("student")
@Insert("insert into ${ListDate} ( id,home,no,EntranceTime,name,sex,age,qq,school,city,motto) values (#{id},#{home},#{no},#{EntranceTime},#{name},#{sex},#{age},#{qq},#{school},#{city},#{motto})")
明天要做的事 如果作业没什么问题我想开始入手任务二,作业有问题改作业
今天稍微有点忙,学的东西不算很多
遇到的问题
收获
评论