Hasor 0.x Version

2018-09-28 11:38 更新

Hasor-Core v0.0.14 (2015-06-18)


新增

01. Settings接口增加merageXmlNode方法用于匯聚XmlNode。

改進(jìn)

01. JdbcTemplate 類中的公共方法分離出一個新的基類JdbcConnection。
02. Result - 添加Message消息傳輸機(jī)制。
03. 放棄Hasor-AR項目,刪除AR相關(guān)的軟件包,目前為止Hasor-DB原生不支持ORM。后續(xù)擴(kuò)展可以支持Hibernate,ibatis,mybatis。
04. 保留Hasor-AR項目中,PageResult、Paginator兩個工具類

修復(fù)

01. Fix 日志輸出了格式化字符。
02. Fix 多配置文件時候,主配置文件失效問題。
03. Fix 相同模塊在不同的“static-config.xml”配置文件中出現(xiàn)時,解決重復(fù)加載問題。
04. 掃清,F(xiàn)indBugs 掃描出來的Bug。

Hasor-Core v0.0.13 (2015-05-09)


改進(jìn)

01. 刪除封裝的log,采用slf4j。jdk自帶的log因?yàn)椴捎昧薙ystemClassLoader導(dǎo)致log失敗。
02. 修改測試用例,取消log的封裝。

Hasor-Core v0.0.12 (2015-05-09)


簡介

01. all-in行動,db和web項目被合并到core,同時合并一些quick插件。

DB

02. 新增 orm 工具包,攜帶了一個及其簡易的數(shù)據(jù)庫操作框架。
03. 新增 SimpleDBModule 工具類,便于為一個數(shù)據(jù)源配置 事務(wù)管理器。
04. LocalDataSourceHelper 支持每個線程綁定多個數(shù)據(jù)庫連接。
05. 支持7種事務(wù)傳播屬性。
06. 支持隔離級別設(shè)置。
07. 支持多數(shù)據(jù)源。
08. 支持多數(shù)據(jù)源事務(wù)控制(非JPA)
09. 提供@Transactional簡單的聲明式事務(wù)注解。
10. 開發(fā)者可以自定義事務(wù)攔截器,自定義注解攔截事務(wù)。
11. 新增 SavepointDataSourceHelper 接口,并且 DefaultDataSourceHelper 類支持該接口。
12. 新增可以通過 DataSourceUtils 獲取當(dāng)前連接的方法。
13. 通過 net.hasor.db.jdbc 軟件包為 Java 應(yīng)用程序提供了一個輕量化 JDBC 操作接口。
14. 軟件包 net.hasor.db.datasource 為 Java 應(yīng)用程序提供了數(shù)據(jù)源服務(wù)。
15. 增加事務(wù)管理器、事務(wù)攔截器

Web

16. 增加 shutdown 生命周期階段。
17. 更換LoggerHelper為日志輸出組件。
18. 環(huán)境變量實(shí)現(xiàn)接口調(diào)整,應(yīng)用Core改動。
19. 增加 MimeType 獲取工具M(jìn)odule。
20. AnnoWebAppContext 類中增加,下面幾個接口的綁定。
    ServletRequest、HttpServletRequest、ServletResponse、HttpServletResponse、HttpSession、ServletContext
21.新增 JSP Tag 標(biāo)簽庫,通過 Hasor JSP 標(biāo)簽庫可以方便基于 jsp 的 Hasor 開發(fā)。

Quick

22. 新增@Aop注解插件,用于簡化Aop聲明,只要類通過binder綁定到系統(tǒng)中就會支持。
23. 新增Web請求響應(yīng)編碼設(shè)置,默認(rèn)為UTF-8。
24. 新增資源插件,可以從classpath\path\zip中提取資源作為web響應(yīng)。

改進(jìn) 01.StandardEventManager 改為無鎖方式實(shí)現(xiàn)。

02.刪除封裝的log,采用slf4j。jdk自帶的log因?yàn)椴捎昧薙ystemClassLoader導(dǎo)致log失敗。

Hasor-Core v0.0.11 (2015-04-24)


修復(fù)

01. LoggerHelper,修復(fù)當(dāng)多次調(diào)用log輸出時產(chǎn)生堆棧溢出問題。

Hasor-Core v0.0.10 (2015-04-03)


新增

