當(dāng)前位置:首頁(yè) > 芯聞號(hào) > 充電吧
[導(dǎo)讀]What is Java? Why Java? 大家學(xué)習(xí)Java有各自的理由,基本上Java是一個(gè)比較好的面向?qū)ο笳Z(yǔ)言,api豐富 是當(dāng)前比較主流的編程語(yǔ)言,J2SE/J2ME/J2EE在各個(gè)開(kāi)發(fā)領(lǐng)域

What is Java? Why Java?
大家學(xué)習(xí)Java有各自的理由,基本上Java是一個(gè)比較好的面向?qū)ο笳Z(yǔ)言,api豐富
是當(dāng)前比較主流的編程語(yǔ)言,J2SE/J2ME/J2EE在各個(gè)開(kāi)發(fā)領(lǐng)域都發(fā)展良好
Java不會(huì)取代其他開(kāi)發(fā)語(yǔ)言或開(kāi)發(fā)平臺(tái),如c/c++/c#或Delphi/.NET
沒(méi)有最好的語(yǔ)言,只有某種應(yīng)用場(chǎng)合下相對(duì)合適的語(yǔ)言

JRE
Java 2 Runtime Environment, Java 運(yùn)行時(shí)環(huán)境
包括Java虛擬機(jī)(JVM),和必須的類庫(kù)
它是運(yùn)行Java程序和網(wǎng)頁(yè)Applet的必備環(huán)境
它被包含在j2sdk中,也可以單獨(dú)下載(約10M)
下載地址: http://java.sun.com/getjava/download.html

JDK/SDK/J2SE
Java 2 Software Development Kit, Standard Edtion
是開(kāi)發(fā)Java的必備環(huán)境,包括編譯器等工具和大量類庫(kù),一般IDE中也會(huì)自帶
 下載地址:http://java.sun.com/j2se/downloads.html

J2EE
Java 2 Platform, Enterprise Edition
是Java在企業(yè)級(jí)應(yīng)用的主要技術(shù),也是目前Java最主要的應(yīng)用場(chǎng)合
包括JAXP、JAXR、JAX-RPC、SAAJ、JAAS、JavaMail、JMS、JSF、JSP/Servlet等
開(kāi)發(fā)J2EE,可以下載j2eesdk開(kāi)發(fā)包,一般IDE中也會(huì)自帶
相關(guān)鏈接:http://java.sun.com/j2ee

J2ME
Java 2 Platform, Macro Edition
是Java應(yīng)用于嵌入式系統(tǒng)(如手機(jī))的主要技術(shù)
相關(guān)鏈接:http://java.sun.com/j2me

開(kāi)發(fā)方式
市面上的IDE(集成開(kāi)發(fā)環(huán)境)可以極大的提高開(kāi)發(fā)效率
但如果你初學(xué)Java,我們推薦用JDK+Editplus或UltraEdit
雖然簡(jiǎn)陋些,但卻可以學(xué)的比較扎實(shí)
過(guò)早的依賴IDE只會(huì)讓你對(duì)Java API蜻蜓點(diǎn)水,一知半解.
甚至都未能掌握J(rèn)ava的基本語(yǔ)法
掌握了扎實(shí)的基礎(chǔ)后,再選擇一款I(lǐng)DE進(jìn)行開(kāi)發(fā)是很容易的

學(xué)習(xí)或使用Java,多查javadoc是很重要的(推薦使用JavaDOCHelper,類似MSDN的界面)
版上的不少問(wèn)題,其實(shí)稍微查查便不是問(wèn)題

設(shè)置環(huán)境變量
 安裝了JDK以后,要配置環(huán)境變量
Windows 2000
 我的電腦->屬性->高級(jí)->環(huán)境變量
 添加以下環(huán)境變量(假定你的java安裝在d:/Java/j2sdk1.4.2)
變量名 值 說(shuō)明
JAVA_HOME d:/Java/j2sdk1.4.2
CLASSPATH . .表示當(dāng)前目錄,即搜索當(dāng)前目錄
PATH ...;%JAVA_HOME%/bin ...表示原來(lái)的PATH值
新開(kāi)一個(gè)dos窗口,鍵入java和javac測(cè)試一下
Linux
以下為RedHat,bash為例 不同發(fā)行版略有不同,環(huán)境變量的設(shè)置詳見(jiàn)Unix/Linux版
修改用戶目錄下的.bash_profile,如vi ~/.bash_profile
JAVA_HOME=/usr/local/java/j2sdk1.4.2
CLASSPATH=.
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME CLASSPATH
重新登陸,使這個(gè)設(shè)置生效,在終端輸入java javac測(cè)試一下

