总结:
dao的作用有两点
1.可以全部查询
2.也可以模糊查询,因为含有模型形参
Service的作用在dao的基础下作用有一点
1.可以分页
Controller的总用有一点
1.可以返回json数据,形成接口
那么一套流程下来具有的功能: 全部数据查询、模糊查询、分页、最终以接口的形式返回.
模型
public class Owner {
private Integer id;
private String identity;
private String custname;
private String sex;
private String address;
private String phone;
private String career;
private String remarks;
private Date createTime;
private String djr;
}
dao 跟 mapper.xml 配套使用
@Component
public interface OwnerMapper extends BaseMapper<Owner> {
/**
* 查询所有的户主信息
*
*/
public List<Owner> queryOwnerAll(Owner owner);
}
ServiceImpl
@Service
public class OwnerServiceImpl extends ServiceImpl<OwnerMapper,Owner> implements OwnerService{
@Autowired
OwnerMapper ownerMapper;
@Override
public PageInfo<Owner> findOwnerAll(int page, int limit, Owner owner) {
PageHelper.startPage(page,limit);
List<Owner> owners = ownerMapper.queryOwnerAll(owner);
PageInfo<Owner> ownerPageInfo = new PageInfo<>(owners);
return ownerPageInfo;
}
}
mapper.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zoe.house.dao.OwnerMapper">
<select id="queryOwnerAll" resultType="com.zoe.house.model.Owner" parameterType="com.zoe.house.model.Owner">
select * from owner
<where>
<if test="identity != null and identity != '' "/>
and identity like '%${identity}%'
<if test="custname != null and custname != '' "></if>
and custname like '%${custname}%'
</where>
</select>
</mapper>
Controller
@RequestMapping("/OwnerAll")
@ResponseBody
public Object findOwnerAll(@RequestParam(defaultValue = "1") int page,@RequestParam(defaultValue = "5") int limit, Owner owner) {
JsonObject jsonObject = new JsonObject();
PageInfo<Owner> pageInfo = ownerService.findOwnerAll(page, limit, owner);
jsonObject.setCode(0);
jsonObject.setMsg("success");
jsonObject.setCount(pageInfo.getTotal());
jsonObject.setData(pageInfo.getList());
return jsonObject;
}