毛哥的快樂生活 二十一章 讓Servlet理解使用者的需求
本章原始碼:
程式是幹啥的
還記得最開始的程式嗎,無非是輸出。
System.out.println("Hello World");
此時使用者的請求只有一個目標,就是這個程式,輸出也是固定的內容。
但是在現實世界中,使用者的請求,可能是很複雜的。而使用者期望得到的結果,也是個性化的。個性化的結果就來自於個性化的要求。
所以程式就是,接收輸入,理解輸入,計算結果,輸出結果。
OK,如下就是:
public static void main(String[] args) {
//1獲取輸入
Scanner input=new Scanner(System.in);
double num1,num2;
System.out.print("請輸入第1個數字:");
num1=input.nextDouble();
System.out.print("請輸入第2個數字:");
num2=input.nextDouble();
//2理解輸入
//..有什麼好理解的,兩個數字
//3計算結果
double sum=num1+num2;
//4輸出結果
System.out.println(sum);
input.close(); //關閉input
}
Servlet是幹啥的
Servlet乾的事情比較專業一點,就是專門接收使用者透過瀏覽器發出的請求,然後返回結果的。
OK,之前已經瞭解如何輸出了,那麼Servlet如何獲取使用者的請求資訊呢。
毛哥仔細觀察了這個方法:
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
PrintWriter out = resp.getWriter();//從響應物件裡面獲取一個PrintWriter,有點像打字機
out.println("<div>In the futurem, you will thank youself for the fighting today</div>");//英語不錯
}
resp是用來向瀏覽器輸出的,那req是幹嘛的?req是HttpServletRequest型別的物件,不就是代表請求嗎。然後輸入req.(會自動提示該物件具備的方法)如下圖:
果然有一個req.getParameter方法,應該就是獲取瀏覽器提交的請求引數的。
瀏覽器的請求引數從何而來
終於走到問題的關鍵了,使用者透過瀏覽器中的動態網頁發起請求,但是引數怎麼傳遞給Servlet呢。
不像Java語言,可以將引數放在函式里。此時就要從日常的觀察中得出一些提示了。
毛哥百度了下servlet,點選百度一下之後,發現瀏覽器位址列變為下面的東西,發現wd=servlet了嗎?
嗯,再試下html,發現瀏覽器位址列變為下面東西,發現wd=html了嗎
%2FC2elkFCpwxAJPOsBFU&rqlang=cn&rsv_enter=0&rsv_sug3=16&rsv_sug1=15&rsv_sug7=100&rsv_sug2=0&inputT=1522&rsv_sug4=1522
也就是說,瀏覽器可以透過在請求地址後面新增引數,將引數傳遞給動態網頁的處理程式。
嘗試傳遞引數
我們在上一章的NoticeSite下面新增一個ParamterReceiveServlet,專案結構如圖:
程式碼如下:
//測試接收引數的Servlet
@WebServlet("/ParamterReceiveServlet")
public class ParamterReceiveServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//獲取一個名字叫name的瀏覽器輸入引數
String input=req.getParameter("name");
String output="你好:"+input;
//輸出
resp.setContentType("text/html;charset=utf-8");
PrintWriter out = resp.getWriter();
out.println(output);
}
}
重啟伺服器,位址列輸入:,結果如下:
毛哥的暢想
大吉大利,今晚吃雞!
好像眼前所有的障礙都掃除了啊。
現在可以用Servlet接收使用者的輸入,然後透過Java語言動態組裝html字串後返回給使用者。
明天,就可以叫上小范妹子,分工協作,開始研發。
嗯,自己竟然如此優秀,進步之快令人髮指。
努力後的夜晚往往是酐睡。
還有什麼,比奮鬥進取的日子更美麗呢。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/854/viewspace-2821405/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 程式設計師的快樂生活程式設計師
- 關於servlet的理解Servlet
- 讓程式設計快樂起來的過程程式設計
- IceRPC之深入理解排程管道->快樂的RPCRPC
- 任天堂傳奇社長巖田聰:讓自己快樂,也努力讓別人快樂
- 盤點QQ上的仙俠小遊戲 如何讓使用者沉迷“修仙”快樂氪金遊戲
- 需求分析 - 你如何理解使用者痛點
- 我們的快樂
- 快消品行業的MES需求行業
- 暴富不能使我快樂,《我的世界》創始人Notch的快樂觀
- 遊戲的無障礙之戰:讓快樂屬於每個人遊戲
- 《超級肉肉哥:永恆》GI 評測 8 分:痛並快樂著
- 沐瞳印尼電競負責人:理解並超越使用者需求,讓我們不斷變強
- 二十一章 PHP傳送簡訊PHP
- GPT接入企微應用 - 讓工作快樂起來GPT
- 第二十一章:變換(四)
- Snapchat:90%的Snapchat使用者在訪問該社交平臺時感到快樂
- 新的開始--記錄讓生活更美好
- 如何找到使用者的真正需求?
- 手忙腳亂的快樂 談談Overcooked讓人愛恨交織的多人合作機制
- 《Emotion》:研究顯示聽悲傷音樂能讓抑鬱的人感覺快樂
- 新年快樂!!!
- 快樂數
- 宋慧麗我的乖生日快樂
- IceRPC之依賴注入>快樂的RPCRPC依賴注入
- IceRPC之排程管道->快樂的RPCRPC
- 生活不只有工作——感謝風變程式設計讓我的生活更精彩程式設計
- 從落魄中二青年到逐漸走出迷茫的統一哥(大學生活篇)
- Nginx 是如何讓你的快取延期的Nginx快取
- 火山引擎資料飛輪幫助音樂 APP 充分洞察使用者需求,提升使用者粘性APP
- 掰扯掰扯需求分析:從工程到生活中的4個case
- ChatGPT會如何影響我們的工作生活和人力資源需求ChatGPT
- 快樂數字
- 節日快樂~
- 《快樂電玩》
- 女神節快樂
- 聖誕快樂
- Awareness Kit讓你的音樂APP脫穎而出,更懂使用者,也更動人心APP