簡(jiǎn)單測(cè)試程序
 代碼:--------------------------------
  public class Test{
   public static void main(String[] args){
    System.out.println("Hello world!");
   }
  }
 -------------------------------------
用記事本等工具編寫,保存成Test.java
注意,
如果你的windows設(shè)置'不顯示已知擴(kuò)展名'的話,
很有可能被保存成Test.java.txt
然后在命令行工具,cd到Test.java所在目錄,執(zhí)行
   javac Test.java
   java Test

關(guān)于Java的學(xué)習(xí)
入門Java,請(qǐng)看一本系統(tǒng)講解Java的書(shū)籍
這方面的書(shū),市面上很多,大同小異,無(wú)所謂挑那本
但盡量挑本面向高版本的講解語(yǔ)法的書(shū),千萬(wàn)不要選《VJ++入門到精通》之類
推薦的書(shū)籍如 Java in a Nutshell, Java大學(xué)教程,Java核心技術(shù),Java編程思想等
系統(tǒng)學(xué)習(xí)Java的基本知識(shí)之余,一定要勤實(shí)踐,自己給自己一些動(dòng)手機(jī)會(huì)
適度的記住一些常用api,不要過(guò)分依賴IDE的代碼提示

開(kāi)發(fā)工具

JBuilder
業(yè)界最主流的IDE之一,是Java開(kāi)發(fā)工具的大哥大
目前最新版本 JBuilder 2005
無(wú)論開(kāi)發(fā)j2se、j2me、j2ee還是xml/webservice,都是一把利器
Foundation Edition可免費(fèi)下載,但功能較少
網(wǎng)上有流傳企業(yè)版,為避免不必要的麻煩,請(qǐng)謹(jǐn)慎使用(尤其在公司)
相關(guān)鏈接:http://www.borland.com/products/jbuilder

Eclipse
新興的Java IDE,免費(fèi)、開(kāi)放源代碼、跨平臺(tái)、功能強(qiáng)大、運(yùn)行速度快
同時(shí)可以通過(guò)開(kāi)發(fā)新的插件擴(kuò)展現(xiàn)有插件的功能,比如在現(xiàn)有的Java開(kāi)發(fā)環(huán)境中加
入Tomcat服務(wù)器插件。
相關(guān)鏈接:http://www.eclipse.org

Ant
它是流行的Java build工具,"Everyone should use ant"
Ant不是一個(gè)IDE,但卻可以做很多IDE的事,如編譯/打包/部署/單元測(cè)試/CVS等
對(duì)于中等規(guī)模以上的項(xiàng)目,必定依賴很多類庫(kù)和擁有復(fù)雜的包結(jié)構(gòu)
使用Ant處理這些是極佳的選擇
相關(guān)鏈接:http://ant.apache.org

JSP
Java Server Page,一種Java Web開(kāi)發(fā)的一項(xiàng)技術(shù),和javascript沒(méi)有什么關(guān)系.

Servlet
先于jsp出現(xiàn)的動(dòng)態(tài)網(wǎng)頁(yè)技術(shù),類似cgi,但使用多線程處理請(qǐng)求.

jsp/servlet與Java的關(guān)系
Servlet只是繼承了HttpServlet的Java類,而jsp最終會(huì)被編譯成Servlet并執(zhí)行
很多在開(kāi)發(fā)web時(shí)遇到的問(wèn)題,其實(shí)和jsp/servlet本身沒(méi)什么關(guān)系,而是普通的Java問(wèn)
題。 一個(gè)合格的jsp/servlet程序員首先應(yīng)該是合格的Java程序員。
建議在學(xué)習(xí)和使用jsp/servlet前,先打下堅(jiān)實(shí)的Java基礎(chǔ)

以下問(wèn)題不屬于jsp/servlet范疇
.常用API的使用,諸如"如何把int變?yōu)镾tring" "如何得到當(dāng)前時(shí)間" "如何創(chuàng)建線程"
.JDBC的使用和相關(guān)注意事項(xiàng),諸如"如何訪問(wèn)MySQL" "為什么我插入數(shù)據(jù)是亂碼"
.其他J2EE技術(shù)的使用,諸如"如何使用JavaMail" "如何訪問(wèn)EJB"

