粘貼不了新的東西(粘貼突然不能用了)
744
2025-04-04
背景:
開發兄弟在開發過程中肯定會遇到這樣的場景:
1. 尼瑪,這個功能不是和我上次做的A功能差不多嘛;
2. 每次都需要干苦力,最討厭敲鍵盤寫底層的VO;
3. 簡單的CRUD操作,太low level了,敲代碼敲的讓人累覺不愛咯;
4. 功能雷同,復制粘貼太枯燥了,能不能給點有技術含量的活兒;
。。。。。
那么,問題來了,有沒有一個好的idea?將這些簡單、重復、枯燥的編碼工作一股腦全做了,開發人員把精力集中在復雜的功能邏輯處理上來,從而大大提高開發效率,也避免了犯一些低級的、共性的編碼問題
思路:
(以Spring+MyBatis架構為例)
1. 假定每個業務功能模塊都需要CRUD操作(通用接口)
2. 每個業務實體都可以抽象成系統實體對象(VO)
3. 每個系統實體對象都會和數據庫表有對應關系,或者是一個抽象的實體(無法從數據庫關聯)
4. 數據庫的CRUD操作其實都是類似的,只是針對的數據庫表不同列不同而已(mybatis xml,Dao)
5. 基本的增刪改查接口和實現類:命名可保持一致性,實現類的邏輯也大部分通用(接口類和實現類)
6. 前端頁面上,一般按照系統風格和架構風格上都會保持一致,菜單區、查詢區和數據操作區的一致性
7. 前端對業務數據的請求方式在定義上保持一致性
8. 基于以上幾點,我們可以抽取共性,轉換成設計編碼的模板(如:VO對象模板、數據庫mybatis操作的xml模板、Dao層接口模板、業務相關的接口類和實現類模板、前端頁面模板、等等)
9. 借助freemarker強大的模板功能,將實體對象綁定到模板中,從而生成前后端完整的一套業務邏輯代碼
10. 將代碼生成的功能以插件的形式提供給IDE,如Eclipse Plugin
11. 借助JAVA JDBC驅動,根據數據庫表名獲取表結構信息;如果實體不依賴數據庫表,則可通過外部文件導入的方式,獲取的實體的基礎屬性信息
12. 利用JAVA Swing 實現可操作性的交互功能界面,一鍵生成全套代碼
技術點:
1. Eclipse插件開發
2. FreeMarker通過ftl模板生成代碼文件
---------------------------------
功能升級:
這兩天對原有的插件做了次升級,主要源于以下目的:
1. 原插件功能提供的代碼模板比較固定,開發人員如果需要修改模板,必須打開插件jar包修改ftl文件;原插件不支持靈活配置模板;
2. 因自身插件開發能力有限,為方便程序的配置功能可擴展,將插件轉換成客戶端小工具程序;
3. 將所有模板信息通過xml文件進行配置管理(后臺自動解析xml配置信息),支持多套模板靈活切換,亦可自定義新增模板,不受程序限制
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。