精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

J-Hi的生成器到底生成了些什么?

開發 后端
本篇文章主要對J-Hi的生成器到底生成了些什么? 做出解答,希望對大家有所幫助。

自J-Hi正式發布以來(2011-1-14)已有三百多個愛好者加入我們的交流群,下載次數約1300次。隨著使用者的增加逐漸增多,大家在使用中的疑問也越來越多。其中最多的問題就是生成器到底生成了些什么東西,下面以xxx服務,實體***為例,對生成的文件一一講解:

數據庫相關

對應不同的數據庫J-Hi會生成不同的數據庫腳本文件,生成的文件會臨時存放在web/db目錄下的相關數據庫(MSSQL/MYSQL/ORACLE)子目錄下,每次生成該目錄下的文件都會清理一次。生成的文件如下:

xxx.sql 定義該服務下所有實體(枚舉實體除外)的數據庫表的創建

xxx_BaseData.sql用于對該服務下的實體,為系統表插入相關數據,系統表包括:菜單、權限、枚舉等,通過該文件會將與實體相關的菜單信息,權限信息等一次性的插入到系統表中

Java相關

因為Java含蓋的框架有很多,采用不同的框架不同的技術生成的內容會有所不同,下面讓我們按三層結構的原理劃分說明:

數據訪問層

xxx.dao包為數據訪問層的總包,對應不同的ORM框架還會有相應的子包,比如hibernate、ibatis(ibatis2)、ibatis3等子包。

***DAO.java:在dao包下這是個接口,用于規范不同框架之間的差異。

hibernate子包:

***DAOHibernate.java:hibernate數據訪問的具體實現類,該類繼承BaseDAOHibernate,從而實現對hibernate的封裝

***.hbm.xml:該文件是hibernate的映射文件

我們之所以把ibatis的兩個不同版本分兩個子包來管理,是因為ibatis2與ibatis3在底層實現上已經有很大的差異,無論是內部運行原理還是配置文件基本上是顛覆性的變化。

ibatis子包

***DAOIbatis.java:ibatis2數據訪問的具實體現類,該類繼承BaseDAOIbatis,從而實現對Ibatis2的封裝

***.ism.xml:ibatis2的映射文件,之所以后綴叫ism是指ibatis sql mapping

ibatis3子包

***DAOIbatis3.java:ibatis3數據訪問的具實體現類,該類繼承BaseDAOIbatis,從而實現對Ibatis3的封裝

***.ism3.xml:ibatis3的映射文件,之所以后綴叫ism是指ibatis3 sql mapping

業務邏輯層

業務邏輯層J-Hi采用的是spring,因此大體上與spring的標準結構完全相同

xxx.service包為業務邏輯層的總包,接口定義在該包下

***Manager.java:業務邏輯的接口類文件,缺省生成的是實體的增刪查改方法,如果在業務邏輯層中想做權限控制,可以調用*Security***()方法

xxx.service.impl包下的

***ManagerImpl.java:是業務邏輯的具體類,該類繼承ManagerImpl類。如果是特定的業務邏輯一定要在該類中通過手寫代碼的形式實現之

appContext-xxx.xml:是spring的配置文件,放在置在xxx包下

表現層

xxx.action包為表現層的總包,對應不同的表現層框架會有相應的子包,比如webwork、struts等子包。

***PageInfo.java:在action總包下,該類是與框架無關的,實際上該類記錄頁面信息的一個POJO,信息主要包括三部分:1)翻頁(page):行數、當前頁數等;2)過濾器(filter):即查詢條件;3)排序器(sorter):即正序倒序

webwork子包:

***ListAction.java:查詢頁面時所調用的動作

***.RemoveActoin.java:刪除記錄時所調用的動作

***.RemoveAllActoin.java:批量刪除時所調用的動作

***SaveAction.java:保存記錄時所調用的動作

***.ViewAllActoin.java:查看記錄時所調用的動作

xwork-xxx.xml:webwork的配置文件

與webwork相比,struts的類文件只有一個,所以的動作都是通過方法命名調用實現的,我們之所以做成兩種生成方式,是想考慮用戶會有個自不同的編程偏好,從而我們為些在不同框架間提供兩種生成模式,以適應這種編程偏好的差異

struts子包:

平臺目前舍棄了對struts1.x的支持,所以與struts相關都是以struts2為前提的

***Action.java:該Action包括了所有的頁面調用動作,通過方法命名進行調度