01. 添加org.more.future工具包,用于實(shí)現(xiàn) java.util.concurrent.Future 接口功能。
02. 新增一個 ApiBinderWrap類。
03. 增加 SettingsWarp 工具類。
04. 增加 shutdown 生命周期階段。
05. 增加 apache 中 toStringBuilter 工具到 org.more.builder。
06. 增添業(yè)務(wù)基礎(chǔ)包org.more.bizcommon(將來如果發(fā)展大了會分離出去,目前就幾個類)
07. 增添 StartModule 接口。

改進(jìn)

01. 修復(fù)當(dāng)程序工作在特殊 ClassLoader 下例如 (Web容器中)時,MoreClassLoader類導(dǎo)致 Class 重復(fù)加載問題。
02. 優(yōu)化,AbstractSettings 實(shí)現(xiàn)細(xì)節(jié),解決在多線程下可能引發(fā)的 HashMap 死鎖問題。
03. AopClassConfig、MethodClassConfig、MethodClassConfig 類增加了一個無參的構(gòu)造方法。
04. ClassUtils 增加 getSuperClassGenricType 方法以獲取泛型信息。
05. 內(nèi)部實(shí)現(xiàn)增加 CustomerProvider接口。
06. 內(nèi)部實(shí)現(xiàn)增加 MetaDataAdapter類。
07. 不再依賴slf4j日志包,日志輸出采用jdk自帶的,至此 Hasor實(shí)現(xiàn)了0依賴。
08. 分離出專用的 log 工具包 org.more.logger。
09. 環(huán)境變量實(shí)現(xiàn)接口調(diào)整,接口有刪減。原有接口當(dāng)設(shè)置Java系統(tǒng)屬性之后,環(huán)境變量組建不能識別它(Bug)。
10. 修復(fù) ScanClassPath 類無法正確掃描到父類中接口實(shí)現(xiàn)的Bug。

Hasor-Core v0.0.9 (2014-09-21)


新增

01. Hasor 的依賴注入使用 InjectMembers接口。

改進(jìn)

01. 優(yōu)化 AppContext 接口實(shí)現(xiàn)類的層次關(guān)系。
02. AppContext,不再支持 addModule 這種形式添加模塊,改為通過 start 方法傳入。
03. AppContext,不在支持 getParent()方法。
04. context部分重構(gòu),精簡了設(shè)計。
05. Hasor 不再依賴 Guice or Spring。

Hasor-Core v0.0.8 (2014-07-26)


新增

01. 確立類型綁定機(jī)制。
02. 確立Bean機(jī)制。
03. 內(nèi)置Aop接口,不再直接依賴Aop聯(lián)盟的包。
04. 支持Scope。
05. 支持Provider。
06. AopMatchers類型新增subClassesOf方法。匹配給定類型的子類(或?qū)崿F(xiàn)了的接口),遷移至Hasor-Quick項目

改進(jìn)

01. Settings接口的 getNameSpace 方法改名為 getSetting。
02. AppContext接口的 findBean、findProvider 方法更名 findBindingBean、findBindingProvider
    --使其接近ApiBinder接口中bindingType方法的命名以便于開發(fā)者理解。
03. 所有Plugins都移動到Hasor-Quick項目中。
04. 將Hasor中start、stop生命周期,相關(guān)的支持全部刪除,不再支持插件生命周期
05. 所有主要接口50%以上進(jìn)行改進(jìn),改進(jìn)的目的是不再強(qiáng)制依賴Guice
06. 添加Provider接口、EventContext接口
07. 刪除ModulePropxy類、刪除啟動依賴檢查功能
08. 瘦身(去掉JSON包、Ognl包、其它一些工具包)

Hasor-Core v0.0.7 (2014-01-17)


修復(fù)

01. 修復(fù) AbstractAppContext 當(dāng)類掃描器掃描不到 AppContextAware 接口實(shí)現(xiàn)類時能引發(fā)整個doStart階段的退出。
02. 修復(fù)當(dāng)使用 Listener 注解注冊容器事件時,導(dǎo)致ContextEvent_Initialized、ContextEvent_Started 兩個事件無法正確調(diào)用的問題。
03. 修復(fù)當(dāng)配置文件中,根節(jié)點(diǎn)下第一層節(jié)點(diǎn)名稱如果與根節(jié)點(diǎn)同名,導(dǎo)致的數(shù)據(jù)混亂問題。
04. 修復(fù) new AnnoStandardAppContext() 引發(fā)的Bug。
05. 修復(fù) FileEnvironment 在創(chuàng)建 FileSettings 時候?qū)е轮貜?fù)加載配置文件的問題。

