demo java daoImpl - jmr-source/doc GitHub Wiki

daoImpl(daoImpl.java.jet) - dao实现

功能描述

生成dao的实现。

阅读前需要了解的知识:

任务

模型

标签


任务和模型

  • 模型:shop
当前任务的模型名称是shop,包含一个java实体模型book,book的relation值是one;
我们在模板中会通过<entity>得到它。

关于本demo的模型结构,详细内容请点击:模型结构 

  • 模板:daoImpl.java.jet

  • 文件名:${one.Class}DaoImpl

我们为这个模型新设了以下属性:
Class:头字母大写的名称,可以作为类名或者需要头字母大写的部分,它的值是"Book"。
class:头字母小写的名称,可以作为头字母小写的部分,它的值是"book"。
menu:界面菜单栏的名称,它的值是"book"。

生成的文件:${one.Class}DaoImpl

  • 扩展名:我们生成的是java实体类,所以扩展名为java

模板详解

为了得到模型的代码提示,选好jmr文件和对应的模型shop。

初始化

  • 得到entity,它的relation为one,对应的模型为book,新设变量object指向one。
  • 设置变量Class,作为头子母大写部分,通过object.property("Class")得到,值是Book。

package、import和class声明

  • 使用java:package自动得到当前包名。
  • 使用java:class得到类名,类名为任务的文件名:${object.Class}的值,为Book。
  • 使用get得到Class,它的值是Book,用来拼接Book、IBookDao这2个类。
运行结果

实现方法

以下是部分实现方法的模板

实现方法无非就是调用Class变量进行拼接的操作。由于项目本身是采用反射的模式, 所以没有对Book的id、name等字段操作的部分,如果不是采用反射,请自行 用for迭代object.fields进行操作。

运行结果

⚠️ **GitHub.com Fallback** ⚠️