struts-xxx.xml:struts2的配置文件

POJO及其它

在xxx.model包為POJO的總包,一個POJO實際上是由兩個類文件組成的,即

***Abstract.java:該類是POJO的抽象類

***.java:該類是POJO的具體類

之所以這樣做是為了避免手寫的代碼會被生成器生成的文件所覆蓋

***.java:如果在定義是有枚舉實體,在model包下還有會生對應枚舉實體的常量類文件

***-conversion.properties:如果實體有從實體,也就是主從結構,生成器對應主實體生成該文件,其目的是為了適應表現層框架對頁面信息的對象化封裝

xxx--security.properties:該文件放置在xxx包下,是權限的映射信息的配置文件

頁面相關

以后生成器會根據所選模版不同,而對應生成的頁面會有很大差異,現在以目前平臺的經典模版為例

***List.jsp:查詢頁面

***Edit.jsp:編輯頁面

***View.jsp:查看頁面

***.js:與JSP文件應對應的javascript文件

源數據相關

***.hsc.xml 對應每個服務,平臺在WEB-INF/matadate目錄下都會生成一個源數據的描述文件。該文件記錄了定義了模型的全部信息。hsc的意義為:hi service config

基于平臺生成器避免手動代碼被覆蓋的解決方案

如果您采用本平臺開發,理論上80%以上的代碼都是生成出來的。這樣就帶來了一個新問題—如何保證我手動改寫或添加的代碼不會被生成器生成的文件所覆蓋?

考慮到上述問題生成器在生成文件時有如下規則:

生成器會反復生成并覆蓋以下類與文件:

i. model.original包下的抽象類

ii. action包下***PageInfo類

iii. model包下的***.hbm.xml文件

iv. 服務根包下的appContext-***.xml文件

v. 服務根包下的***-security.properties文件

vi. src根下的xwork-***.xml文件

除上述文件外,生成器對生成其它文件時均會判斷是否以存在,如果存生就不再生成也不會覆蓋已生成或手動修改類或配置文件的內容

從反復生成的文件規則上可以看出,生成器只會反復生成:

1) 與實體屬性密切相關的類或配置文件如模型的抽象類與***PageInfo、***.hbm.xml,因為實體中的屬性名稱或數量發生變化,生成器要適應對實體屬性的變化

2) 與整個服務相關的配置文件如xwork-***.xml、appContext-***.xml等等,因為一個服務下會有多個實體,生成器要適應服務下實體數據庫的增減

3) 對于那些與實體相關并且不與服務或實體屬性相關的類生成器卻只會生成一次如dao、service、action下的所有類,以保證您手寫的代碼不會被生成器所覆蓋

在基于平臺開發時,因采用生成器生成所以可以使用如下解決方案來避免您手寫的代碼或配置不會被生成器所覆蓋

i. 如果您要對模型類實現某個接口或方法,請改寫model包下的具體類,該類只會生成一次,注意千萬不要修改original包下抽象中的內容

ii. 如果您要對表現層的配置文件做修改,以xwork-test.xml為例,操作應該是1)新建一個xwork-test-customer.xml配置文件,2)將您要修改或要增加的actoin寫在該文件中(即使action名與xwork-test.xml只的action名重復也沒有關系,系統會以您的action為***優先級),3)在xwork.xml文件中引入該配置文件注意一定要放在xwork-customer.xml引用的下面。只有這樣復名的action才會優先調用您的配置

iii. 如果您要對業務層的配置文件做修改,以appContext-text.xml為例,操作應該是1)新建一個appContext-test- customer.xml配置文件,2)在該文件中加入您自己的配置信息。注意新建的文件名必須以appContext開頭。

iv. 如果您要對權限配置文件做修改,以test-security.properties為例,操作應該是1)新建一個test-customer- security.properties配置文件,2)在該文件中加入您的配置信息。注意新建的文件名必須以-security結尾。***如果您想刪除生成的配置文件中某些配置項(即對某些url或方法不要求做權限控制),推薦在整個項目做完后統一處理。

責任編輯:金賀 來源: JavaEye博客
相關推薦

2011-05-05 09:37:35

J-Hi

2011-03-10 09:17:38

J-Hi

2011-03-22 16:05:59

J-Hi

2011-03-22 09:33:39

J-Hi

2011-03-08 13:49:13

J-HiJava

2011-03-22 09:59:08

J-Hi

2023-07-21 17:08:30

