☰
Current Page
Main Menu
Home
Home
Editing
01.模型扩展
Edit
Preview
h1
h2
h3
default
Set your preferred keybinding
default
vim
emacs
markdown
Set this page's format to
AsciiDoc
Creole
Markdown
MediaWiki
Org-mode
Plain Text
RDoc
Textile
Rendering unavailable for
BibTeX
Pod
reStructuredText
Help 1
Help 1
Help 1
Help 2
Help 3
Help 4
Help 5
Help 6
Help 7
Help 8
Autosaved text is available. Click the button to restore it.
Restore Text
--- title: 模型扩展 date: 2023-09-25 17:31:35 permalink: /pages/0fd75a/ --- ## 4.1. **模型扩展** 平台最核心的能力就是扩展能力。平台可以通过模型扩展增强或改变原有模型内部定义的服务、属性,甚至模型自身的元数据。模型扩展有两种方式: ### 4.1.1. **模型内部crud扩展** 常见场景说明:想在平台提供默认的crud能力的基础上,做一些业务操作。 通过在业务模型中定义与默认方法签名相同的方法,来重写默认逻辑 新增 ``` public void create(@Spec(doc = "k v") List<Map<String, Object>> valuesList) { ``` 修改 ```java public int update(@BaseService.Spec(doc = "k v") Map<String, Object> values) { ... } ``` 删除 ```java public boolean delete() { ... } ``` 查询 ```java public List<Map<String, Object>> search(@Spec(doc = "过滤器") Filter filter, @Spec(doc = "多个属性") List<String> properties, @Spec(doc = "初始位置") Integer limit, @Spec(doc = "记录数") Integer offset, @Spec(doc = "排序") String order) { ... } ``` 统计数量 ```java public long count(@Spec(doc = "过滤") Filter filter) { ... } ``` ### 4.1.2. 跨app模型扩展 待补充
Uploading file...
Sidebar
[[_TOC_]]
Edit message:
Cancel