Java的的MyBatis框架中框架中Mapper映射配置的使用及原理解析映射配置的使用及原理解析
Mapper用于映射SQL语句,可以说是MyBatis操作数据库的核心特性之一,这里我们来讨论Java的MyBatis框架中
Mapper映射配置的使用及原理解析,包括对mapper的xml配置文件的读取流程解读.
Mapper的内置方法的内置方法
model层就是实体类,对应数据库的表。controller层是Servlet,主要是负责业务模块流程的控制,调用service接口的方法,
在struts2就是Action。Service层主要做逻辑判断,Dao层是数据访问层,与数据库进行对接。至于Mapper是mybtis框架的映
射用到,mapper映射文件在dao层用。
下面是介绍一下Mapper的内置方法:
1、、countByExample ===>根据条件查询数量根据条件查询数量
int countByExample(UserExample example);
//下面是一个完整的案列
UserExample example = new UserExample();
Criteria criteria = example.createCriteria();
criteria.andUsernameEqualTo("joe");
int count = userDAO.countByExample(example);
相当于:select count(*) from user where username='joe'
2、、deleteByExample ===>根据条件删除多条根据条件删除多条
int deleteByExample(AccountExample example);
//下面是一个完整的案例
UserExample example = new UserExample();
Criteria criteria = example.createCriteria();
criteria.andUsernameEqualTo("joe");
userDAO.deleteByExample(example);
相当于:delete from user where username='joe'
3、、deleteByPrimaryKey===>根据条件删除单条根据条件删除单条
int deleteByPrimaryKey(Integer id);
userDAO.deleteByPrimaryKey(101);
相当于:
delete from user where id=101
4、、insert===>插入数据插入数据
int insert(Account record);
//下面是完整的案例
User user = new User();
//user.setId(101);
user.setUsername("test");
user.setPassword("123456")
user.setEmail("674531003@qq.com");
userDAO.insert(user);
相当于:
insert into user(ID,username,password,email) values(101,'test','123456','674531003@qq.com');
5、、insertSelective===>插入数据插入数据
int insertSelective(Account record);
6、、selectByExample===>根据条件查询数据根据条件查询数据
List<Account> selectByExample(AccountExample example);
//下面是一个完整的案例
UserExample example = new UserExample();
Criteria criteria = example.createCriteria();
criteria.andUsernameEqualTo("joe");
criteria.andUsernameIsNull();
example.setOrderByClause("username asc,email desc");