Java基础知识资料整理

类别:Java 点击:0 评论:0 推荐:

Java基础知识资料整理

 

作者:Tnk Luo

E_mail:[email protected]

 

说明:这些资料都很陈旧,但很实用,是我以前整理并发在CSDN论坛的。为保持原文,所以没有改动,希望大家注意取舍。

 

大家好,这个地方,我刚来不到15天,发现这里确实是个学习的好地方,不过到现在给我的感觉是,比较乱,比如,大家问的问题经常有重复的,同时也不是很系统,我倒建议大家将自己做项目过程中的经验、学习体会、技术积累的一些问题,发表出来,让大家共同分享!我记得微软亚洲研究院张宏江副院长说过一句话,把自己的心得让大家分享,无论是以论文,还是其他的形式都可以,重在交流,让别人知道你所做的,知道得人越多,对你的批评、鼓励越大。而不是说,你水平高,也不想和别人分享,尤其是我们做技术的,经常把自己做课题过程中的一些经验写下来,对人对己都是很好的帮助!

我今天就对我以往这方面的一些经验写出来,希望大家批评指正!谢谢你的阅读!如果大家欢迎,我可以有后续的一些经验给大家介绍,我也希望大家一起来努力!只有这样,我们这个JAVA版会更有体系、更系统性!

 

J2SE:            (http://java.sun.com/j2se)

 

SUN公司的JAVA产品慢慢做大后,无论是什么地方,什么场合,都有JAVA的踪影,桌面、企业计算、无限设备,这么多得应用,使得JAVA产品分为了三种版本:Java 2 SDK, Standard Edition、Java 2 Platform, Enterprise Edition、Java 2 Platform, Micro Edition,其中Java 2的概念是在Java开发工具包Java Development Kit 1.1推出后,在1.2版时改为Java 2的。所以现在一般都不叫JDK,尽管大家都知道有这么回事情!:)

J2SE,用户下载Java 2 SDK,Standard Edition后,现在的版本为1.4,1.5版也快推出了,听说要增加泛型技术(GP编程)!(http://servlet.java.sun.com/javaone/sf2002/conf/sessions/21-all-regular.en.jsp)

大家下载J2SE 1.4通常需要安装,这其中,希望大家多看看J2SE 1.4的安装说明,所以我看到很多人在安装完1.4后配置一些环境变量时经常不是很系统。我们安装完后,一般只需要更改三个地方:(以Windows 2000为例)

 

1,增加一个环境变量:JAVA_HOME=你的J2SE的安装目录;

 

2,增加一个环境变量:classpath=.;

    大家不要小看这个空格,作用大的很!自己仔细看看J2SE文档!另外,也不需要把什么rt.jar,...加进来,都是多余的!

 

3,在path中增加:你的J2SE的安装目录\bin

 

这样就完成Java 2 SDK, Standard Edition的安装。

 

很晚了,我就写到这里,见谅!!:)

 

常见资源:

 

1.http://java.sun.com/j2se

2.http://developer.java.sun.com,这个地方特别好,希望大家都去注册一个帐户,免费的,好地方!

3.http://www.oreilly.com.cn,OReilly公司的图书国内由中国电力出版社出版,国内翻译oreilly公司的相关JAVA图书都在这里,同时:http://www.infopower.com.cn/这里也有!!

4.http://http://www.oreilly.com.tw/sleepless/index.htm,蔡學鏞先生的JAVA专栏,Sleepless in JAVA!!!

5.http://www-900.ibm.com/developerWorks/cn/index.shtml,大家应该很熟悉吧!IBM的中国developWorks网。其中有JAVA技术专栏!

6.http://www.sys-con.com/java/index.cfm,JAVA DEVELOPER'S JOURNAL

7.http://www.adtmag.com/java/index.asp,JAVA REPORT!

 

JDBC技术

 

 

接下来,我会讲讲JDBC技术,先给个实际例子,如果有兴趣,大家先去下载一个SQL Server 2000 JDBC!大家现有个大概的影响,后面我会详细把这方面的理论基础给大家!由于我这几天比较忙,所以不好意思脱逃了!

 

 

