您好,登錄后才能下訂單哦!
我們用個(gè)最簡(jiǎn)單的Servlet例子來(lái)解說(shuō)一下Servlet簡(jiǎn)單配置以及Servlet類(lèi)實(shí)現(xiàn)類(lèi)的寫(xiě)法。
第一,我們新建一個(gè)Dynamic Web Project,起名Servlet
點(diǎn)擊NEXT,設(shè)置Default output folder 為Servlet/WebContent/WEB-INF/classes
第二,創(chuàng)建一個(gè)包,包名為Servlet,然后創(chuàng)建一個(gè)類(lèi)名為WelcomeServlet類(lèi)。(Servlet類(lèi)當(dāng)然缺少不了Servlet容器,請(qǐng)注意你的開(kāi)發(fā)軟件是否已經(jīng)集成Servlet容器,比如Tomcat)
注意:將tomcat類(lèi)庫(kù)添加入Servlet這個(gè)項(xiàng)目中
1、右鍵點(diǎn)擊你需要添加jar包的項(xiàng)目.
2、選擇“Properties”.
3、然后選擇對(duì)話(huà)框中的“Java Build Path”.
4、選擇“Libraries”選項(xiàng)卡,然后點(diǎn)擊右邊的“Add Library “.
5、選擇"選Server Runtime"
6、選擇 自己已經(jīng)添加好的 tomcat服務(wù)器。
5、點(diǎn)擊“finish”.
第三,編寫(xiě)實(shí)現(xiàn)業(yè)務(wù)邏輯的Servlet類(lèi),即WelcomeServlet。
package Servlet; import java.io.IOException; import java.io.PrintWriter; import java.util.Date; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; //在實(shí)際中99.9999%的servlet類(lèi)都是繼承HttpServlet public class WelcomeServlet extends HttpServlet{ //實(shí)際中99.9%都是覆蓋doGet()或者doPost()方法,Servlet從此方法中獲取請(qǐng)求和響應(yīng)對(duì)象的引用。 @Override public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //獲取頁(yè)面input框name名為username的值 String name=req.getParameter("username"); //在Servlet從從容器獲取的響應(yīng)對(duì)象中,可以獲取PrintWriter,使用PrintWriter可以將HTML文本輸出到響應(yīng)對(duì)象,也可以是圖片。 PrintWriter writer=resp.getWriter(); Date date=new Date(); writer.println("Welcome to Servlet,"+name+"!,Now time is "+date); } }
小訣竅:很多人不記得doGet()或doPost()方法參數(shù),這時(shí)候我們只需要在類(lèi)中先打出doGet或者doPost,然后Alt+/,就可以自動(dòng)聯(lián)想出這個(gè)方法的整體。
第四,編寫(xiě)我們的web項(xiàng)目必不可少的web.xml。其中<servlet-name> 我們稱(chēng)為部署名,用來(lái)將<servlet>與<servlet-mapping>綁定在一起。<servlet-class> 代表我們需要執(zhí)行業(yè)務(wù)邏輯的servlet類(lèi)的完全限定名,即包名+類(lèi)名。<url-pattern> 客戶(hù)看到的servlet名稱(chēng)或者是虛構(gòu)的代表一個(gè)servlet。
<servlet>標(biāo)簽實(shí)際作用是將內(nèi)部名映射到實(shí)際類(lèi),<servlet-mapping>作用就是請(qǐng)求URL到來(lái)時(shí),轉(zhuǎn)發(fā)給哪個(gè)<servlet>。
<?xml version="1.0" encoding="UTF-8"?> <web-app id="servlet" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <servlet> <servlet-name>WelcomeServlet</servlet-name> <servlet-class>Servlet.WelcomeServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>WelcomeServlet</servlet-name> <url-pattern>/welcome</url-pattern> </servlet-mapping> </web-app>
第五,一個(gè)簡(jiǎn)單的HTML頁(yè)面。將頁(yè)面放在WebContent下面。
<html> <head> <title>Insert title here</title> </head> <body> <form action="/Servlet/welcome"> Name:<input type="text" name="username"> <input type="submit"> </form> </body> </html>
最后,將項(xiàng)目放入tomcat,啟動(dòng)訪(fǎng)問(wèn)http://localhost:8080/Servlet/input.html,然后輸出英文名稱(chēng)提交。
注意:我們這里只是簡(jiǎn)單的配置,缺少亂碼處理、錯(cuò)誤頁(yè)面、安全處理、初始化配置等等。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。