Extjs5开发学习-29-加入模块和菜单定义2建立java bean
更新时间:2023-09-14 15:42:01 阅读量: 初中教育 文档下载
- excel推荐度:
- 相关推荐
Extjs5开发学习-29-加入模块和菜单定义[2建立java bean]
对上一节中加入的4个模块在java中建立相应的bean文件。
以上表建立好以后,需要建立java bean文件。在建立之前需要加入几个支持类。 先在com.jfok.server.common中建立包annotation,再在下面加入二个类库,这二个是自定义的注释类。分别用来注释每一个模块的信息和模块中每一字段的信息。
[java] view plain copy
1. package com.jfok.server.common.annotation;
2.
3. import java.lang.annotation.Retention; 4. import java.lang.annotation.RetentionPolicy; 5. 6. /**
7. * 用来注释模块 8. *
9. * @author jiangfeng 10. */
11. @Retention(RetentionPolicy.RUNTIME) 12. public @interface TableDefine { 13.
14. // 此表的id号,为一个4位数字 15. int id(); 16.
17. // 模块名称 18. String title(); 19.
20. // 模块简称
21. String shortname() default \; 22.
23. // 模块分组名称 24. String group(); 25.
26. // 模块的主键是否可以是分级的,如果是可以分级的,可定义为\表示有三级,每
级代码长为2位,
27. // 比如会计科目可以这样来定义 28. // 10 29. // 1001 30. // 100101 31. // 100102 32. // 100102 33. // 1002 34. // ......
35. String codeLevel() default \; 36.
37. // 模块是否有附件
38. boolean attachment() default false; 39. 40. }
[java] view plain copy
1. package com.jfok.server.common.annotation;
2.
3. import java.lang.annotation.Retention; 4. import java.lang.annotation.RetentionPolicy; 5. 6. /**
7. * 用来注释模块中的每个字段 8. *
9. * @author jiangfeng 10. * 11. */
12. @Retention(RetentionPolicy.RUNTIME) 13. public @interface FieldDefine { 14.
15. String title(); 16.
17. int number() default 0; 18.
19. String remark() default \; 20.
21. boolean nameField() default false; 22.
23. boolean hidden() default false; 24.
25. String fieldGroup() default \默认组\; 26. 27. }
在com.jfok.server.hibernate中建立包system,把系统用到的bean文件都放在这个目录下。先建立一个接口文件:
[java] view plain copy
1. package com.jfok.server.hibernate.system;
2. 3. /**
4. * 有此接口的类,都是系统模块的控制类 5. *
6. * @author jfok
7. * 8. */
9. public interface _IModuleControlInterface { 10. 11. }
再建立_ModuleGroup.java
[java] view plain copy
1. package com.jfok.server.hibernate.system;
2.
3. import java.io.Serializable; 4.
5. import javax.persistence.Column; 6. import javax.persistence.Entity; 7. import javax.persistence.Id; 8.
9. import com.jfok.server.common.annotation.FieldDefine; 10. import com.jfok.server.common.annotation.TableDefine; 11. 12. /**
13. * 模块分组类,每一个模块都有一个大类分组
69. private String tf_nameFields;// 模块主要关键内容的字段,如合同的是合同名称,部
门的是部门名称 70.
71. @FieldDefine(title = \记录标题tpl\, number = 82, remark = \如果显示标志字段不
能描述记录,需要设置此内容\) 72. @Column(length = 200)
73. private String tf_titleTpl;// 模块主要关键内容的字段,如合同的是合同名称,部门的
是部门名称 74.
75. @FieldDefine(title = \编码字段\, number = 91) 76. @Column(length = 50)
77. private String tf_codeField;// 模块编码字段,如果有的话 78.
79. @FieldDefine(title = \顺序号字段\, number = 97) 80. @Column(length = 50)
81. private String tf_orderField;// 模块编码字段,如果有的话 82.
83. @FieldDefine(title = \日期字段\, number = 92) 84. @Column(length = 50) 85. private String tf_dateField; 86.
87. @FieldDefine(title = \年度字段\, number = 93)
88. @Column(length = 50) 89. private String tf_yearfield; 90.
91. @FieldDefine(title = \月度字段\, number = 94) 92. @Column(length = 50) 93. private String tf_monthField; 94.
95. @FieldDefine(title = \季度字段\, number = 95) 96. @Column(length = 50) 97. private String tf_seasonField; 98.
99. @FieldDefine(title = \文件字段\, number = 96) 100. @Column(length = 50) 101. private String tf_fileField; 102.
103. @FieldDefine(title = \主页上顺序\, number = 99) 104. @Column(length = 50)
105. private String tf_homePageTag; 106.
107. @FieldDefine(title = \模块描述\, number = 100) 108. @Column(length = 50) 109. private String tf_description;
110.
111. @FieldDefine(title = \请求地址\, number = 110) 112. @Column(nullable = false, length = 50)
113. private String tf_requestMapping;// 系统中后台服务的调用接入
点 user.do,employee.do 等 114.
115. @FieldDefine(title = \图标地址\, number = 120) 116. @Column(length = 50) 117. private String tf_iconURL; 118.
119. @FieldDefine(title = \默认排序字段\, number = 130) 120. private String tf_defaultOrderField; 121.
122. @FieldDefine(title = \行操作\, remark = \新增及修改操作都行内完成
\, number = 140)
123. @Column(nullable = false) 124. private Boolean tf_isInlineOper; 125.
126. // 如部门编码为 2,2,2,2,2
127. @FieldDefine(title = \编码级次\, remark = \如果设置了编码级次,则主键的长度
必须是此级次中的,并且必须有父级编码存在\, number = 150) 128. @Column(length = 50)
129. String tf_codeLevel; 130.
131. @FieldDefine(title = \联动模块\, remark = \在本模块的数据增删改后,打开的联
动模块都要刷新数据。\, number = 155) 132. @Column(length = 200) 133. private String tf_linkedModule; 134.
135. @FieldDefine(title = \可用\, number = 160) 136. @Column(nullable = false)
137. private Boolean tf_isEnable = false; 138.
139. @FieldDefine(title = \可浏览\, number = 170) 140. @Column(nullable = false)
141. private Boolean tf_hasBrowse = false; 142.
143. @FieldDefine(title = \可增加\, number = 180) 144. @Column(nullable = false)
145. private Boolean tf_hasInsert = false; 146.
147. @FieldDefine(title = \可修改\, number = 190) 148. @Column(nullable = false) 149. private Boolean tf_hasEdit = false;
150.
151. @FieldDefine(title = \可删除\, number = 200) 152. @Column(nullable = false)
153. private Boolean tf_hasDelete = false; 154.
155. @FieldDefine(title = \可执行\, number = 210) 156. @Column(nullable = false) 157. private Boolean tf_hasExec = false; 158.
159. @FieldDefine(title = \可审核\, number = 220) 160. @Column(nullable = false)
161. private Boolean tf_hasAuditing = false; 162.
163. @FieldDefine(title = \可审批\, number = 230) 164. @Column(nullable = false)
165. private Boolean tf_hasApprove = false; 166.
167. @FieldDefine(title = \可支付\, number = 240) 168. @Column(nullable = false)
169. private Boolean tf_hasPayment = false; 170.
171. @FieldDefine(title = \有附件\, number = 250)
172. @Column(nullable = false)
173. private Boolean tf_hasAddition = false; // 是否需要附件 174.
175. @FieldDefine(title = \可权限设置\, remark = \用户可对此模块设置权限,选定的
才可以浏览与操作\, number = 260) 176. @Column(nullable = false)
177. private Boolean tf_canLimit = false; // 此模块是否能进行权限设置 178.
179. @FieldDefine(title = \导入\, remark = \是否可以通过Excel导入新增记录
\, number = 270)
180. @Column(nullable = false)
181. private Boolean tf_allowInsertExcel = false; 182.
183. @FieldDefine(title = \修改\, remark = \是否可以导出的Excel修改后再导入
\, number = 280)
184. @Column(nullable = false)
185. private Boolean tf_allowEditExcel = false; 186.
187. @FieldDefine(title = \可图表\, number = 290) 188. @Column(nullable = false)
189. private Boolean tf_hasChart = false; 190.
191. @FieldDefine(title = \系统模块\, number = 300, remark = \如果是系统模块,用
户没有浏览权限,就不把模块定义发送到前端\) 192. @Column(nullable = false)
193. private Boolean tf_isSystem = false; 194.
195. @FieldDefine(title = \查询条件顺序号\, number = 310, remark = \此模块放在
综合查询的条件选择栏中的顺序\)
196. private Integer tf_searchCondOrder; 197.
198. @FieldDefine(title = \备注\, number = 800) 199. private String tf_remark; 200.
201. public _Module() { 202. 203. }
204. // setter and getter 205. }
_MenuGroup.java
[java] view plain copy
1. package com.jfok.server.hibernate.system;
2.
3. import java.io.Serializable; 4. import java.util.List;
5. import javax.persistence.Column; 6. import javax.persistence.Entity; 7. import javax.persistence.Id; 8. import javax.persistence.Transient;
9. import com.jfok.server.common.annotation.FieldDefine; 10. import com.jfok.server.common.annotation.TableDefine; 11. 12. /** 13. * 菜单分组 14. *
15. * @author jfok 16. * 17. */
18. @SuppressWarnings(\) 19. @Entity
20. @org.hibernate.annotations.Entity(dynamicUpdate = true) 21. @TableDefine(group = \系统模块\, id = 9920, title = \菜单分组\)
22. public class _MenuGroup implements _IModuleControlInterface, Serializable { 23.
24. @Id
25. @FieldDefine(title = \顺序号\, remark = \菜单分组按顺序号显示在菜单条上
\, number = 10)
26. @Column(length = 10, nullable = false) 27. private String tf_menuGroupId; 28.
29. @FieldDefine(title = \分组名称\, nameField = true, number = 20) 30. @Column(length = 50, nullable = false) 31. private String tf_title; 32.
33. @FieldDefine(title = \展开\, remark = \在树状菜单下默认是否展开
\, number = 30)
34. private Boolean tf_expand; 35.
36. @FieldDefine(title = \图标glyph\, number = 40) 37. private Boolean tf_glyph; 38.
39. @FieldDefine(title = \图标文件名\, remark = \图标放置于/images/module/目录下
\, number = 50)
40. @Column(length = 50) 41. private String tf_iconURL; 42.
43. @FieldDefine(title = \分组描述\, number = 60) 44. @Column(length = 50) 45. private String tf_description; 46.
47. @FieldDefine(title = \备注\, number = 70) 48. private String tf_remark; 49.
50. @Transient
51. private List<_MenuModule> tf_menuModules; 52.
53. public _MenuGroup() { 54. } 55.
56. //setter and getter 57. }
_MenuModule.java
[java] view plain copy
1. package com.jfok.server.hibernate.system;
2.
3. import java.io.Serializable;
正在阅读:
Extjs5开发学习-29-加入模块和菜单定义2建立java bean09-14
第十三章 直流及事故照明系统06-01
奋发向上、崇德向善07-18
细胞的类型与结构07-24
应用在食品行业中的冷封胶薄膜 - 郭新华12-01
以科学发展观为指导促进计量工作再上新台阶05-10
2018-2019学年八年级物理上册第二章《物态变化》单元综合测试卷(新版)苏科版10-17
实现有效教学反思07-10
万科客户关系管理案例全集05-22
- 二甲基甲酰胺安全技术说明书
- 南邮计算机网络复习题
- 高分子物理实验指导书 - 图文
- 2009.9.25 莞惠环控专业施工图设计技术要求
- 学生工作简报
- 揭阳市斯瑞尔环境科技有限公司废酸综合利用项目可行性研究报告-广州中撰咨询
- 今日靓汤(佘自强)
- 奥数 - 二年级 - 数学 - 第三讲时间的教师版计算答案 - 图文
- 如何命制一份好的物理试卷
- 数据库开题报告
- 禁用未经批准或已经废止或淘汰技术的制度流程
- 大学英语(二)第2阶段测试题
- 湘教版一年级上册美术教案(全)
- (整套)学生顶岗(毕业)实习手册
- 高频 二极管包络检波 - 图文
- 2018届中考英语复习题型四任务型完形填空备考精编含解析 - 186
- 郑煤集团超化煤矿一采区开采设计 - 图文
- 财政学习题
- 摄影摄像复习资料
- SMC D-A93接线方式 - 图文
- 模块
- 菜单
- 定义
- 建立
- 加入
- Extjs5
- 开发
- 学习
- java
- bean
- 29
- 呼吸灯设计 - 图文
- (最新)湘教版地理八年级下册《第七章 认识区域-环境与发展》单元综合检测试题(含答案解析)
- 论文初稿评语
- 2012年上半年下午系统集成项目管理工程师答案及解析
- 制鞋业的iso9000 - 图文
- 2018年甘肃省公务员考试行测真题
- (企业文化宣传标语)企业安全生产宣传标语
- 07-福特汽车4S店流程之维修过程及品质控制 - 图文
- 材料学院本科毕业论文撰写规范
- 10建管施工组织A卷
- 企业所属行业分类表
- 食品分析期末复习题
- 2018最新法院国家赔偿不认可,被害人向最高人民检察院申请立案监督申请书word版本(4页)
- 生鲜电商行业调查及解决方案报告书 - 图文
- 切实解决群众关心的热点难点问题
- 材料力学试题1
- 新版GSP人员资质要求汇总表
- 2017 - 2018学年高中语文第2单元指南录后序学业分层测评苏教版必修3
- 空间句法
- 沪教版七下《水乡茶居》教案2篇