新增

01. Settings 通過映射 key "." 可以取得根節(jié)點(diǎn)。
02. 新增 @GlobalAop 配置全局?jǐn)r截器。
03. 新增 PluginHelper 工具類,可以將一個插件轉(zhuǎn)換成為 Hasor 的 Module。
04. Settings 接口新增可以設(shè)置新值的功能。
05. Environment 接口新增可以設(shè)置包掃描范圍的方法。
06. AbstractAppContext 類新增 addGuiceModule 方法可以直接將 Guice 模塊加入到 Hasor 中。

改進(jìn)

01. Settings接口的 getNameSpace 方法改名為 getSetting。
02. 改造 Hasor 的類掃描機(jī)制,從 Class.forName 改為字節(jié)碼解析(性能上仍需要進(jìn)一步優(yōu)化)。
03. 部分接口方法名稱更換。
04. 修改 Cache 接口的 clean 方法名為 cleanCache,以避免和 Map 接口沖突。
05. GlobalProperty接口更名為FieldProperty

Hasor-Core v0.0.6 (2013-12-21)


修復(fù)

01. 改進(jìn) 當(dāng)使用 JSON 將(List、Map、基本類型)類之外的類型嘗試序列化時會得到一個異常。修復(fù)這個問題,當(dāng)遇到這種情況工具將使用 JSONPojoConvertor 對其進(jìn)行序列化。

新增

01. 新增在注冊 ServicesRegisterHandler 時使用 Class 類型。注冊的 Handler 支持 依賴注入。
02. AppContext 接口新增 lookUpRegisterService 方法??梢酝ㄟ^該方法取得注冊的 ServicesRegisterHandler 對象。
03. BeanUtils 工具類新增 copyProperty 用于做屬性拷貝的方法。(支持POJO 與 Map 之間相互拷貝)

改進(jìn)

01. 改進(jìn) Hasor 類使其輸出日志時不在必須通過 new Exception 來確定方法調(diào)用位置,從而提升日志輸出性能。
02. 改進(jìn) AopInterceptor 類中用于緩存作用的 methodInterceptorMap 屬性,將其從 HashMap 類型改為 WeakHashMap。
03. 改進(jìn) AppContext 當(dāng)處理 ServicesRegisterHandler 的注冊和解除注冊時新增 boolean 返回值。
04. Hasor 類,歸為 core 軟件包。
05. 改進(jìn) ConverterUtils 當(dāng)使用“ConverterUtils.convert(Date.class, null);”轉(zhuǎn)換時間日期時出現(xiàn)異常。
06. 刪除 Aware 插件,該插件的 AppContextAware 接口將由 “net.hasor.core” 直接支持。
07. 從 “net.hasor.core” 中剔除雞肋的 ServicesRegisterHandler 功能。該功能于 v0.0.4 版本加入。
08. AbstractAppContext 梳理內(nèi)部方法調(diào)用過程,通過受保護(hù)的方法暴露一些內(nèi)部執(zhí)行過程。
09. 所有容器事件發(fā)送都改為 “當(dāng)完成某個階段的任務(wù)之后在引發(fā)階段事件”

Hasor-Core v0.0.5 (2013-11-25)


新增

01. 新增 DomXmlAccept 工具類,將 Xml 文件轉(zhuǎn)換為  XmlNode 接口形式的 Dom 樹。

改進(jìn)

01. 修復(fù) DecSequenceMap 工具類,removeAllMap 方法引發(fā) ConcurrentModificationException 異常的問題。
02. 修復(fù) ApiBinderModule 類構(gòu)造方法沒有處理 Binder 參數(shù)導(dǎo)致插件加載失敗的問題。
03. 修改 AbstractAppContext 類的 Guice 創(chuàng)建方法 createInjector。
04. Cache 接口方法有關(guān) key 參數(shù)從 String 類型更換為 Serializable。并增加了一些方法。
05. 修改 StandardContextSettings 類,確保位于jar包中的“static-config.xml”資源在合并時優(yōu)先級低于file。

Hasor-Core v0.0.4 (2013-11-11)


新增

