Mybatis-Plus(簡稱MP)是一個 Mybatis 的增強工具,在 Mybatis 的基礎上只做增強不做改變,為簡化開發、提高效率而生。
創建一個實體類
@TableName("test_model")
public class TestClass extends Model<TestModel>{
}
@TableName("test_model"),它是指定與數據庫表的關聯,這里的注解意味着你的數據庫里應該有一個名為test_model的表與之對應
1、實體映射到表
@TableId(value="id",type=IdType.AUTO) private Long id; @TableField("my_name") private String myName; @TableField(exist = false) private String yourName; /**該張表中不存在的字段*/ public String getMyName() { return remark; } public void setMyName(String myName) { this.myName= myName; } ..... /**指定主鍵*/ @Override protected Serializable pkVal() { return this.id; }
2、配置Mapper
public interface MyMapper extends BaseMapper<MyTask> { }
3、service
public interface IMyService extends IService<MyTask> { }
@Service public class MyServiceImpl extends ServiceImpl<MyMapper, MyTask> implements IMyService { }
* 查詢
MyTask task = iMyService.selectList(new EntityWrapper<MyTask>()...);/**后面接對應的條件*/
...
* 修改
MyTask task = new MyTask();
...
iMyService.update(task,new EntityWrapper<MyTask>()....);
* 新增
iMyService.insert(task);
...
* 刪除
iMyService.delete(new EntityWrapper<MyTask>());
...
eg:
iMyService.update(task,new EntityWrapper<TuTask>().eq("deptId",1).in(true,"userId",userIds).notIn("status",1));
MyTask = iMyService.selectOne(new EntityWrapper<MyTask>()
.setSqlSelect("SUM(money) money").eq("id",vo.getId()));