?? java的學(xué)習(xí)方向.txt
字號:
Java的學(xué)習(xí)方向
網(wǎng)輝 @ 06-30 10:51
掌握J(rèn)ava絕對是一條漫漫長路,要選好方向。在全面了解的基礎(chǔ)上有所專攻。
1.掌握J(rèn)AVA的OOD,OOP方法; OO程序設(shè)計基礎(chǔ),J2sdk基礎(chǔ)、Java 面向?qū)ο蠡A(chǔ)、Java API使用、數(shù)據(jù)結(jié)構(gòu)及算法基礎(chǔ)、Java AWT圖形界面程序開發(fā);
2.J2SE平臺Java程序設(shè)計,包括Swing圖形程序設(shè)計, Socket網(wǎng)絡(luò)應(yīng)用程序設(shè)計,對象序列化,Java 常用數(shù)據(jù)結(jié)構(gòu),Applet,流和文件,多線程程序設(shè)計;
3. Java Web應(yīng)用編程,包括 Java Oracle 編程,即JDBC;Java Web編程,包括JSP、Servlet,JavaBean;Java應(yīng)用編程,包括Weblogic、Websphere、Tomcat、JSP 1.3/2.0和Servlet 2.3/2.4編程及其在Web層的應(yīng)用;
4.MVC設(shè)計模式和STRUTS架構(gòu)MVC與Struts ;
5.J2EE程序、J2ME; J2EE體系結(jié)構(gòu)和J2EE技術(shù)、EJB;Weblogic使用、 JBuilder開發(fā)調(diào)試;
6.Java和XML,包括Java Web Service,Java XML, 業(yè)界主流XML解析器程序設(shè)計;
7.Java結(jié)合UML系統(tǒng)建模型和設(shè)計(Rational Rose 200x)軟件工程和業(yè)界開發(fā)規(guī)范;CVS版本控制、Java Code書寫規(guī)范。
要與專業(yè)結(jié)合,J2SE的基礎(chǔ)一定要扎實(shí)。
*********************************************************************************************
如何成為一個成功的Jsp程序員?
發(fā)布日期:2004-05-13 作者:轉(zhuǎn)貼 閱讀人次:5672
一個普通的錯誤是把JSP當(dāng)作簡化的 Java。它不是,(事實(shí)上, JSP 是簡化的 servlets 。)程序員通常試著沒有學(xué)習(xí)要求的支持技巧而 直接學(xué)習(xí) JSP 。JSP 是一個銜接技術(shù),并且成功地連接你需要理解的另外的技術(shù)。如果你已經(jīng)知道 Java,HTML 和 Javascript,這意味著 JSP 將確實(shí)是簡單的。
需要成為一個成功的 JSP 程序員可以參考這個時間表。請注意下列:
*忽略你已經(jīng)熟悉的步驟。
*訓(xùn)練的時間只是代表學(xué)習(xí)好足夠的基礎(chǔ)時間,這樣才能轉(zhuǎn)移到下一步。
1、建立并且理解你的Web Server。
因?yàn)锳pache 是免費(fèi)的并且在大多數(shù)平臺上工作,為訓(xùn)練目的推薦 Apache。
安裝時間:2 天。
2、保證你理解 HTML / XHTML 。
你將需要了解html基礎(chǔ), 特別是 HTML 布局中的table的使用。XHTML 不久將代替 HTML ,學(xué)習(xí) XHTML 的基礎(chǔ)是一個好主意。許多程序員通過 HTML IDE 學(xué)習(xí) HTML ( 集成開發(fā)環(huán)境 ) 。因?yàn)榇蠖鄶?shù) HTML IDE產(chǎn)生混亂的HTMl語法,所以花時間學(xué)習(xí)手工寫作html是很有必要的。因 為你將會使用 JSP 和 HTML 混合編程,精通HTML語法是重要的。所以,你必須能流利地寫 HTML 。
訓(xùn)練時間:2 ~ 4 個星期。
3、開始學(xué)習(xí) Java 。
開始學(xué)習(xí) Java 1.4 理解 Java 基礎(chǔ)是很重要的。不用擔(dān)心學(xué)習(xí)Swing或 Java 的圖形方面,因?yàn)樵贘SP 中你不會使用這些特征。集中精力 在 Java 工作的細(xì)節(jié),學(xué)習(xí) Java 的邏輯,也在 Java Bean上花時間。學(xué)習(xí)Applet是好的, 但是就象Swing, JSP 的大多數(shù)應(yīng)用將不使用小程 序。
訓(xùn)練時間:3 ~ 6 個星期。
3、學(xué)習(xí) JavaScript
學(xué)習(xí)怎么將 JavaScript在HTML中驗(yàn)證輸入的Form元素。也學(xué)習(xí) JavaScript怎么能在一 HTML 頁以內(nèi)修改Form的元素。最后要求你能從一
HTML 頁內(nèi)的事件中觸發(fā) JavaScript Function。
訓(xùn)練時間:一~ 2 個星期。
4、學(xué)習(xí)并且理解你的Web Server的更好的細(xì)節(jié)。
熟悉Web Server的特征,這是很重要的。
訓(xùn)練時間:2 天。
5、建立你的 JSP Server
我推薦以Tomcat開始。它可以很好地運(yùn)行JSP程序。當(dāng)你不能在生產(chǎn)使用Tomcat時,學(xué)習(xí)盡可能多的知識以便于更好的運(yùn)行程序。另外, 許多 JSP 程序員使用Tomcat。因此當(dāng)你遇到一個問題時,你將容易發(fā)現(xiàn)幫助。
安裝時間:一~ 2 天。
6、開始學(xué)習(xí) JSP 。
基本的 JSP 學(xué)習(xí)通過的步驟 1到步驟6可以完成, 然后使用 JSP 對象和腳本寫 JSP 程序來聯(lián)系。學(xué)習(xí) JSP 的另外一個方面可以學(xué)習(xí)怎么創(chuàng)建一個分布式的應(yīng)用程序。
訓(xùn)練時間:4 ~ 6 個星期。
7、學(xué)習(xí)更多的 JSP server。
沒有關(guān)于更多的 JSP Server當(dāng)然也可以運(yùn)行jsp程序。然而, 許多 JSP server都由自己特殊的特征,可以讓你更好的理解你的JSP 工程。
學(xué)習(xí)更多的Jsp server如何處理jsp程序是有必要的。同樣也可以優(yōu)化你的 JSP 應(yīng)用程序,并且使之運(yùn)行得更快而不出任何問題。
訓(xùn)練時間:2 ~ 7 天。
8、 學(xué)習(xí) JDBC 。
JSP 大多數(shù)應(yīng)用將使用數(shù)據(jù)庫,JDBC 被用于數(shù)據(jù)庫連接。經(jīng)常忽略的一個事實(shí)就是,每個 JDBC Driver 所支持的東西是相當(dāng)不同的。了 解并熟悉在jsp工程上被使用的 JDBC driver的細(xì)節(jié)是很重要的。(有時這部分的學(xué)習(xí)被包含在前面 Java 或JSP的學(xué)習(xí)中了 。)
訓(xùn)練時間:1~ 2 個星期。
到現(xiàn)在,你已經(jīng)成為了熟練的 JSP 程序員。仍然有很多需要學(xué)習(xí),你可以考慮擴(kuò)展你的知識比如 DHTML , XML ,java證書, JSP Tag Libraries 或 Servlets , 看你想要造什么類型的網(wǎng)站而決定了。
這些訓(xùn)練是JSP 的核心。你不必都學(xué)習(xí)上面所有的, 取決于你在工程中分配到什么任務(wù)和你已經(jīng)有什么知識。但是這是我成功地訓(xùn)練程序員 的時間表。關(guān)鍵的單元是時間。平均的說, 5 個月時間確實(shí)能夠訓(xùn)練一個人 ( 從開始到完成 ) 成為一個對jsp熟悉程序員。5 個月時間似乎很長,但要成為一個資深的WEB程序員所學(xué)的東西遠(yuǎn)遠(yuǎn)不止這一些。
也許你認(rèn)為這樣學(xué)習(xí)一種語言花費(fèi)的時間太長了,因?yàn)閷W(xué) ASP 會更快、時間會更短。 但是學(xué)習(xí) ASP 不需要學(xué)習(xí)java的。
**************************************************************************************
jsp設(shè)計模式
發(fā)布日期:2002-04-14 作者:bingo 閱讀人次:29947
jsp設(shè)計模式
一:介紹
記得初學(xué)jsp的時候,總喜歡把他和asp,php去比較,也習(xí)慣于使用asp的開發(fā)模式去寫jsp,后來才發(fā)現(xiàn)這真是很傻的做法,其實(shí)jsp一出了來就已經(jīng)用MVC模式了。下面我就簡要說說jsp設(shè)計使用MVC來設(shè)計。
二:MVC介紹
MVC其實(shí)是模、視圖、控制的縮寫,也就是說在使用jsp時,有相應(yīng)的文件去實(shí)現(xiàn)相應(yīng)的操作。通常jsp只負(fù)責(zé)view也就是只負(fù)責(zé)顯示頁面。業(yè)務(wù)邏輯等有bean(ejb)去實(shí)現(xiàn)。下面討論的是不使用ejb的情況下實(shí)現(xiàn)。如果使用ejb,ejb負(fù)責(zé)M.C通常會由servlet去實(shí)現(xiàn)。或者使用struts.
struts的介紹你可是去http://jakarta.apache.org/struts去看。以后的文章中我會介紹。
三:設(shè)計思路
當(dāng)你構(gòu)建一個Application時。你必須考慮界面的問題,而界面修改是非常平常的。如果你在jsp中實(shí)現(xiàn)所有的操作,一旦修改界面你麻煩大了。美工不懂jsp的,你必須自己去修改無數(shù)個文件,頭不要太大,而此時一般時間都很緊,使用MVC則可以減少你的一些麻煩。
在設(shè)計時候jsp只負(fù)責(zé)顯示頁面,也就是說jsp調(diào)用Bean(Struts,servlet)傳過來的數(shù)據(jù)然后顯示而Bean(Struts,servlet)負(fù)責(zé)收集jsp需要的數(shù)據(jù),用ArrayList(Arttibute)傳給jsp。假如需要提交表單,一般也直接提交給Struts,servlet,處理后以后再返回處理信息。而其中相應(yīng)的業(yè)務(wù)邏輯由Bean去實(shí)現(xiàn)。
四:Bean的設(shè)計
在我使用時候Bean通常有三類,分別manager,entry,database目錄下面。
manager下面的bean做商業(yè)邏輯
entry下的bean就是封裝數(shù)據(jù),其實(shí)就是每個數(shù)據(jù)庫表對應(yīng)會有一個bean。jsp得到的也全部是類。
database下的bean就是操作數(shù)據(jù)庫,執(zhí)行如insert,update,delete,load(查詢一條記錄),
batchload(查詢多條記錄)。
他們之間的關(guān)系是entry負(fù)責(zé)封裝數(shù)據(jù),作為database的調(diào)用參數(shù),返回結(jié)果。
manager調(diào)用database處理的結(jié)果。manager和jsp通信。jsp得到的結(jié)果從manager來, jsp需要做操作調(diào)用manager,即使是一個insert 在database存在這樣的方法但在manager中你還是需要再封裝一次。這樣做的目的是使結(jié)構(gòu)盡量簡單。database只負(fù)責(zé)操作數(shù)據(jù)庫。manager只做邏輯(取相應(yīng)的數(shù)據(jù))處理相應(yīng)的邏輯,而entry則只把database取到的數(shù)據(jù)封裝,或則把頁面得到的參數(shù)封裝,做為參數(shù)傳給相應(yīng)的Bean.
五:設(shè)計實(shí)例
下面我把留言板作為實(shí)例來討論:
entry/Guestbook.java(留言板對象)
database/GuestbookMap.java(更新,刪除,修改留言板)
manager/GuestbookManager.java(處理所有的事務(wù))
數(shù)據(jù)表結(jié)構(gòu)(postgresql)
create sequence seq_guestbook increment 1 ;
/**序列號生成器**/
create table guestbook(
id int8 default nextval('seq_guestbook'), /**主鍵**/
title varchar(64),/**主題**/
body text,/**內(nèi)容**/
sayid int8,/**發(fā)言人**/
toid int8,/**接受人**/
saytime datetime default now(),/**留言時間**/
newflg smallint default 1/**是否查看過**/
);
Guestbook.java
=======================
import java.util.*;
public class Guestbook(){
private int id;
private String title;
private body title;
private int sayid;
private int sayid;
private Date saytime;
private short newflg;
public Guestbook(){
}
public int getId(){
return this.id;
}
public void setId(int _id){
this.id=_id;
}
........
(全是get/set方法)
}
GuestbookMap.java
==============================
import Guestbook;
public class GuestbookMap(){
public GuestbookMap(){
}
public Guestbook load(int id){
//取到一條guestbook
}
//sqlstr 查詢條件
//orderstr 排序條件
//rcdbegin 記錄開始
//rcdend 記錄結(jié)束\r
//
public ArrayList batchLoad(String sqlstr,String orderstr,int rcdbegin,int rcdend){
//ArrayList 里面封裝了Guestbook
}
public void insert(Guestbook info){
}
public void update(Guestbook info){
}
public void delete(int id){
//取到一條guestbook
}
public int getRcdNums(String sqlstr){
//取記錄條數(shù)
}
}
GuestbookManager.java
根據(jù)需要封裝需要的方法,這部分才是你要寫的
=============================
上面的方式entry,database的文件可以自動生成,這個工具我已經(jīng)開發(fā)了,如果需要聯(lián)系我。你需要寫的就是GuestbookManager里面的方法,你也許會覺得工作量比你所有的操作都在jsp中大,但是這樣結(jié)構(gòu)非常清晰。你還需要的就是寫一個數(shù)據(jù)庫連接池,你所有的數(shù)據(jù)庫操作都從一個地方取,每一次都去連接數(shù)據(jù)庫開銷很大的。
六:技術(shù)優(yōu)勢
1:結(jié)構(gòu)清晰\r
2:維護(hù)方便\r
3:保護(hù)代碼比較好。
..........
七:結(jié)束語\r
我只是簡單的介紹一下,具體的使用你需要在實(shí)際運(yùn)用中積累,如果需要我的代碼參看,聯(lián)系我,如果你覺得寫的和狗屎,非常不好意思,浪費(fèi)了你寶貴的時間。
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -