JSP-POST
現改寫JSP如下
透過form這個Tag傳給定義的Url為/login.do的Servlet來處理
並用input傳入參數,直接輸入PIG,上面網址也會轉傳name=PIG的參數
網址列上的name就來字於input的input的設定
但這還是走Get的Method
該如何改走HTTP定義的POST?
直接在form上加上
先回到原始網站:
隨意傳一個參數,雖然有錯,但Http已改為post
並且有傳入參數:
並且是傳給Servlet的Url名為:
目前Servlet只有doGet Method來接VIEW傳來的Get Method
現在還缺VIEW傳來的POST對應的Method
直接先在views資料挾內建一個welcome.jsp
在LoginServlet內複製doGet方法改名為doPost
原本寫的 request.setAttribute都刪掉剩
並導向welcome.jsp
先進到網址:http://localhost:8090/login.do
輸入一個名子
submit後得
也確實有傳入參數:Awesome Pig
整體基本流程變為:
JSP(Post Method)->Servlet接到是VIEW來的Post並對應doPost方法
導向doPost方法對應的welcome.jsp網頁
所以同理也可以加一行
request.setAttribute(“name”, request.getParameter(“name”));
可以重新得到:
目前流程變為:
進到http://localhost:8090/login.do導向Servlet的doGet到login.jsp
再透過login.jsp的form input的submit改為Post導向Servlet的doPost方法
並最後導到welcome.jsp