第一部分:
①SQL与代码分离
②用标签控制动态SQL的拼接
③结果集与Java对象的自动映射(resultMap)
④编写原生SQL
第二部分
通过sqlsession执行SQL语句:
messageList = sqlsession.selectList("Message.queryMessageList",message);
(命名空间,与sql关联的id,传入的参数,返回值)———–》有风险
面向接口编程:接口作为Message配置文件的代言人
①命名空间:包名.类名是固定的
②sql语句:和id相对应的方法
③参数的类型:方法中参数的类型
④返回值类型:方法返回值类型
IMessage imessage = sqlsession.getMapper(IMessage.class);
messageList = imessage.queryMessageList(message);
第三部分
分页功能:
封装共通代码:HTML中的js和上一页,下一页,用自定义标签来封装
mybatis中用拦截器实现分页功能
第四部分
批量新增:
Jdbc中:最原始的方法插入n条记录,执行n遍sql语句
改善版:将要插入的内容放入集合中,用addBatch
for(CommandContent content : contentList){
statement.setString(1,content.getContent());
statement.setString(2,content.getCommandId());
statement.addBatch();
}
statement.executeBatch();
Mybatis中:只需用逗号隔开即可
insert into COMMAND_CONTENT(CONTENT,COMMANDID) values("哈哈",1),("哈哈2",2);