今回は、「Webアプリケーションの作成(1)―Webアプリケーション作成のポイント―」です。
簡単なWebアプリケーションを作って、作成のポイントを見てみましょう。
■動画はこちら
■動画で使用しているソースコード
サーブレット
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | import java.io.IOException; import jakarta.servlet.RequestDispatcher; import jakarta.servlet.ServletContext; import jakarta.servlet.ServletException; import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; public class Sv2 extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //JSPへフォワード ServletContext sc = getServletContext(); RequestDispatcher rd = sc.getRequestDispatcher("/WEB-INF/sv2_in.jsp"); rd.forward(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //入力内容(文字列)を取得 String str = req.getParameter("str"); //文字列を加工 Editor e = new Editor(); String editStr = e.execute(str); //リクエストへ加工した文字列をセット req.setAttribute("result", editStr); //JSPへフォワード ServletContext sc = getServletContext(); RequestDispatcher rd = sc.getRequestDispatcher("/WEB-INF/sv2_out.jsp"); rd.forward(req, resp); } } |
JSP1(入力画面)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> </head> <body style="margin: 24px;"> <form action="./sv2" method="post"> 文字列 <input type="text" name="str" /> <input type="submit" value="送信" /> </form> </body> </html> |
JSP2(結果画面)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <% //加工した文字列を取得 String str = (String)request.getAttribute("result"); %> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> </head> <body> <h2><%= str %></h2> </body> </html> |
Javaクラス(文字列を編集するクラス)
1 2 3 4 5 6 7 | public class Editor { public String execute(String str) { return "こんにちは、" + str + "さん"; } } |
web.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://jakarta.ee/xml/ns/jakartaee" xmlns:web="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_5_0.xsd" id="WebApp_ID" version="5.0"> <display-name>testWeb</display-name> <servlet> <description></description> <display-name>Sv2</display-name> <servlet-name>Sv2</servlet-name> <servlet-class>Sv2</servlet-class> </servlet> <servlet-mapping> <servlet-name>Sv2</servlet-name> <url-pattern>/sv2</url-pattern> </servlet-mapping> </web-app> |