。
?
大家好,這個(gè)地方,我剛來不到
15
天,發(fā)現(xiàn)這里確實(shí)是個(gè)學(xué)習(xí)的好地方,不過到現(xiàn)在給我的感覺是,比較亂,比如,大家問的問題經(jīng)常有重復(fù)的,同時(shí)也不是很系統(tǒng),我倒建議大家將自己做項(xiàng)目過程中的經(jīng)驗(yàn)、學(xué)習(xí)體會(huì)、技術(shù)積累的一些問題,發(fā)表出來,讓大家共同分享!我記得微軟亞洲研究院張宏江副院長(zhǎng)說過一句話,把自己的心得讓大家分享,無論是以論文,還是其他的形式都可以,重在交流,讓別人知道你所做的,知道得人越多,對(duì)你的批評(píng)、鼓勵(lì)越大。而不是說,你水平高,也不想和別人分享,尤其是我們做技術(shù)的,經(jīng)常把自己做課題過程中的一些經(jīng)驗(yàn)寫下來,對(duì)人對(duì)己都是很好的幫助!
我今天就對(duì)我以往這方面的一些經(jīng)驗(yàn)寫出來,希望大家批評(píng)指正!謝謝你的閱讀!如果大家歡迎,我可以有后續(xù)的一些經(jīng)驗(yàn)給大家介紹,我也希望大家一起來努力!只有這樣,我們這個(gè)
JAVA
版會(huì)更有體系、更系統(tǒng)性!
?
J2SE:??????????? (http://java.sun.com/j2se)
?
SUN
公司的
JAVA
產(chǎn)品慢慢做大后,無論是什么地方,什么場(chǎng)合,都有
JAVA
的蹤影,桌面、企業(yè)計(jì)算、無限設(shè)備,這么多得應(yīng)用,使得
JAVA
產(chǎn)品分為了三種版本:
Java 2 SDK, Standard Edition
、
Java 2 Platform, Enterprise Edition
、
Java 2 Platform, Micro Edition
,其中
Java 2
的概念是在
Java
開發(fā)工具包
Java Development Kit 1.1
推出后,在
1.2
版時(shí)改為
Java 2
的。所以現(xiàn)在一般都不叫
JDK
,盡管大家都知道有這么回事情!:)
J2SE
,用戶下載
Java 2 SDK
,
Standard Edition
后,現(xiàn)在的版本為
1.4,1.5
版也快推出了,聽說要增加泛型技術(shù)(
GP
編程)!(
http://servlet.java.sun.com/javaone/sf2002/conf/sessions/21-all-regular.en.jsp
)
大家下載
J2SE 1.4
通常需要安裝,這其中,希望大家多看看
J2SE 1.4
的安裝說明,所以我看到很多人在安裝完
1.4
后配置一些環(huán)境變量時(shí)經(jīng)常不是很系統(tǒng)。我們安裝完后,一般只需要更改三個(gè)地方:
(
以
Windows 2000
為例
)
?
1,
增加一個(gè)環(huán)境變量:
JAVA_HOME=
你的
J2SE
的安裝目錄;
?
2,
增加一個(gè)環(huán)境變量:
classpath=.;
???
大家不要小看這個(gè)空格,作用大的很!自己仔細(xì)看看
J2SE
文檔!另外,也不需要把什么
rt.jar,...
加進(jìn)來,都是多余的!
?
3,
在
path
中增加:你的
J2SE
的安裝目錄
\bin
?
這樣就完成
Java 2 SDK, Standard Edition
的安裝。
?
很晚了,我就寫到這里,見諒!!:)
?
常見資源:
?
1.http://java.sun.com/j2se
2.http://developer.java.sun.com,
這個(gè)地方特別好,希望大家都去注冊(cè)一個(gè)帳戶,免費(fèi)的,好地方!
3.http://www.oreilly.com.cn,OReilly
公司的圖書國(guó)內(nèi)由中國(guó)電力出版社出版,國(guó)內(nèi)翻譯
oreilly
公司的相關(guān)
JAVA
圖書都在這里,同時(shí):
http://www.infopower.com.cn/
這里也有!!
4.http://http://www.oreilly.com.tw/sleepless/index.htm,
蔡學(xué)鏞先生的
JAVA
專欄,
Sleepless in JAVA!!!
5.http://www-900.ibm.com/developerWorks/cn/index.shtml,
大家應(yīng)該很熟悉吧!
IBM
的中國(guó)
developWorks
網(wǎng)。其中有
JAVA
技術(shù)專欄!
6.http://www.sys-con.com/java/index.cfm,JAVA DEVELOPER'S JOURNAL
7.http://www.adtmag.com/java/index.asp,JAVA REPORT!
?
JDBC
技術(shù)
?
?
接下來,我會(huì)講講
JDBC
技術(shù),先給個(gè)實(shí)際例子,如果有興趣,大家先去下載一個(gè)
SQL Server 2000 JDBC!
大家現(xiàn)有個(gè)大概的影響,后面我會(huì)詳細(xì)把這方面的理論基礎(chǔ)給大家!由于我這幾天比較忙,所以不好意思脫逃了
!
?
?
SQL Server 2000 JDBC Driver
是最好的
Type 4 JDBC
驅(qū)動(dòng)程序,它提供了面向企業(yè)的、與
Java
環(huán)境的高度可靠、高度可伸縮的連通性。
SQL Server 2000 JDBC Driver
為所有
Java
小程序
(Java-enabled Applet)
、應(yīng)用程序或者應(yīng)用程序服務(wù)器提供了
JDBC
訪問能力。它跨越
Internet
和
Intranet
提供了對(duì)
SQL Server 2000
的高性能點(diǎn)對(duì)點(diǎn)訪問和
n
層(
n-tier
)訪問。該驅(qū)動(dòng)程序針對(duì)
Java
環(huán)境進(jìn)行了優(yōu)化,使您可以將
Java
技術(shù)與現(xiàn)有的系統(tǒng)相結(jié)合,以擴(kuò)展現(xiàn)有系統(tǒng)的功能和性能。
?
SQL Server 2000 JDBC Driver
是一個(gè)遵從
JDBC 2.0
規(guī)范的驅(qū)動(dòng)程序。它還支持
JDBC 2.0 Optional Package
的一個(gè)子集,該子集提供了以下一些功能(詳細(xì)信息參見文檔):
?
...Java
命名目錄接口
(JNDI
),用于命名數(shù)據(jù)源
...
連接池(
Connection Pooling
)
?
?
SQL Server 2000 JDBC Driver
支持的
SQL Server
版本有:
?
...SQL Server 2000.
...SQL Server 2000 with Service Pack 1
?
以下操作系統(tǒng)支持
SQL Server 2000 JDBC Driver
:
?
...Windows XP
...Windows 2000 with Service Pack 2
...AIX
...HP-UX
...Solaris
...Linux
?
SQL Server 2000 JDBC Driver
支持以下版本的
JDK
:
?
...JDK 1.1.8
...JDK 1.2
...JDK 1.3
?
?
下載地址:
http://www.microsoft.com/china/sql/downloads/2000/jdbc.asp
?
讓我們接著上一講來看看
JDBC
技術(shù),我們知道,
JDBC
作為
J2SE,J2EE
平臺(tái)的重要組成部分,可見其重要性!
?
JDBC
的源泉:
?
http://java.sun.com/products/jdbc/
?
大家知道,
JDBC
的最新
API Specification
是
3.0,
其中包括:
?
JDBC Technology Core features (the java.sql package)
?
java.sql.*;
和
JDBC Optional Package features (the javax.sql package)
?
javax.sql;
兩部分。
?
其中,在
3.0
中,
optional package
還不是
J2SE 1.4
的
core api!
?
?
http://java.sun.com/products/jdbc/features.html
?
大家知道,
JDBC API
構(gòu)架包括兩類接口,第一種是,
JDBC API for application writers
第二種是,
lower-level JDBC driver API for driver writers
?
而,
JDBC
技術(shù)提供的驅(qū)動(dòng)程序包括
4
種,
Type 1,Type 2,Type 3,Type 4!
應(yīng)用程序和小應(yīng)用程序
(applets)
可以通過
JDBC API using pure Java JDBC technology-based drivers
訪問
DBMS.
?
具體細(xì)節(jié),請(qǐng)大家參考:
?
http://java.sun.com/products/jdbc/overview.html
?
比如,我們以
Oracle 8.1.7
為例,通常在通過應(yīng)用程序聯(lián)結(jié)
Oracle 8.1.7
時(shí),如果使用
JDBC
技術(shù),一般有
thin,oci
兩種,
那么,
thin,oci
有什么區(qū)別那?
?
如果大家看完上述的參考文獻(xiàn),現(xiàn)在應(yīng)該可以明白,
thin,
是
Type 4
!
oci,
是
Type 2
!
?
再比如,
SQL Server 2000,
最近
Microsoft
推出了其
JDBC for SQL Server 2000
的驅(qū)動(dòng)程序!
?
下載地址為:
?
http://www.microsoft.com/china/sql/downloads/2000/jdbc.asp
(安裝完后,有
pdf
文件,把
JDBC
講的很詳細(xì),推薦下載!!!)
?
如果我們以
Oracle
的應(yīng)用為例,采用
thin
結(jié)構(gòu),大家分析一下如下代碼:
?
?
try
{
//
加載
JDBC
驅(qū)動(dòng)程序
?? DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
//
建立與
DBMS
的聯(lián)結(jié)!!
?? Connection conn = DriverManager.getConnection?
??????????????? ("jdbc:oracle:thin:@10.11.12.200:1521:ora8",
??????????????????????????????????? "DFQ", "DFQ2000");
//
生成操作描述語句!
??? Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
??????????????????????????????????????? ResultSet.CONCUR_UPDATABLE);
//
具體的
SQL
操作!
??? ResultSet rset=stmt.executeQuery("SELECT * FROM
?????????????????????????????????????????? JAVAEFFT");?????????????? ???????????????????
???? while(rset.next())
???????????????
?????? {????????????? ?
??? //
對(duì)數(shù)據(jù)庫操作!!!!
??
???????????????
?????? } ??????????
????? rset.close();
????? stmt.close();
????? conn.close();
???????
?????? }??????????? ???? ???????????????????????????
??? catch (SQLException ex)
????????????? {
?????? System.out.println ("\n*** SQLException caught ***\n");
??? while (ex != null)
???????????????????? {
???????? System.out.println ("SQLState: " +
?????????????
???????????????????? ex.getSQLState ());
?????? System.out.println ("Message:? " + ex.getMessage());
?????? System.out.println ("Vendor:?? " +
?????????????????????????????????? ex.getErrorCode ());
??????????????????????????? ex = ex.getNextException ();
??????????????????????????? System.out.println ("");
???????????????????? }
????????????? }
????????????? catch (java.lang.Exception ex)
????????????? {
???????????????????? ex.printStackTrace();
????????????? }????
?
其中,
Oracle 8.1.7
有兩個(gè)
classes11.zip
和
classes12.zip,
包,我們一般用
classes12.zip,
其支持
JDBC 2.0
?
透過
J2SE
的:(有一張層次結(jié)構(gòu)圖,大家可以去看看!)
?
http://java.sun.com/j2se/1.4/index.html
?
所以,
J2SE
包括的東西很多,如果要面面俱倒,本人也是個(gè)新手,寫這些東東的目的,就是將自己的體會(huì),心得寫下來,希望多多批評(píng)指正,多多交流,有什么問題,可以和我發(fā)消息,同時(shí)也可以把問題寫在這里,我經(jīng)常來看看!!!:)
?
J2ME
:
?
參考資源:
?
1
,
http://java.sun.com/j2me/
2
,《
J2ME
無限設(shè)備編程》,機(jī)械工業(yè)出版社,
28
元
3,http://wireless.java.sun.com/
4,http://www.sun.com.cn
?
最近,
SUN
,
Motorola,
在舉行
J2ME
開發(fā)比賽:
?
http://www.hopen.com.cn/388/
?
機(jī)會(huì)難得!!!
?
至于
J2ME
開發(fā),和
J2SE
開發(fā)過程差不多,同時(shí)
:
?
http://java.sun.com/blueprints/
?
提供了
?
Enterprise
: Java Pet Store Sample Application
?
開發(fā)例子!!!
?
而且鑒于這個(gè)例子,我打算下一次將
?
Java Pet Store Sample Application
?
好好分析一下!
?
這個(gè)話題,在程序員雜志上很多,但我想,存在即是合理,因?yàn)槲乙呀?jīng)開始著手寫這方面的材料,所以希望大家多支持!!!
???
我們需要交流!!!
???
???
讓我來寫這個(gè)東西,或許可以這樣講,我沒有這個(gè)資格,但我們可以試試!
???
:)
???
?
???
國(guó)內(nèi)
JAVA
圖書,尤其是優(yōu)秀的圖書,大部分都是國(guó)外的,無論是否翻譯過來,還是影印版!我這里假設(shè)我們的參考系都是國(guó)外的,即,比如《
Java
高效編程指南》的英文版是很好的一本書,被
:
?
http://www.sdmagazine.com/jolts/
?
http://www.china-pub.com/computers/bookreview/review/news.htm
?
???
評(píng)為一本很好得書,
???
但,中文版就
.....
?
http://jjhou.csdn.net/article02-10.htm
???
???
上面有對(duì)該書的評(píng)價(jià)!(不知道,大家注意到?jīng)]有,帶有
Effective
的書,都很不錯(cuò)