版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Extjs5开发学习-29-加入模块和菜单定义2建立java bean对上一节中加入的4个模块在java中建立相应的bean文件。 以上表建立好以后,需要建立java bean文件。在建立之前需要加入几个支持类。 先在mon中建立包annotation,再在下面加入二个类库,这二个是自定义的注释类。分别用来注释每一个模块的信息和模块中每一字段的信息。java view plain copy1. package mon.annotation; 2.
2、0;3. import java.lang.annotation.Retention; 4. import java.lang.annotation.RetentionPolicy; 5. 6. /* 7. * 用来注释模块 8. * 9. * author jiangfeng 10. */ 11. Retention(RetentionPolicy.RUN
3、TIME) 12. public interface TableDefine 13. 14. / 此表的id号,为一个4位数字 15. int id(); 16. 17. / 模块名称 18.
4、60;String title(); 19. 20. / 模块简称 21. String shortname() default "" 22. 23. / 模块分组名称 24. String&
5、#160;group(); 25. 26. / 模块的主键是否可以是分级的,如果是可以分级的,可定义为"2,2,2",表示有三级,每级代码长为2位, 27. / 比如会计科目可以这样来定义 28. / 10 29. / 1001
6、0; 30. / 100101 31. / 100102 32. / 100102 33. / 1002 34. / . 35. String
7、 codeLevel() default "" 36. 37. / 模块是否有附件 38. boolean attachment() default false; 39. 40. java view plain copy1. package mo
8、n.annotation; 2. 3. import java.lang.annotation.Retention; 4. import java.lang.annotation.RetentionPolicy; 5. 6. /* 7. * 用来注释模块中的每个字段 8. * 9. * author jiangfeng 10. *
9、160; 11. */ 12. Retention(RetentionPolicy.RUNTIME) 13. public interface FieldDefine 14. 15. String title(); 16. 17. int number() default
10、0; 18. 19. String remark() default "" 20. 21. boolean nameField() default false; 22. 23. boolean hidden() def
11、ault false; 24. 25. String fieldGroup() default "默认组" 26. 27. 在com.jfok.server.hibernate中建立包system,把系统用到的bean文件都放在这个目录下。先建立一个接口文件:java view plain copy
12、1. package com.jfok.server.hibernate.system; 2. 3. /* 4. * 有此接口的类,都是系统模块的控制类 5. * 6. * author jfok 7. * 8. */ 9. public interface _IModuleControlInterface
13、60;10. 11. 再建立_ModuleGroup.javajava view plain copy1. package com.jfok.server.hibernate.system; 2. 3. import java.io.Serializable; 4. 5. import javax.persistence.Column; 6. import javax.per
14、sistence.Entity; 7. import javax.persistence.Id; 8. 9. import mon.annotation.FieldDefine; 10. import mon.annotation.TableDefine; 11. 12. /* 13. * 模块分组类,每一个模块都有一个大类分组 14. * 15.
15、60;* author jfok 2012.11.7 16. */ 17. SuppressWarnings("serial") 18. Entity 19. org.hibernate.annotations.Entity(dynamicUpdate = true) 20. TableDefine(group = "系统模块", id = 990
16、1, title = "模块分组") 21. public class _ModuleGroup implements _IModuleControlInterface, Serializable 22. 23. public static final String TITLE = "tf_title
17、" 24. 25. Id 26. FieldDefine(title = "模块分组序号", number = 10) 27. Column(nullable = false, length = 10) 28. &
18、#160; private String tf_moduleGroupId; 29. 30. FieldDefine(title = "模块分组名称", nameField = true, number = 20) 31. Column(nullable = f
19、alse, length = 50) 32. private String tf_title; 33. 34. FieldDefine(title = "描述", number = 30) 35. private String
20、;tf_description; 36. 37. FieldDefine(title = "图标地址", number = 40) 38. private String tf_iconURL; 39. 40. FieldDefine(title
21、0;= "备注", number = 50) 41. private String tf_remark; 42. 43. public _ModuleGroup() 44. 45. 46. /
22、 setter and getter 47. 上面这个类中,就用自定义的注释类来进行了注释,一个是注释在类名上,一个是注释在各个字段上。这二个类注释的功能是以后在增加一个模块的时候,会自动把这些注释的信息自动的加到保存的模块和模块字段的表中。 再加入_Module.javajava view plain copy1. package com.jfok.server.hibernat
23、e.system; 2. 3. import java.io.Serializable; 4. import javax.persistence.CascadeType; 5. import javax.persistence.Column; 6. import javax.persistence.Entity; 7. import javax.persistence.FetchType;
24、8. import javax.persistence.Id; 9. import javax.persistence.JoinColumn; 10. import javax.persistence.ManyToOne; 11. 12. import org.codehaus.jackson.map.annotate.JsonSerialize; 13. 14. import mon.annotation.F
25、ieldDefine; 15. import mon.annotation.TableDefine; 16. 17. /* 18. * 系统中每个模块的字义 19. * 20. * author jfok 2012.11.7 21. * 22. */ 23. JsonSerialize(include =
26、;JsonSerialize.Inclusion.NON_EMPTY) 24. SuppressWarnings("serial") 25. Entity 26. org.hibernate.annotations.Entity(dynamicUpdate = true) 27. TableDefine(group = "系统模块", id = 9902, title =
27、0;"系统模块") 28. public class _Module implements _IModuleControlInterface, Serializable 29. 30. public static final String MODULEID = "tf_moduleId" 31. &
28、#160; public static final String MODULENAME = "tf_moduleName" 32. 33. Id 34. FieldDefine(title = "模块ID号", number = 10)
29、160;35. Column(nullable = false, length = 10) 36. private String tf_moduleId; / 模块,模块序号 37. 38. ManyToOne(cascade = CascadeType.REFRESH,
30、60;fetch = FetchType.EAGER) 39. JoinColumn(name = "tf_moduleGroupId") 40. FieldDefine(title = "模块分组", number = 20) 41. private
31、0;_ModuleGroup tf_ModuleGroup; 42. 43. FieldDefine(title = "模块标识", number = 30) 44. Column(nullable = false, length = 50, updatable = fals
32、e) 45. private String tf_moduleName; / 模块英文名称 46. 47. FieldDefine(title = "模块名称", nameField = true, number = 40) 48.
33、160;Column(nullable = false, length = 50) 49. private String tf_title; / 模块中文名称 50. 51. FieldDefine(title = "模块简称", number = 50)
34、0;52. Column(length = 20) 53. private String tf_shortname; / 简称 54. 55. FieldDefine(title = "英文简称", number = 60) 56. &
35、#160; Column(length = 20) 57. private String tf_englishname; / 英文简称,在新增序号的时候,可以把这字母加进去 58. 59. FieldDefine(title = "表名", number = 70)
36、60; 60. Column(length = 50) 61. private String tf_tableName; 62. 63. FieldDefine(title = "主键", number = 80) 64.
37、; Column(nullable = false, length = 50) 65. private String tf_primaryKey;/ 模块主键 66. 67. FieldDefine(title = "显示标志字段", number = 81)
38、160; 68. Column(nullable = false, length = 50) 69. private String tf_nameFields;/ 模块主要关键内容的字段,如合同的是合同名称,部门的是部门名称 70. 71. FieldDefine(title =
39、0;"记录标题tpl", number = 82, remark = "如果显示标志字段不能描述记录,需要设置此内容") 72. Column(length = 200) 73. private String tf_titleTpl;/ 模块主要关键内容的字段,如合同的是合同名称,部门的是部门名称
40、 74. 75. FieldDefine(title = "编码字段", number = 91) 76. Column(length = 50) 77. private String tf_codeField;/ 模块编码字段,如果有的话
41、60;78. 79. FieldDefine(title = "顺序号字段", number = 97) 80. Column(length = 50) 81. private String tf_orderField;/ 模块编码字段,如果有的话
42、0;82. 83. FieldDefine(title = "日期字段", number = 92) 84. Column(length = 50) 85. private String tf_dateField; 86. 87.
43、 FieldDefine(title = "年度字段", number = 93) 88. Column(length = 50) 89. private String tf_yearfield; 90. 91.
44、0;FieldDefine(title = "月度字段", number = 94) 92. Column(length = 50) 93. private String tf_monthField; 94. 95. FieldDefine(title
45、160;= "季度字段", number = 95) 96. Column(length = 50) 97. private String tf_seasonField; 98. 99. FieldDefine(title = "文件字
46、段", number = 96) 100. Column(length = 50) 101. private String tf_fileField; 102. 103. FieldDefine(title = "主页上顺序", num
47、ber = 99) 104. Column(length = 50) 105. private String tf_homePageTag; 106. 107. FieldDefine(title = "模块描述", number =
48、100) 108. Column(length = 50) 109. private String tf_description; 110. 111. FieldDefine(title = "请求地址", number = 110)
49、;112. Column(nullable = false, length = 50) 113. private String tf_requestMapping;/ 系统中后台服务的调用接入点 user.do,employee.do 等 114. 115. FieldDefine(ti
50、tle = "图标地址", number = 120) 116. Column(length = 50) 117. private String tf_iconURL; 118. 119. FieldDefine(title = &qu
51、ot;默认排序字段", number = 130) 120. private String tf_defaultOrderField; 121. 122. FieldDefine(title = "行操作", remark = "新增及修改操作都行内完成", number
52、160;= 140) 123. Column(nullable = false) 124. private Boolean tf_isInlineOper; 125. 126. / 如部门编码为 2,2,2,2,2 127.
53、FieldDefine(title = "编码级次", remark = "如果设置了编码级次,则主键的长度必须是此级次中的,并且必须有父级编码存在", number = 150) 128. Column(length = 50) 129. String tf_codeLevel; 13
54、0. 131. FieldDefine(title = "联动模块", remark = "在本模块的数据增删改后,打开的联动模块都要刷新数据。", number = 155) 132. Column(length = 200) 133. priv
55、ate String tf_linkedModule; 134. 135. FieldDefine(title = "可用", number = 160) 136. Column(nullable = false) 137. private Bo
56、olean tf_isEnable = false; 138. 139. FieldDefine(title = "可浏览", number = 170) 140. Column(nullable = false) 141. private
57、60;Boolean tf_hasBrowse = false; 142. 143. FieldDefine(title = "可增加", number = 180) 144. Column(nullable = false) 145. priv
58、ate Boolean tf_hasInsert = false; 146. 147. FieldDefine(title = "可修改", number = 190) 148. Column(nullable = false) 149.
59、0;private Boolean tf_hasEdit = false; 150. 151. FieldDefine(title = "可删除", number = 200) 152. Column(nullable = false) 153.
60、 private Boolean tf_hasDelete = false; 154. 155. FieldDefine(title = "可执行", number = 210) 156. Column(nullable = false) 157.
61、 private Boolean tf_hasExec = false; 158. 159. FieldDefine(title = "可审核", number = 220) 160. Column(nullable = false) 161.
62、160; private Boolean tf_hasAuditing = false; 162. 163. FieldDefine(title = "可审批", number = 230) 164. Column(nullable = false) 165.
63、 private Boolean tf_hasApprove = false; 166. 167. FieldDefine(title = "可支付", number = 240) 168. Column(nullable = false)
64、0;169. private Boolean tf_hasPayment = false; 170. 171. FieldDefine(title = "有附件", number = 250) 172. Column(nullable = false)
65、60; 173. private Boolean tf_hasAddition = false; / 是否需要附件 174. 175. FieldDefine(title = "可权限设置", remark = "用户可对此模块设置权限,选定的才可以浏览与操作", number
66、;= 260) 176. Column(nullable = false) 177. private Boolean tf_canLimit = false; / 此模块是否能进行权限设置 178. 179. FieldDefine(title = &qu
67、ot;Excel导入", remark = "是否可以通过Excel导入新增记录", number = 270) 180. Column(nullable = false) 181. private Boolean tf_allowInsertExcel = false; 182.
68、160; 183. FieldDefine(title = "Excel修改", remark = "是否可以导出的Excel修改后再导入", number = 280) 184. Column(nullable = false) 185. private
69、60;Boolean tf_allowEditExcel = false; 186. 187. FieldDefine(title = "可图表", number = 290) 188. Column(nullable = false) 189.
70、;private Boolean tf_hasChart = false; 190. 191. FieldDefine(title = "系统模块", number = 300, remark = "如果是系统模块,用户没有浏览权限,就不把模块定义发送到前端") 192. C
71、olumn(nullable = false) 193. private Boolean tf_isSystem = false; 194. 195. FieldDefine(title = "查询条件顺序号", number = 310, remark = "此模
72、块放在综合查询的条件选择栏中的顺序") 196. private Integer tf_searchCondOrder; 197. 198. FieldDefine(title = "备注", number = 800) 199. private Stri
73、ng tf_remark; 200. 201. public _Module() 202. 203. 204. / setter and getter 205. _MenuGroup.javajava
74、 view plain copy1. 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. i
75、mport javax.persistence.Id; 8. import javax.persistence.Transient; 9. import mon.annotation.FieldDefine; 10. import mon.annotation.TableDefine; 11. 12. /* 13. * 菜单分组 14. * 15. *
76、60;author jfok 16. * 17. */ 18. SuppressWarnings("serial") 19. Entity 20. org.hibernate.annotations.Entity(dynamicUpdate = true) 21. TableDefine(group = "系统模块", id = 99
77、20, title = "菜单分组") 22. public class _MenuGroup implements _IModuleControlInterface, Serializable 23. 24. Id 25. FieldDefine(title = "顺序
78、号", remark = "菜单分组按顺序号显示在菜单条上", number = 10) 26. Column(length = 10, nullable = false) 27. private String tf_menuGroupId; 28. 2
79、9. FieldDefine(title = "分组名称", nameField = true, number = 20) 30. Column(length = 50, nullable = false) 31. private String
80、0;tf_title; 32. 33. FieldDefine(title = "展开", remark = "在树状菜单下默认是否展开", number = 30) 34. private Boolean tf_expand; 35. 36.
81、160; FieldDefine(title = "图标glyph", number = 40) 37. private Boolean tf_glyph; 38. 39. FieldDefine(title = "图标文件名", remark =
82、160;"图标放置于/images/module/目录下", number = 50) 40. Column(length = 50) 41. private String tf_iconURL; 42. 43. FieldDefine(title = &
83、quot;分组描述", number = 60) 44. Column(length = 50) 45. private String tf_description; 46. 47. FieldDefine(title = "备注",
84、number = 70) 48. private String tf_remark; 49. 50. Transient 51. private List<_MenuModule> tf_menuModules; 52. 53.
85、60; public _MenuGroup() 54. 55. 56. /setter and getter 57. _MenuModule.javajava view plain copy1. package com.jfok.serv
86、er.hibernate.system; 2. 3. import java.io.Serializable; 4. 5. import javax.persistence.CascadeType; 6. import javax.persistence.Column; 7. import javax.persistence.Entity; 8. import javax.persiste
87、nce.FetchType; 9. import javax.persistence.GeneratedValue; 10. import javax.persistence.Id; 11. import javax.persistence.JoinColumn; 12. import javax.persistence.ManyToOne; 13. import org.codehaus.jackson.annotate.JsonIg
88、nore; 14. import org.hibernate.annotations.GenericGenerator; 15. import mon.annotation.FieldDefine; 16. import mon.annotation.TableDefine; 17. 18. /* 19. * 系统可使用的菜单项 20. * 21. * au
89、thor jfok 22. * 23. */ 24. SuppressWarnings("serial") 25. Entity 26. org.hibernate.annotations.Entity(dynamicUpdate = true) 27. TableDefine(group = "系统模块", id = 9921,
90、160;title = "系统菜单") 28. public class _MenuModule implements _IModuleControlInterface, Serializable 29. Id 30. FieldDefine(title = "ID号", hidden
91、 = true, number = 10) 31. GeneratedValue(generator = "increment") 32. GenericGenerator(name = "increment", strategy = "increment")
92、0;33. private Integer tf_menuModuleId; 34. 35. FieldDefine(title = "顺序号", remark = "按顺序号显示在菜单中", number = 20) 36. Column(nul
93、lable = false) 37. private Integer tf_orderId; 38. 39. JsonIgnore 40. ManyToOne(cascade = CascadeType.REFRESH, fetch = FetchType.EAGER)
94、60; 41. JoinColumn(name = "tf_menuGroupId", nullable = false) 42. FieldDefine(title = "菜单分组", nameField = true, number = 30) 43.
95、; private _MenuGroup tf_MenuGroup; 44. 45. JsonIgnore 46. ManyToOne(cascade = CascadeType.REFRESH, fetch = FetchType.EAGER) 47. JoinColum
96、n(name = "tf_moduleId", nullable = false) 48. FieldDefine(title = "系统模块", number = 40) 49. private _Module tf_Module; 50. 51. &
97、#160; FieldDefine(title = "父菜单标题", number = 50) 52. Column(length = 20) 53. private String tf_parentMenu; 54. 55.
98、60;FieldDefine(title = "分隔下一条", number = 60) 56. private Boolean tf_addSeparator; 57. 58. 59. FieldDefine(title = "菜单标题", number =&
99、#160;70) 60. Column(length = 50) 61. private String tf_title; 62. 63. FieldDefine(title = "父模块约束设置", number = 80) 64. private String tf_parentFilter; 65. 66. / 这个字段用于传送json到前台,放在json中 67. Column
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026江西萍矿总医院招聘见习康复治疗师4人备考题库附答案详解【典型题】
- 2026内蒙古霍林河机场管理有限责任公司招聘工作人员3人备考题库及完整答案详解1套
- 2026重庆市万州区沙河街道办事处公益性岗位招聘1人备考题库含答案详解【能力提升】
- 2026浙江国检检测技术股份有限公司第一轮招聘员工5人备考题库含完整答案详解(夺冠系列)
- 2026河北雄安交通投资有限公司校园招聘2人备考题库含答案详解【典型题】
- 2026四川宜宾丽雅城市建设发展有限公司下属子公司第一批员工招聘4人备考题库附答案详解【突破训练】
- 2026云南玉溪市人力资源社会保障信息中心城镇公益性岗位招聘1人备考题库及完整答案详解【有一套】
- 教学常规教研教改德育活动学生管理校园安全后勤保障-城北二中各部门工作汇报会
- 体外循环心脏术后护理要点
- 五年级英语教学计划年度总结
- 2026年滁州职业技术学院单招综合素质考试题库附答案详解
- 2026春统编版三年级下册道德与法治每课知识点清单
- 2025年建筑安全员c2考试题及答案
- 2025中国国新控股有限责任公司招聘7人笔试历年常考点试题专练附带答案详解
- 东北三省三校2026年高三下学期高考第一次联合模拟考试政治试卷
- 2026秋招:平安银行笔试题及答案
- 2026年六安职业技术学院单招职业适应性考试题库附参考答案详解ab卷
- 2026广东江门职业技术学院管理教辅人员招聘4人备考题库带答案详解(基础题)
- 货梯使用专项安全培训课件
- (2025版)国家基层高血压防治管理指南2025版课件
- 女职工安全教育培训内容课件
评论
0/150
提交评论