2011-03-17 15:59:24

J-Hi

2017-09-06 09:26:03

Python生成器協程

2011-03-14 09:57:09

J-Hi

2015-08-25 11:07:58

2017-07-01 16:02:39

分布式ID生成器

2025-01-23 08:36:27

CSS開發工具

2011-12-23 13:42:05

JavaScript

2010-09-07 16:31:17

SQL語句insert

2021-04-22 21:15:38

Generator函數生成器

2011-05-06 09:27:49

J-Hi

2010-06-12 09:51:07

Eclipse插件Java代碼生成器slave4j1.0.

2011-03-22 09:43:06

J-Hi

2022-07-25 10:27:36

背景生成器工具前端
點贊
收藏

51CTO技術棧公眾號

wwwxxx亚洲| 国产精品日日摸夜夜爽| 午夜在线观看视频| 久草这里只有精品视频| 色综合久久88| 波多野结衣有码| 亚洲成人av观看| 亚洲免费观看高清完整版在线 | 欧美成人高清视频在线观看| 亚洲男人天堂av| 精品欧美一区二区久久久伦 | 青青在线视频| 久久精品无码一区二区三区| 亚洲a在线播放| 99久久精品国产亚洲| 久久久9色精品国产一区二区三区| 亚洲精品在线三区| 九九热99视频| 亚洲插插视频| 一区二区三区中文免费| 日本一区免费在线观看| 超碰福利在线观看| 麻豆中文一区二区| 欧美一区二区.| 日韩欧美综合视频| 精品免费一区二区| 亚洲国产高潮在线观看| 在线免费看污网站| 播放一区二区| 欧美午夜宅男影院在线观看| 天天爱天天做天天操| 免费观看成年在线视频网站| 国产91丝袜在线播放| 国产美女久久久| 久久久成人免费视频| 国内精品久久久久久久影视蜜臀| 少妇高潮久久77777| 色婷婷av777| 欧美黄色网视频| 亚洲大胆人体av| 17c国产在线| 欧美一区=区三区| 欧美性xxxxxx少妇| 国产成人无码一二三区视频| 大桥未久在线播放| 夜色激情一区二区| av动漫在线免费观看| 黄视频在线观看网站| 中文在线免费一区三区高中清不卡| 精品日本一区二区三区在线观看| 国产黄a三级三级三级| 久久精品久久精品| 国产精品一区=区| 成年人视频免费| 肉色丝袜一区二区| 国产成人久久久精品一区| 日韩手机在线视频| 久久一区亚洲| 国产精品极品尤物在线观看 | 国产又黄又粗的视频| 蜜桃一区二区三区| 亚洲人成网站777色婷婷| caopeng视频| 国内成人自拍| 色婷婷av一区二区三区久久| 国精产品一区一区| 亚州av乱码久久精品蜜桃| 成人97在线观看视频| 国产人妻精品一区二区三区不卡| 91精品二区| 欧美夫妻性生活xx| 亚洲国产精品成人无久久精品| 黑人一区二区三区四区五区| 97在线免费视频| www.中文字幕在线观看| 一区二区毛片| 国产精品久久久久久久av电影| 中文字幕一区二区三区波野结| 日本亚洲视频在线| 成人网欧美在线视频| 国产av无码专区亚洲a∨毛片| 国产成人欧美日韩在线电影| 精品国产乱码久久久久| 国产九色在线| 亚洲免费大片在线观看| 无码粉嫩虎白一线天在线观看| 热三久草你在线| 欧美色网一区二区| 日本wwww色| 九一国产精品| 久久天天躁狠狠躁夜夜爽蜜月| 2018天天弄| 国产亚洲激情| 91午夜在线播放| 日韩a在线看| 亚洲日本在线视频观看| 亚洲 高清 成人 动漫| 日本免费在线一区| 日韩电影视频免费| √天堂中文官网8在线| 亚洲免费一区二区| 亚洲影院在线看| 欧洲亚洲精品视频| 亚洲精品国产一区二区精华液| 国产熟女高潮视频| 一区二区日韩| 中文字幕亚洲欧美一区二区三区 | 奇米色一区二区| 成人免费在线看片| 人成免费电影一二三区在线观看| 日韩久久一区二区| av免费网站观看| 一本色道69色精品综合久久| 中文字幕久久久| 国产欧美日韩另类| 国内久久精品视频| 国产女主播一区二区三区| 成人午夜电影在线观看| 午夜精品福利在线| 成人性生交免费看| 丝袜连裤袜欧美激情日韩| 深夜福利一区二区| 国产尤物在线视频| 成人动漫av在线| 日韩 欧美 自拍| 亚洲最大网站| 欧美精品一区二区三区一线天视频 | 国产精品亚洲一区二区三区妖精 | 成人羞羞网站入口| 久久久免费精品视频| 亚洲一区二区视频在线播放| av综合在线播放| 中文字幕欧美日韩一区二区| 亚洲欧美小说色综合小说一区| 狠狠久久亚洲欧美专区| 先锋资源在线视频| 欧美三级美国一级| 68精品国产免费久久久久久婷婷 | 麻豆成人免费电影| 国产精品永久入口久久久| 巨大荫蒂视频欧美大片| 91久久国产最好的精华液| 国产高潮失禁喷水爽到抽搐 | 阿v天堂2018| 2019中文亚洲字幕| 在线日韩欧美视频| 九九精品免费视频| 99精品视频在线免费观看| 亚洲精品国产suv一区88| 在线观看亚洲精品福利片| 综合欧美国产视频二区| 午夜毛片在线观看| 99国产精品一区| 青青青在线视频播放| 亚洲综合网狠久久| 九色成人免费视频| 国产伦精品一区二区三区四区| 97国产一区二区| 国产精品人人妻人人爽人人牛| 亚洲最好看的视频| 欧美在线亚洲一区| 亚洲人视频在线观看| 天天av天天翘天天综合网| 毛茸茸free性熟hd| 久久最新视频| 欧美午夜欧美| 亚洲mmav| 最近免费中文字幕视频2019| 欧美激情一区二区三区免费观看| 久久精品一区二区三区四区| 污视频网站观看| 国产精品伦理久久久久久| 国产日韩在线看| 99自拍视频在线观看| 日韩一区二区精品葵司在线| 日本少妇aaa| 成人一二三区视频| 免费国产a级片| 蜜桃精品噜噜噜成人av| 国产精品免费久久久| 免费大片黄在线| 亚洲福利视频久久| 国产日产精品一区二区三区| 久久你懂得1024| 国产一二三四在线视频| 亚洲91精品| 成人免费看片网站| 成人国产精品入口免费视频| 精品精品国产国产自在线| 精品国产伦一区二区三区| 亚洲第一综合色| 最近中文字幕在线mv视频在线| 久久五月激情| 狠狠干视频网站| 色哟哟精品丝袜一区二区| 国产va免费精品高清在线| 欧美高清视频| 日韩情涩欧美日韩视频| 中文字幕手机在线视频| 亚洲视频免费在线观看| www国产视频| 蜜桃视频第一区免费观看| 国产传媒久久久| 欧美mv日韩| 成人片在线免费看| 不卡亚洲精品| 国内精品视频一区| 在线视频自拍| 亚洲精品中文字幕女同| 国产有码在线观看| 精品露脸国产偷人在视频| 99re6热在线精品视频| 成人免费观看av| 国产又黄又猛又粗又爽的视频| 激情亚洲网站| 亚洲综合第一| 香蕉久久夜色精品国产使用方法 | 久久久久女人精品毛片九一| 国产精品全国免费观看高清| aaaaaav| 国产原创一区二区| 久久国产色av免费观看| 欧美精品午夜| 亚洲欧洲一区二区| 欧美精品密入口播放| 9a蜜桃久久久久久免费| 国精品产品一区| 热99久久精品| 8x8ⅹ拨牐拨牐拨牐在线观看| 尤物九九久久国产精品的特点| 人妻中文字幕一区| 欧美丰满少妇xxxxx高潮对白| 国产 日韩 欧美 在线| 亚洲一区二区三区四区的| 一本一本久久a久久| 国产精品第四页| 午夜时刻免费入口| xfplay精品久久| 中文字幕免费在线播放| 国产精品白丝av| 精品国产午夜福利在线观看| 蜜臀精品一区二区三区在线观看| 精品一区二区中文字幕| 亚洲高清网站| 91成人综合网| 99精品国产福利在线观看免费| 国产女主播av| 亚洲色图欧美| 在线观看免费黄色片| 日韩av密桃| 一区二区视频在线播放| av在线不卡顿| 日韩av影视| 精品视频99| 日韩成人av电影在线| 日韩三级在线| 亚洲一二三区精品| 久久在线电影| 懂色av粉嫩av蜜臀av| 午夜激情一区| www.男人天堂网| 欧美婷婷在线| 激情六月天婷婷| 欧美日本精品| 久久精品国产sm调教网站演员| 欧美特黄视频| 国产91在线免费| 久久中文精品| 国产精品va无码一区二区| 免费成人在线视频观看| 波多野结衣xxxx| 国内精品视频666| 亚洲区 欧美区| 91丝袜高跟美女视频| 真实乱视频国产免费观看 | 色偷偷久久一区二区三区| 91青青草视频| 欧美疯狂性受xxxxx喷水图片| av片免费播放| 亚洲福利影片在线| 91高清在线| 欧美另类69精品久久久久9999| 乱插在线www| 青青在线视频一区二区三区| 天天综合网站| 97操在线视频| 牲欧美videos精品| 亚洲自拍的二区三区| 欧美.日韩.国产.一区.二区| 欧洲精品一区二区三区久久| 日韩av网站在线观看| 日本特黄在线观看| 91香蕉视频在线| 日韩一区二区三区四区视频| 亚洲va韩国va欧美va| 日韩 国产 欧美| 欧美色欧美亚洲另类二区| 夜夜骚av一区二区三区| 欧美成人官网二区| 日韩专区在线| 亚洲3p在线观看| 久久91超碰青草在哪里看| 国产精品久久久久久久小唯西川 | 日本午夜精品视频在线观看| 亚洲欧洲国产视频| 久久精品人人爽人人爽| 国产免费久久久久| 欧美日韩精品中文字幕| 国产强被迫伦姧在线观看无码| 日韩av在线精品| 免费黄网在线观看| 69久久夜色精品国产69| 色综合天天色| 免费看成人av| 国内自拍一区| 三上悠亚在线一区二区| 97久久精品人人澡人人爽| 亚洲怡红院在线观看| 午夜精品久久久久久久蜜桃app| 99热这里只有精品5| 亚洲深夜福利视频| 韩日毛片在线观看| 91久久国产精品| 91九色精品| 成人性生生活性生交12| av成人动漫在线观看| 精品一区二区6| 色8久久精品久久久久久蜜| 亚洲成人77777| 日韩一级裸体免费视频| 欧美freesex| 久久久久久艹| 黄色av成人| 黄色片子免费看| 国产精品毛片a∨一区二区三区| 黄色片免费观看视频| 日韩美女视频一区二区在线观看| 成黄免费在线| 欧美激情亚洲一区| 亚洲一区二区小说| 亚洲欧美日韩精品综合在线观看| 亚洲永久字幕| 中文字幕在线视频播放| 精品久久久香蕉免费精品视频| 丰满人妻妇伦又伦精品国产| 久久精品欧美视频| 精品视频在线一区二区在线| 亚洲精品一区二区三区蜜桃久| 美女黄网久久| 无套内谢大学处破女www小说| 午夜在线成人av| 外国精品视频在线观看| 97在线视频一区| 红杏成人性视频免费看| 一区二区三区四区国产| 激情欧美一区二区| 永久av免费网站| 91精品婷婷国产综合久久性色| 免费在线观看av片| 91免费精品视频| 五月综合激情| 四虎成人在线播放| 亚洲精品久久久蜜桃| www.五月天激情| 久久久精品国产| 久久精品色综合| 69sex久久精品国产麻豆| 不卡av免费在线观看| 无码人妻丰满熟妇精品区| 国产一区二区激情| 日韩免费在线电影| 黄色一级片网址| 91在线精品秘密一区二区| 亚洲欧美另类在线视频| 中文字幕无线精品亚洲乱码一区 | 中文字幕男人天堂| 色阁综合伊人av| 18国产精品| 久久国产精品网| 国产亚洲综合在线| 99久久久国产精品无码网爆| 欧美激情视频网| 日韩大尺度在线观看| 亚洲五月天综合| 亚洲激情五月婷婷| 亚洲av片在线观看| 国产精选久久久久久| 在线观看国产精品入口| 日韩av手机在线播放| 日本道精品一区二区三区| 岛国成人毛片| 欧美日韩一区综合| 久久99九九99精品| 国产一级二级毛片| 中文字幕少妇一区二区三区| 日韩精品一区二区三区中文在线 | а√天堂官网中文在线| 黑人另类av| 精彩视频一区二区三区| 国产精品第108页|