01. Environment 接口新增 isDebug 方法,用于表示應(yīng)用程序啟動是否為 debug 模式。
02. Hasor 類新增 isDebugLogger、isErrorLogger、isWarningLogger、isInfoLogger 方法用于判斷日志是否支持該級別的輸出。
03. 原有 Hasor 類中 debug、error、warning、info 日志輸出方法會判斷響應(yīng)級別的日志輸出是否支持。
04. 增加 Hasor 類中 trace、isTraceLogger 方法,用于處理 Trace 日志級別。
05. 增加服務(wù)注冊機(jī)制,詳見 ServicesRegisterHandler 接口用法。
06. 增加 ModuleEvent_Start、ModuleEvent_Stoped事件。
07. ApiBinder、AppContext 接口中新增一些有關(guān) BindingType 的工具方法。
08. 新增 Cache 插件。
09. 新增 Aware 插件,提供給不方便通過 Inject 注解注入 AppContext 接口的類,使其在 AppContext 在 Start 的第一時間得到注入。
10. 新增 日志輸出,可以看到插件列表,并且展示了插件是否加載成功。

改進(jìn)

01. 變更 ContextEvent_Stop 事件為 ContextEvent_Stoped。
02. 刪除 giftSupport 屬性的配置,Gift 擴(kuò)展方式不在通過配置文件形式啟用。
03. Gift 體系更改為 Plugin,原本 Gift 是作為模塊的一個補(bǔ)充,目前改為框架功能插件體系。
04. 代碼大面積優(yōu)化。

Hasor-Core v0.0.3 (2013-10-09)


改進(jìn)

01. 修改根POM改為 0.0.2 該版本可以處理 GBK 編碼下 Javadocs 生成。
02. 改進(jìn)JavaDoc內(nèi)容的質(zhì)量。

Hasor-Core v0.0.2 (2013-09-29)


修復(fù)

01. 修復(fù):StandardAppContext調(diào)用無參構(gòu)造方法引發(fā)異常的問題,同時修改幾個核心類的構(gòu)造方法。

新增

01. 新增以模塊類名為事件名,當(dāng)執(zhí)行 Init\Start\Stop時候,拋出對應(yīng)事件。
02. 增加 Gift 體系用于擴(kuò)展非模塊類小工具。

改進(jìn)

01. DefaultXmlProperty類更名為DefaultXmlNode,并且XmlNode增加幾個常用方法。
02. 刪除所有Mapping部分支持,相關(guān)代碼移到demo作為例子程序。
03. AbstractAppContext類中有關(guān)事件的聲明移動到 AppContext 接口中。
04. Before 注解更名為 Aop 注解,性能進(jìn)行了優(yōu)化。
05. ASM升級為4.0、ClassCode連帶升級。

Hasor-Core v0.0.1 (2013-09-15)


新增

01. 增加@GuiceModule注解,可以標(biāo)記在com.google.inject.Module接口上,可以將Guice模塊引入到Hasor中。

改進(jìn)

01. Hasor-Core:80%以上代碼重構(gòu),重構(gòu)主要涉及內(nèi)容的是結(jié)構(gòu)性重構(gòu)。
02. InitContext接口功能合并到Environment接口中。
03. ApiBinder接口增加模塊依賴管理。
04. HasorModule接口更名為Module。
05. HasorEventListener接口更名為EventListener。
06. XmlProperty接口更名為XmlNode。
07. config-mapping.properties屬性文件的解析不在是必須的。
08. 重構(gòu)Settings實(shí)現(xiàn)。Xml解析方式不在依賴ns.prop屬性文件,實(shí)現(xiàn)方式改為Sax。
09. Module注解,更名為AnnoModule。
10. 重構(gòu)AppContext實(shí)現(xiàn)。
11. 包空間整理,所有包都被移動到net.hasor下,整理License文件。刪除殘余的、無用的類。
12. 刪除所有與Web相關(guān)的支持,這部分功能全部移動到Hasor-Web(Hasor-MVC更名而來)。
13. 生命周期:合并onReady和onInit兩個生命周期階段方法,刪除銷毀過程。
14. 工具包修訂:ResourcesUtils工具類中,類掃描代碼優(yōu)化。
15. 工具包修訂:DecSequenceMap.java、DecStackMap.java兩個類文件增加一些有用的方法。
16. 所有Demo程序都匯總到demo-project項目中。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號