Web開發概述
web開發指的就是網頁向后再讓發送請求,與后端程序進行交互
web后端(javaEE)程序需要運行在服務器中
這樣前端才可以對其進行進行訪問
什么是服務器?
解釋1:
服務器就是一款軟件,可以向其發送請求,服務器會做出一個響應.可以在服務器中部署文件,讓他人訪問
解釋2:
也可以把運行服務器軟件的計算機也可以稱為服務器
web交互流程圖如下:
web服務器指的是駐留在因特網上某種類型計算機的程序
可以向瀏覽器等web客戶端提供文檔,也可以放置網站文件,讓全世界哦瀏覽;它是一個容器,是一個鏈接用戶與程序之間的中間件
web服務器有很多,流行的web服務器有Tomcat,WebSphere,WebLogic,Jboss
在小型的應用系統或者有特殊需求的系統重視,可以使用一個免費的Web服務器:Apache的Tomcat,該服務器支持全部JSP以及Servlet規范
APacha軟件基金會(Apache Software Foundation)是專門為運作一個開源軟件項目的Apache的團體提供支持的非盈利性組織
Web開發環境搭建
服務器軟件安裝
Tomcat
Tomcat是一個基于Java的HTTP服務器,它是Sun通過Java Community Process開發并用servlet和JavaServer Page(JSP)技術的正式參考實現。Tomcat的安裝和配置都需要一定的步驟,但是在Eclipse集成環境下,可以更加方便地進行開發和調試
首先到官網下載tomcat安裝包
Tomcat官方站點:http://tomcat.apache.org
安裝JDK
配置環境變量
首先打開環境變量頁面
新建一個JAVA_HOME系統變量
將JAVA_HOME的路徑設置為bin的上一級路徑
若是沒配置過Path中的java\bin路徑
則需要打開Path
將java的bin路徑配置在其中
解壓Tomcat壓縮文件
Tomcat文件結構
在Tomcat文件中的bin目錄中 雙擊startup.bat命令啟動
出現這個頁面就代表啟動成功
訪問
自己的ip地址 :8080
更改啟動端口地址
打開conf文件夾
打開server.xml文件
找到該區域,將port改為想要的端口號
創建并發布web項目
在idea中集成Tomcat(修改代碼后,會自動將項目重新部署到Tomcat中)
首先創建一個javaEE項目
勾選web profile選項 命名創建
創建完成后需要配置Tomcat
打開configurations頁面,選擇Tomcat中的local,在右邊文件夾中選擇Tomcat文件里bin的上一級,并對該配置進行改名,取消勾選After launch
創建完成后只需要點擊綠色三角形就能啟動
重寫java中的方法
在java文件夾中創建包,在包中創建一個類繼承HttpServlet
/*
創建一個類 繼承HttpServlet ,這個類就是一個javaEE程序
在web.xml文件配置,想歪提供一個訪問地址,就可以在瀏覽器中訪問,找到對應的程序
*/
public class DemoServlet extends HttpServlet {/*
無參構造方法,默認是存在,初始化創建的對象
只被調用一次(始終只創建一個對象),在第一次訪問servlet程序由服務器創建執行
*/public DemoServlet(){System.out.println("無參構造方法");}/*init()初始化,在構造方法執行完成后,立即被調用執行完成一些servlet程序的初始化(例如,讀取配置文件中參數)也是只執行一次init方法在沒有需要初始化操作時,可以不用重寫,服務器會調用父類中的init方法*/@Overridepublic void init(ServletConfig config) throws ServletException {System.out.println("init");}/*service()用來接受前端請求,為前端提供服務每次前端發送的請求都會調用service(),多次調用HttpServletRequest rea: 表示請求對象,前端提交過來所有的數據都由服務器封裝在此對象中HttpServletResponse resp : 表示相應對象,用來向前端相應數據*/@Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("service");}/*destroy(),當服務器關閉的時候.如果程序想要最終執行某些操作,就可以在destroy方法中實現在沒有最終執行的一一些操作時,也可以不用重寫,但是服務器會調用父類中空的destroy方法*/@Overridepublic void destroy() {System.out.println("destory");}}
servlet對象的生命周期
servlet對象在第一次訪問servlet程序時由服務器創建
初始化階段:在構造方法執行完成后,調用init方法執行一些初始化操作
服務階段:每一次請求調用service方法
銷毀階段:服務器關閉時,銷毀servlet對象,并且在銷毀對象時會自動調用destroy方法,執行一些最終操作
之后還需要在webapp中的WEB-INF文件夾里打開web.xml
配置servlet程序和訪問地址
<!--.xml文件:ml結尾,是一種標記語言,設計的目的是用來在項目中存儲配置信息的,制定好可以使用那些標簽即可web.xml文件:存儲web后端項目配置信息,在服務器啟動時由服務器加載讀取的--><!-- 配置servlet程序,把我們開發的servlet程序注冊對服務器,有服務器啟動時加載,在第一次訪問時,由服務器創建對象--><servlet><servlet-name>demo</servlet-name>--> <!-- 定義對象名 --><servlet-class> com.ffyc.dormServer.web.DemoServlet</servlet-class> <!-- 注冊servlet程序 --><init-param> <!-- 向servlet中配置一些參數 --><param-name>count</param-name><param-value>10</param-value></init-param></servlet><!--為servlet配置訪問地址--><servlet-mapping><servlet-name>demo</servlet-name> <!-- 為指定name的servlet程序配置訪問地址 --><url-pattern>/demo</url-pattern> <!-- 配置的供額外 --></servlet-mapping>
注意,在配置servlet訪問地址時,url-pattern內部的地址前需要加/
配置完成后訪問直接用
ip地址:端口/項目名/demo(訪問地址)
此時打開控制臺就會發現調用了之前重寫的方法