# easy-access
**Repository Path**: easy-framework/easy-access
## Basic Information
- **Project Name**: easy-access
- **Description**: 一个将Mybatis框架最简化后的基础框架,你可以在此基础上随意的二次开发。同时,在项目defaults目录下你可以看到内嵌一套默认实现方案,相当于集Mybatis,Mybatisplus,Easy-mybatis于一身。好不好用,试试你就知道了!,真金不怕火炼
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2019-01-15
- **Last Updated**: 2025-07-24
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
## 查看最新源码请移步[源码地址](https://gitee.com/xiaoyudeguang/easy-develop/tree/master/easy-access)
# easy-access
## 介绍
Easy-access是一个将Mybatis框架最简化后的基础框架,你可以在此基础上随意的二次开发(下拉到最后查看)。同时,在项目defaults目录下你可以看到内嵌一套默认实现方案,相当于集Mybatis,Mybatisplus,Easy-mybatis于一身了,同时,还可兼容它们!好不好用,试试你就知道了!
## 使用说明
### Maven引用(点击 https://search.maven.org/search?q=g:io.github.xiaoyudeguang 查看最新版本)
```
io.github.xiaoyudeguang
easy-access
3.1.8-RELEASE
```
### 使用默认access框架实现
#### 实体类编写
考虑到很多项目已经基于Mybatisplus了,所以easy-accss的默认实现并没有自定义主键注解和表字段注解,而是沿用了mybatisplus的@TableId注解和@TableField注解,详情可参考easy-mybatis(项目地址:https://gitee.com/xiaoyudeguang/easy-mybatis )
```
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.zlyx.easycore.annotations.Desc;
import com.zlyx.easymybatis.annotations.ForeignKey;
import com.zlyx.easyweb.web.annotations.TableBean;
@TableBean(todo = { "" }, value = "db_person", alias = "per")
@TableName("db_person")
public class Person {
@Desc(value = { "用户id" })
@TableId("person_id")
private Long id;
@Desc(value = { "用户姓名" })
@TableField(value = "name")
private String name;
@Desc(value = { "部门名称" })
@ForeignKey(key = "name", table = Dept.class)
@TableField(value = "dept_name")
private String deptName;
@Desc(value = "部门实体对象")
private Dept dept;
... 其他部分略(get和set方法)...
}
```
#### 数据交互接口编写(仿Mapper接口)
```
import com.zlyx.easyaccess.abstracts.AbstractAccesser;
import com.zlyx.easyaccess.annotations.Accesser;
import com.zlyx.easyaccess.defaults.annotations.Select;
import com.zlyx.easytest.access.model.Person;
@Accesser(todo = { "测试" })
public interface TestAccesser extends AbstractAccesser{
@Select("select * from db_person limit 0,1")
public List select();
}
```
#### AbstractAccesser接口提供的原子方法(仿mybatisplus)
```
public interface AbstractAccesser {
@Insert(value = SQL.PLACEHOLDER)
public boolean insert(T t);
@Insert(value = SQL.PLACEHOLDER)
public boolean insertBatch(List ts);
@Update(value = SQL.PLACEHOLDER)
public boolean updateById(T t);
@Update(value = SQL.PLACEHOLDER)
public boolean updateBatchById(List ts);
@Delete(value = SQL.PLACEHOLDER)
public boolean deleteById(Object id);
@Delete(value = SQL.PLACEHOLDER)
public boolean deleteByIds(List