achieve serverjava全棧式WEB開發(fā)框架
achieve server是一個java全棧式開發(fā)框架。是本人在使用spring mvc之后,發(fā)現(xiàn)spring mvc很多功能不夠 強(qiáng)大和靈活的問題后設(shè)計(jì)和編寫的包涵spring mvc幾乎所有功能并加強(qiáng),用法和接口也比較類似。同時結(jié)合多年開發(fā)項(xiàng)目的經(jīng)驗(yàn)設(shè)計(jì)和增加了很多強(qiáng)大的創(chuàng)造性功能。
achieve server可以完全替代spring mvc開發(fā),并且運(yùn)行和開發(fā)效率將會大幅度提高。 同時希望更多開發(fā)者能使用和參與本項(xiàng)目。(性能參照http://my.oschina.net/absir/blog/228838)
第三方依賴有 common-lang common-io logger4j aspectj; ORM功能集成使用了hibernate
功能特色(簡單列舉,遠(yuǎn)沒有那么簡單,部分可以參考創(chuàng)業(yè)計(jì)劃書模版.doc)
1.IOC框架功能對象底層初始化就使用IOC模式,IOC分為Basis,Bean,Base三層結(jié)構(gòu),分別對應(yīng)框架功能對象,用戶對象,用戶可以替代對象三種,其中Base可以設(shè)置替代的order值。同時支持xml配置對象,默認(rèn)覆蓋代碼中定義的同類型,同注入名的對象。
2.靜態(tài)屬性和方法支持 靜態(tài)屬性和方法支持AOP之外的大多數(shù)功能,依賴注入,屬性注入,定時執(zhí)行等。支持靜態(tài)final初始化,這樣可以避免到處的Inject屬性。
3.自定義AOP方法 用戶可以自由定義AopMethodDefine對象攔截方法執(zhí)行,實(shí)現(xiàn)自定義AOP。同時框架可以直接代理初始化抽象類,抽象方法可以通過AOP攔截執(zhí)行。系統(tǒng)的AOP方法有Async異步執(zhí)行,Async Notice 異步通知(同一個時間內(nèi)只會有一個運(yùn)行),事務(wù)管理Transacation,查詢模式DataQuery
4.classPath、resourcePath,開發(fā)環(huán)境設(shè)置 框架有兩個系統(tǒng)級路徑classPath,resourcePath默認(rèn)相同為class所在目錄,可以通過配置文件指定 目前有{environment}=DEVELOP|DEBUG|TEST|PRODUCT四種 支持的properties文件讀取,默認(rèn)讀取config.properties和{environment}..properties和指定resoucePath下的全部properties文件。 properties文件支持環(huán)境選擇表達(dá)式模式,字符串拼接模式,和數(shù)組模式,同時可以自定義屬性值處理(可以指定初始化的BeanClass等)
5.抽象Input MVC socket,http請求等可以同用一個方法,同時支持?jǐn)r截器(Interceptors),之前方法(Before),之后方法(After),同時可以設(shè)置返回值處理對象。
6.配置文件直接讀取可以支持java對象在Xls文件的相互轉(zhuǎn)化,支持.conf文件初始化對象。 參照 com.absir.appserv.configure.xls 和 com.absir.appserv.configure.conf包內(nèi)容。
7.Crud增強(qiáng)模式 在傳統(tǒng)的Crud的基礎(chǔ)上,增加對Entity對象的屬性值Crud方法的配置,如上傳文件,生成更新時間,加密密碼等。