SQL Server 2000 JDBC Driver是最好的 Type 4 JDBC驱动程序,它提供了面向企业的、与Java环境的高度可靠、高度可伸缩的连通性。SQL Server 2000 JDBC Driver为所有Java小程序(Java-enabled Applet)、应用程序或者应用程序服务器提供了JDBC访问能力。它跨越Internet和Intranet提供了对SQL Server 2000的高性能点对点访问和n层(n-tier)访问。该驱动程序针对Java环境进行了优化,使您可以将Java技术与现有的系统相结合,以扩展现有系统的功能和性能。

 

SQL Server 2000 JDBC Driver是一个遵从JDBC 2.0规范的驱动程序。它还支持JDBC 2.0 Optional Package的一个子集,该子集提供了以下一些功能(详细信息参见文档):

 

...Java命名目录接口(JNDI),用于命名数据源

...连接池(Connection Pooling)

 

 

SQL Server 2000 JDBC Driver 支持的SQL Server版本有:

 

...SQL Server 2000.

...SQL Server 2000 with Service Pack 1

 

以下操作系统支持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技术,我们知道,JDBC作为J2SE,J2EE平台的重要组成部分,可见其重要性!

 

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构架包括两类接口,第一种是,

JDBC API for application writers

第二种是,

lower-level JDBC driver API for driver writers

 

而,JDBC技术提供的驱动程序包括4种,Type 1,Type 2,Type 3,Type 4!

应用程序和小应用程序(applets)可以通过 JDBC API using pure Java JDBC technology-based drivers访问DBMS.

 

具体细节,请大家参考:

 

http://java.sun.com/products/jdbc/overview.html

 

比如,我们以Oracle 8.1.7为例,通常在通过应用程序联结Oracle 8.1.7时,如果使用JDBC技术,一般有thin,oci两种,

那么,thin,oci有什么区别那?

 

如果大家看完上述的参考文献,现在应该可以明白,

thin,是Type 4!

oci,是Type 2!

 

再比如,SQL Server 2000,最近Microsoft推出了其JDBC for SQL Server 2000的驱动程序!

 

下载地址为:

 

http://www.microsoft.com/china/sql/downloads/2000/jdbc.asp

(安装完后,有pdf文件,把JDBC讲的很详细,推荐下载!!!)

 

如果我们以Oracle 的应用为例,采用thin结构,大家分析一下如下代码:

 

 

try

{

//加载JDBC驱动程序

   DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());

//建立与DBMS的联结!!

   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())

                       {               

    //对数据库操作!!!!  

                       }           

      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有两个classes11.zip和classes12.zip,包,我们一般用

classes12.zip,其支持JDBC 2.0

 

透过J2SE的:(有一张层次结构图,大家可以去看看!)

 

http://java.sun.com/j2se/1.4/index.html

 

所以,J2SE包括的东西很多,如果要面面俱倒,本人也是个新手,写这些东东的目的,就是将自己的体会,心得写下来,希望多多批评指正,多多交流,有什么问题,可以和我发消息,同时也可以把问题写在这里,我经常来看看!!!:)

 

J2ME:

 

参考资源:

 

1,http://java.sun.com/j2me/

2,《J2ME无限设备编程》,机械工业出版社,28元

3,http://wireless.java.sun.com/

4,http://www.sun.com.cn

 

最近,SUN,Motorola,在举行J2ME开发比赛:

 

http://www.hopen.com.cn/388/

 

机会难得!!!

 

至于J2ME开发,和J2SE开发过程差不多,同时:

 

http://java.sun.com/blueprints/

 

提供了

 

Enterprise: Java Pet Store Sample Application

 

开发例子!!!

 

而且鉴于这个例子,我打算下一次将

 

Java Pet Store Sample Application

 

好好分析一下!

 

