Tomcat、Web入門
Tomcat
伺服器軟體的引入
web服務軟體的作用就是把本地的資源共享給外部訪問,安裝有伺服器軟體的機器叫做Web伺服器,Tomcat就是一個web伺服器軟體。
常見web服務軟體:
- WebLogic: BEA公司的產品。 收費的。支援JavaEE規範。
- WebSphere: IBM公司的產品。收費的。支援JavaEE規範
- JBoss: Redhat公司的產品。收費的。支援JavaEE規範
- Tomcat: 開源組織Apache的產品。免費的。支援部分的JavaEE規範
(servlet、jsp。jdbc,但ejb, rmi不支援)
下面模擬一個web服務功能:
import java.io.File;
import java.io.FileInputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
/**
* socket伺服器端程式
* @author APPle
*
*/
public class Server {
public static void main(String[] args) throws Exception {
//1.建立ServerSocket
ServerSocket server = new ServerSocket(8080);
System.out.println("伺服器已經啟動成功....");
while(true){
//2.接收客戶端的連線
Socket socket = server.accept();
//3.讀取本地的test.html檔案
FileInputStream in = new FileInputStream(new File("e:/contact.xml"));
//4.構建資料輸出通道
OutputStream out = socket.getOutputStream();
//5.傳送資料
byte[] buf = new byte[1024];
int len = 0;
while( (len=in.read(buf))!=-1 ){
out.write(buf, 0, len);
}
//6.關閉資源
out.close();
in.close();
}
}
}
啟動該程式,然後在瀏覽器中輸入http://localhost:8080便可以在瀏覽器上輸出資訊。
程式:叫做服務端程式
瀏覽器:叫做客戶端程式
這裡服務端程式使用Java寫的,而瀏覽器並不一定是Java寫的,但是網路通訊的原理最終會轉成二進位制程式碼來執行,因此與語言無關。
Tomcat的使用
1、到apache官網下載解壓
2、啟動
- a)找到%tomcat%/bin/startup.bat ,雙擊這個檔案
- b)彈出視窗,顯示資訊(不要關閉次視窗)
- c)開啟瀏覽器,輸出以下地址http://localhost:808
- d)看到一隻貓畫面,證明軟體啟動成功!
3、關閉
- 找到%tomcat%/bin/shutdown.bat,雙擊這個檔案即可!
安裝Tomcat常出現的問題
閃退
- 原因:
tomcat軟體是java語言開發的。 tomcat軟體啟動時,會預設到系統的環境變數中查詢一個名稱叫JAVA_HOME的變數。這個變數的作用找到tomcat啟動所需的jvm。 - 解決辦法
到環境變數中設定JAVA_HOME的變數
埠占用的錯誤
- 原因:
tomcat啟動所需的埠(預設是8080)被其他軟體佔用了! - 解決辦法
第一種:關閉其他軟體程式,釋放所需埠
第二種:修改tomcat軟體所需埠
找到並修改%tomcat%/conf/server.xml檔案
<Connector port="8081" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
Tomcat目錄結構
更多Tomcat學習
web入門
靜態資源和動態資源的區別
靜態資源: 當使用者多次訪問這個資源,資源的原始碼永遠不會改變的資源。(用js頁面改變但是html原始碼不會變,因此不是靜態資源)
動態資源:當使用者多次訪問這個資源,資源的原始碼會發生改變。
動態資源開發技術
Servlet : 用java語言來編寫動態資源的開發技術。
Servlet特點:
1)普通的java類,繼承HttpServlet類,覆蓋doGet方法
2)Servlet類只能交給tomcat伺服器執行!!!!(開發者自己不能執行!!!)
Tomcat支援一個web應用的預設目錄
注意:
1)WEB-INF目錄裡面的資源不能通過瀏覽器直接訪問
2)如果希望訪問到WEB-INF裡面的資源,就必須把資源配置到一個叫web.xml的檔案中。
手動開發一個web應用
1、 編寫一個servlet程式,繼承HttpServlet
package gz.itcast.servlet;
import java.io.IOException;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* 第一個servlet程式
* @author APPle
*
*/
public class HelloServlet extends HttpServlet{//需要手動匯入Tomcat的servlet.jar包,因為這是ee規範,se包裡面沒有這個類
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
//解決中文亂碼問題
resp.setContentType("text/html;charset=utf-8");
//向瀏覽器輸出內容
resp.getWriter().write("這是第一個servlet程式。當前時間為:"+new Date());
}
}
2、找到HelloServlet類的class位元組碼,然後把拷貝到tomcat的一個web應用中WEB-INF/classes目錄下。(將編譯好的.class檔案及其目錄一起拷過去)
3、在當前web應用下的web.xml檔案配置Servlet。
<!-- 配置一個servlet程式 -->
<servlet>
<!-- servlet的內部名稱 ,可以自定義-->
<servlet-name>HelloServlet</servlet-name>
<!-- servlet類名: 包名+簡單類名-->
<servlet-class>gz.itcast.d_servlet.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<!-- servlet的內部名稱,和上面的名稱保持一致!!!-->
<servlet-name>HelloServlet</servlet-name>
<!-- servlet的訪問名稱: /名稱 -->
<url-pattern>/hello</url-pattern>
</servlet-mapping>
4、啟動tomcat伺服器,執行訪問http://localhost:8080/myweb/hello
工具開發
使用myeclipse建立如上的一個web工程如下:
index.jsp直接刪去即可
相關文章
- web server apache tomcat11-01-官方文件入門介紹WebServerApacheTomcat
- Web入門Web
- Web Service入門Web
- 教你入門Web ServiceWeb
- ctfshow web入門之web259Web
- Web API--入門--(一)ASP.NET Web API 2(C#)入門WebAPIASP.NET
- Tomcat 4/JSP入門指南(轉)TomcatJS
- Flutter For Web入門實戰FlutterWeb
- Java:Web Service初入門JavaWeb
- 「譯」Web安全快速入門Web
- CTFSHOW-WEB入門 writeupWeb
- 移動 Web入門前奏Web
- SOA and Web Services 新手入門Web
- [Web][Tomcat]Tomcat相關WebTomcat
- Tomcat 7 中 web 應用載入原理(二)web.xml 解析TomcatWebXML
- web前端新手入門建議Web前端
- JSON Web Token 入門教程JSONWeb
- NSSCTF web入門題鑑賞Web
- web學習(1)--粒子發生器(web入門)Web
- Servlet入門二:Tomcat安裝與執行ServletTomcat
- Web Components 入門例項教程Web
- PWA(Progressive Web App)入門系列:NotificationWebAPP
- web前端開發怎麼入門?Web前端
- Web 前端開發之小白入門Web前端
- 移動Web利器transformjs入門WebORMJS
- Web開發的入門指導Web
- Web Animation API從入門到上座WebAPI
- spring boot 載入web容器tomcat流程原始碼分析Spring BootWebTomcat原始碼
- tomcat伺服器啟動的方式Servlet入門Tomcat伺服器Servlet
- WEB安全入門:如何防止 CSRF 攻擊?Web
- 入門web前端需要掌握的技術Web前端
- Web開發初探之JavaScript 快速入門WebJavaScript
- Web 安全與 Rational AppScan 入門WebAPP
- ASP.NET Web API 2 入門教程ASP.NETWebAPI
- Web開發入門不得不看Web
- 【go-web服務端】入門教程GoWeb服務端
- Go Web 程式設計入門--編寫 Web 中介軟體GoWeb程式設計
- Tomcat實現Web SocketTomcatWeb