推薦書(shū)籍
如果可能,請(qǐng)閱讀一本系統(tǒng)的書(shū)籍來(lái)指導(dǎo)你學(xué)習(xí)這項(xiàng)技術(shù)
筆者只看過(guò)"JSP高級(jí)編程"(機(jī)械工業(yè)2001年,廖若雪)
其他大型出版社出版的書(shū)都應(yīng)該不錯(cuò),如Wrox,O'Reilly,或者國(guó)內(nèi)出版社
挑書(shū)的時(shí)候最好選用jsp 1.2,servlet 2.3規(guī)范以上的書(shū)籍

Tomcat
這個(gè)是個(gè)開(kāi)放源代碼的JSP/Servlet服務(wù)器,是jsp/servlet的參考實(shí)現(xiàn),適合初學(xué)
主頁(yè)http://jakarta.apache.org/tomcat/
Tomcat 4.1和Tomcat 5都是目前穩(wěn)定版本,后者支持最新的jsp/servlet標(biāo)準(zhǔn)
建議下載zip版的,解壓縮,運(yùn)行bin/starup.bat即可出現(xiàn)服務(wù)器啟動(dòng)的界面
如果啟動(dòng)失敗,請(qǐng)確定本機(jī)的Java環(huán)境已正確,參見(jiàn)JAVA_HOME和PATH的配置

conf目錄里是服務(wù)器的配置,webapps是部署網(wǎng)站的目錄

自己寫的java class應(yīng)該放哪里
假設(shè)你的index.jsp的位置是X:/test/index.jsp, X:/test是你的項(xiàng)目目錄
Test.class的位置應(yīng)該是X:/test/WEB-INF/classes/Test.class

項(xiàng)目中的lib應(yīng)該放哪里
X:/test/WEB-INF/lib/myLib.jar

如何寫個(gè)servlet
package testservlet;

import java.io.*;
import javax.servlet.ServletException;
import javax.servlet.http.*;

public class FooServlet extends HttpServlet {
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
resp.getWriter().println("hi, I'm a servlet");
}
}
編譯這個(gè)類 javac -classpath servlet-api.jar FooServlet.java
其中這個(gè)jar可以從tomcat-5.0.19/common/lib/servlet-api.jar獲得
編譯后的class放在 X:/test/WEB-INF/classes/testservlet/FooServlet.class
其中testservlet你包的名字,應(yīng)盡量寫package,避免莫名其妙的麻煩

編譯X:/test/WEB-INF/web.xml,修改為

2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">


test
testservlet.FooServlet


test
/foobar


把這個(gè)程序部署到服務(wù)器上,比如把X:/test/*復(fù)制到tomcat/webapps/test/*
打開(kāi)瀏覽器訪問(wèn) http://localhost:8080/test/foobar,順利的話會(huì)看到一行文字

jsp顯示的是亂碼怎么辦
jsp的中文問(wèn)題以下幾種 //不包括jdbc讀寫數(shù)據(jù)庫(kù)的中文問(wèn)題
1. jsp中寫了中文如

中文

, 卻不能顯示
解決方法 在jsp第一行加入
<%@ page contentType="text/html; charset=gb2312" %>

2. 表單中寫了一個(gè)中文,如
卻不能接受到 <%System.out.println(request.getParameter("a"));%>
解決方法 在jsp或servlet中處理參數(shù)前加一條
request.setCharacterEncoding("GB2312");

3. http://host/a.jsp?name=中文 這樣的url中的name取不到
解決方法 應(yīng)該使用java.net.URLEncoder類把這個(gè)字符串轉(zhuǎn)成ascii

怎樣實(shí)現(xiàn)文件上傳
常見(jiàn)的Java文件上傳api有
Jakarta Commons FileUpload http://jakarta.apache.org/commons/fileupload/
COS
SmartUpload
下載相關(guān)的文件,里面一般有demo的

JSTL和EL
分別是Java Standard Tag Lib和Expression Language
可以大大簡(jiǎn)化常規(guī)的jsp開(kāi)發(fā),并讓頁(yè)面更簡(jiǎn)潔,而不是充斥著scriptlet
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