【仅供内部供应商使用,不提供对外解答和培训】
...
Code Block | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
package com.fr.stable.db.action; import com.fr.stable.db.dao.DAOContext; /** * Created by loy on 2018/8/21. */ public interface DBAction<T> { T run(DAOContext context) throws Exception; } |
产品线 | 版本 | 支持情况 | 备注 |
---|---|---|---|
FR | 10.0 | 支持 |
Code Block | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
<extra-core> <DBAccessProvider class="your class name"/> </extra-core> |
...
DBAccessProvider在实现时有一个void onDBAvailable(DBAccessor accessor)的接口方法,这个方法是一个注入方法,也就是通过这个入参DBAccessor让我们的插件获得实际调用数据库的能力。一般开发时会把这个对象保存到静态变量中缓存。【点击看示例】
在编写emtity类时常用的几个注解在编写entity类时常用的几个注解
Code Block | ||||
---|---|---|---|---|
| ||||
@Entity //该注解用于申明这是一个实体类 @Table(name = "plugin_demo") //申明数据库表对应的信息,一般只用指定表名即可 @TableAssociation(associated = true) //这是否是一张关联表,非关联表可以不加这个注解 public class DemoEntity extends BaseEntity { public static final String COLUMN_KEY = "key"; public static final String COLUMN_BEAN = "bean"; @Column(name = COLUMN_KEY) //申明成员对应的字段信息,常用的属性有字段名、是否可以为空、是否是主键 等等的 private String key = null; @Column(name = COLUMN_BEAN) @Convert(converter = BeanConverter.class)//什么这是一个需要转换存储的字段。通过实现BaseConverter接口来进行数据库字段跟对象直接的转换。一般常见的就是枚举类型的转换了。 private DemoBean bean = null; ... } |
...
demo地址:demo-db-access-provider
...
免责声明:所有文档中的开源示例,均为开发者自行开发并提供。仅用于参考和学习使用,开发者和官方均无义务对开源案例所涉及的所有成果进行教学和指导。禁止用于任何商业用途,若作为商用一切后果责任由使用者自行承担。