java開發要掌握的技術

1、主流框架要掌握如(ssh),沒事可以瞭解下jsf,shale,seam,richface,jpa 框架。 

2、對於各種緩存的分析利弊,能靈活運用 如memcache,Oscache,ehcache,內存數據庫timesken,嵌入數據庫b-db等。 

3、向網絡、通信方面發展,比如說寫個類似於mina的框架,寫寫類似於遊戲服務端的東西,自己可以寫協議,支持高併發。 

4、掌握幾種主流數據庫,oracle,sql,mysql等,可以書寫複雜的存儲過程,mysql之類的分佈、集羣掌握一下。 

5、會用輕量級別的SOA框架,如serviceMix,Mule等,JMS消息隊列需要掌握。 

6、深入瞭解當前業務系統,爭取做到這方面的專家。 

7、spring的AOP,IOC機制,hibernate的反射機制。 

--------------------------------------------------------------------------- 

對相關技術作簡單說明: 

(SSH)Struts、spring、 Hibernate在各層的作用: 

1)struts 負責 web層 

ActionFormBean 接收網頁中表單提交的數據,然後通過Action 進行處理,再Forward到對應的網頁。 在struts-config.xml中定義, ActionServlet會加載。 

2)spring 負責業務層管理,即Service(或Manager). 

1. service爲action提供統計的調用接口,封裝持久層的DAO,。 

2.可以寫一些自己的業務方法。 

3.統一的javabean管理方法 

4.聲明式事務管理 

5.集成Hiberante 

3)Hiberante,負責持久化層,完成數據庫的crud操作 

hibernate 爲持久層,提供 OR/Mapping。 

它有一組 .hbm.xml文件和 POJO,是跟數據庫中的表相對應的。然後定義DAO,這些是跟數據庫打交道的類,它們會使用PO。 

在struts+spring+hibernate的系統中, 

對象的調用流程是:jsp-> Action-> Service ->DAO ->Hibernate。 

數據的流向是 ActionFormBean接受用戶的數據,Action 將數據從 ActionFromBean 中取出,封裝成VO或PO, 再調用業務層的Bean類,完成各種業務處理後再forward。而業務層Bean收到這個PO對象之後,會調用DAO接口方法,進行持久化操作。 


--------------------------------------------------------------------------- 
memcache 

Memcache是什麼 
Memcache是danga.com的一個項目,最早是爲 LiveJournal 服務的,目前全世界不少人使用這個緩存項目來構建自己大負載的網站,來分擔數據庫的壓力。 
它可以應對任意多個連接,使用非阻塞的網絡IO。由於它的工作機制是在內存中開闢一塊空間,然後建立一個HashTable,Memcached自管理這些HashTable。 
Memcache官方網站:http://www.danga.com/memcached,更多詳細的信息可以來這裏瞭解 

爲什麼會有Memcache和memcached兩種名稱? 
其實Memcache是這個項目的名稱,而memcached是它服務器端的主程序文件名,知道我的意思了把~~~~。一個是項目名稱,一個是主程序文件名,在網上看到了很多人不明白,於是混用了。 

Memcache的安裝 
分爲兩個過程:memcache服務器端的安裝和memcached客戶端的安裝。 
所謂服務器端的安裝就是在服務器(一般都是linux系統)上安裝Memcache實現數據的存儲 
所謂客戶端的安裝就是指php(或者其他程序,Memcache還有其他不錯的api接口提供)去使用服務器端的Memcache提供的函數,需要php 添加擴展。 

具體的配置大家可以參考: 
Linux下的Memcache安裝:http://www.ccvita.com/257.html 
Windows下的Memcache安裝:http://www.ccvita.com/258.html 
Memcache基礎教程:http://www.ccvita.com/259.html 
Discuz!的Memcache緩存實現:http://www.ccvita.com/261.html 
Memcache協議中文版:http://www.ccvita.com/306.html 
Memcache分佈式部署方案:http://www.ccvita.com/395.html 


二級緩存 

    * EHCache 是一個快速的、輕量級的、易於使用的、進程內的緩存。它支持read-only和read/write緩存,內存和磁盤緩存。但是不支持集羣 (Clustering)。 
    * OSCache 是另外一個開源的緩存方案。它同時還支持JSP頁面或任意對象的緩存。OSCache功能強大、靈活,和EHCache一樣支持read-only和 read/write緩存、支持內存和磁盤緩存。同時,它還提供通過JGroups或JMS進行集羣的基本支持。 
    * SwarmCache 是一個簡單的、基於JavaGroups提供集羣的緩存方案。支持read-only和nonstrict read/write緩存。這種緩存適用於讀操作遠遠高於寫操作頻率的應用。 
    * JBoss TreeCache 是一個強大的、可複製(同步或異步)和支持事務的緩存。如果你需要一個真正的支持事務的緩存架構,使用這個方案吧。 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章