这个话题,在程序员杂志上很多,但我想,存在即是合理,因为我已经开始着手写这方面的材料,所以希望大家多支持!!!

    我们需要交流!!!

   

    让我来写这个东西,或许可以这样讲,我没有这个资格,但我们可以试试!

    :)

   

 

    国内JAVA图书,尤其是优秀的图书,大部分都是国外的,无论是否翻译过来,还是影印版!我这里假设我们的参考系都是国外的,即,比如《Java 高效编程指南》的英文版是很好的一本书,被:

 

http://www.sdmagazine.com/jolts/

 

http://www.china-pub.com/computers/bookreview/review/news.htm

 

    评为一本很好得书,

    但,中文版就.....

 

http://jjhou.csdn.net/article02-10.htm

   

    上面有对该书的评价!(不知道,大家注意到没有,带有Effective的书,都很不错!!!)

   

    所以,我们的目光是国外的图书!

   

    首先,我们谈谈Oreilly公司的Java图书,

 

http://www.oreilly.com.cn/html/java.html(国内)

http://www.oreilly.com.tw(台湾),其中有蔡學鏞先生的专栏!

 

   sleepless in Java:

 

http://www.oreilly.com.tw/sleepless/index.htm

 

   可以,这样说,Oreilly公司的书一向都很好,同时国内由中国电力出版社引进,所以中文版的质量应该不错!!!

    比如,国内的几本:

 

 《Java安全》第二版

 《JDBC与Java数据库编程》第二版

 《JSP设计》

 《Java技术手册》

 

 《JAVA实例技术手册》

 

 《Java网络编程》

 

 《Java语言入门》

 

 《JAVA与XML》

 

 《Enterprise JAVABEANS(第二版)》

 

 《Java 语言与 Java 平台》

 

    都是精品!个人认为!:)

 

    个人总结:适合各种层次的人,很专业!!

   

   第二,wrox公司,

 

http://www.wrox.com

 

http://www.china-pub.com/temporary/SendMail/htmlmail/zhuanti/007.htm

 

   Wrox的图书,读者定位就是程序员,甚至他们把P2P(程序员对程序员,Programmer to Programmer)当成了商标,在这样的定位下又通常细分为“Beginning XXX”和“Professional XXX”,只要做了正确的选择,对于初学者来说不必担心内容太艰深看不懂,对于老者来说也不为一些早就熟知的内容支付额外的费用。欲知更多Wrox图书信息,请见WWW.WROX.COM(转载http://www.china-pub.com)

 

   我自己有一本,《JSP编程指南》,感觉还不错!

 

   个人总结:对于初学者不是很适合,如果你有一定项目经验,再看这种书,效果会很好!:)

 

   第三,SUN公司出的书,感觉国内主要是由机械工业出版社引进出版,w Sun公司核心技术丛书!

 

http://www.sun.com/books/

 

   个人总结:很舒服!

  

   第四,Addison-Wesley公司的图书!感觉也蛮好的!比如,比如,<Effective Java>就是他们的!

  

   个人总结:与Oreilly公司的书风格很像!

  

   第五,一些网站提供的电子图书,

 

http://www.theserverside.com/resources/index.jsp

  

   ,上面有很经典的EJB书:

 

Mastering EJB II

      Mastering EJB was one of the original and most influential EJB books in the industry. Mastering EJB II now returns with two new expert co-authors, updated for EJB 2.0 and improved with advanced topics such as large scale systems design, J2EE project management, complex persistence and more.

 

EJB Design Patterns

      A companion/standalone book to Mastering EJB 2, EJB Design Patterns seeks to solidify and centralize all the cutting edge strategies and design patterns in use today.

 

http://www.mindview.net/     

     这个地方有,<Thinking in JAVA,c++>!

    

 

技术资源:

    

    1.http://www.theserverside.com

    2.http://java.sun.com

    3.http://www-900.ibm.com/developerWorks/cn/index.shtml

    4.http://developer.java.sun.com/

    5.http://www.eclipse.org/

    6.http://www.artima.com/insidejvm(剖析JVM的经典书!!!)

 

 

本文地址:http://com.8s8s.com/it/it17965.htm