一款通過Javabean來開發WEB UI的框架
以下一些場景是否會出現在您的工作當中:
以上提到的是我經常遇到的困惑,在如今前後端分離的大潮當中,Java也幾乎放棄了Web UI框架的投入,就算身為Java開發人員,我們也很少使用Struts、JSF等Java UI框架來開發,JSP也很少寫了。 但在一個Javaer的日常中,就算一百個不願意,還是會遇到UI的需求,但打開搜索引擎時,滿滿的都是層出不窮的新技術。也許就連身在其中的人也很難說清楚什麼是目前流行的Web框架。
說到前後端分離,這也是我常常思考的場景,如果簡單把我們開發的具備UI的系統分為兩類:
那麼外部系統往往都有專業的UI工作人員甚至是UI團隊來負責,而內部系統則不一定了,那麼這時候前端開發的任務便落到了後端工程師的身上。
這種情況下,前後端分離就變得不那麼美了,這意味著:
最後在你惡補知識後花了大力氣做出了前端頁面,可能依然被噴。
我們的內部系統往往不需要絢麗的效果、複雜的動畫、高度訂製的結構,他可能僅僅是後台服務的一個入口,或者管理一些配置,又或者是管理一些簡單的數據對象(如用戶、訂單、商品之類的),也可能是呈現一些常見的二維報表。他們最多的操作僅僅是對數據對象的CRUD。 故此,我想到了是否能夠通過Java反向生成前端代碼,在此之前已經有GWT等框架這麼做過了,但代碼入侵性過強。

git clone https://github.com/magic-bunny/beanuicd beanuimvn installbeanui/vue目錄拷貝到任意目錄%your_vue_path%cd %your_vue_path% and npm install<workPath>%your_vue_path%</workPath>cd beanui/demo and mvn installjava -jar demo-1.0.jarhttp://localhost:8080 <mode>dev</mode>cd beanui/demomvn install開始構建一個BeanUI工程需要建立一個router.yml
注意:router.yml不是必須的,如果不配置,框架會掃描所有包含
@Component的註解類並進行轉換,此時需要配置path屬性,若不配置則為/
如果需要一個最簡單的BeanUI項目,可參看single-demo
path : /test
component : demo.view.layout.card.CardComponent name : root
children :
- title : home
icon : star
component : demo.view.layout.card.CardComponent path : /login
component : demo.view.LoginComponent
children :
- title : home
icon : star
component : demo.view.layout.card.CardComponent 需要了解各個控件在Javabean當中的寫法,請點擊
注意:由於使用了Element UI(餓了麼),因此幾乎可以完全參看Element UI的組件說明
需要了解Maven插件的用法,請點擊
需要了解加強庫的用法,請點擊
BeanUI is licensed under the MIT license. See LICENSE for further details.