/** * - Bot. * . * * Created by promoscow on 26.07.17. */ public class Bot { private Integer id; private String name; private String serial; private static Bot ourInstance = new Bot(); public static Bot getInstance() { return ourInstance; } private Bot() { } public Bot(String name, String serial, Integer id) { this.name = name; this.serial = serial; this.id = id; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSerial() { return serial; } public void setSerial(String serial) { this.serial = serial; } @Override public String toString() { return "Bot{" + "id=" + id + ", name='" + name + '\'' + ", serial=" + serial + '}'; } }
<servlet> <servlet-name>botServlet</servlet-name> <servlet-class>web.BotServlet</servlet-class> <load-on-startup>0</load-on-startup> </servlet> <servlet-mapping> <servlet-name>botServlet</servlet-name> <url-pattern>/bot</url-pattern> </servlet-mapping>
<%-- Created by IntelliJ IDEA. User: promoscow Date: 26.07.17 Time: 9:28 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <html> <head> <title>Bot</title> </head> <body> <section> <h3>Bot info</h3> <jsp:useBean id="bot" scope="request" type="ru.javawebinar.topjava.model.Bot"/> <tr> <td>ID: ${bot.id} | Name: ${bot.name} | Serial number: ${bot.serial}</td> <td><a href="bot?action=update">Update</a></td> </tr> </section> </body> </html>
<jsp:useBean id="bot" scope="request" type="ru.javawebinar.topjava.model.Bot"/>
<%-- Created by IntelliJ IDEA. User: promoscow Date: 01.08.17 Time: 13:43 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Update</title> </head> <body> <section> <jsp:useBean id="bot" scope="request" type="ru.javawebinar.topjava.model.Bot"/> <form method="post" action="bot?action=submit"> <dl> <dt>ID: </dt> <dd><input type="number" name="id" value="${bot.id}" placeholder="${bot.id}" /></dd> </dl> <dl> <dt>Name: </dt> <dd><input type="text" name="name" value="${bot.name}" placeholder="${bot.name}" /></dd> </dl> <dl> <dt>Serial number: </dt> <dd><input type="number" name="serial" value="${bot.serial}" placeholder="${bot.serial}" /></dd> </dl> <button type="submit">Save</button> </form> </section> </body> </html>
<form method="post" action="bot?action=submit">
<input type="number" name="id" value="${bot.id}" placeholder="${bot.id}" />
The name of the form attribute: “id” (name = “id”), the value that we pass to is the id field of the bot object ($ {bot.id}); also, we enter in the field the existing value obtained in the attribute “bot” ( placeholder = "$ {bot.id}).
<html> <head> <meta charset="UTF-8"> <title>Bot Test Servlet Page</title> </head> <body> <ul> <li><a href="bot">Bot</a></li> </ul> </body> </html>
import model.Bot; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /** * Bot Servlet class. * * Created by promoscow on 26.07.17. */ public class BotServlet extends HttpServlet { private Bot bot; @Override public void init(ServletConfig config) throws ServletException { super.init(); bot = new Bot("Amigo", "228274635", 1); } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("Enter doGet"); String action = request.getParameter("action"); request.setAttribute("bot", bot); switch (action == null ? "info" : action) { case "update": request.getRequestDispatcher("/update.jsp").forward(request, response); break; case "info": default: request.getRequestDispatcher("/bot.jsp").forward(request, response); break; } } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("Enter doPost"); request.setCharacterEncoding("UTF-8"); String action = request.getParameter("action"); if ("submit".equals(action)) { bot.setId(Integer.parseInt(request.getParameter("id"))); bot.setName(request.getParameter("name")); bot.setSerial(request.getParameter("serial")); } request.setAttribute("bot", bot); request.getRequestDispatcher("/bot.jsp").forward(request, response); } }
@Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // , doGet System.out.println("Enter doGet"); // . <i>"bot?action=update"</i> (bot.jsp, 20 ) -, &. action=update. () action, update String. String action = request.getParameter("action"); // , . . , bot "bot", jsp- request.setAttribute("bot", bot); switch (action == null ? "info" : action) { // update (action=update), /update.jsp, ( bot) case "update": request.getRequestDispatcher("/update.jsp").forward(request, response); break; // (action == null ? "info"), bot.jsp, ( ) case "info": default: request.getRequestDispatcher("/bot.jsp").forward(request, response); break; } }
request.setAttribute("bot", bot); request.getRequestDispatcher("/update.jsp").forward(request, response);
@Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("Enter doPost"); // UTF-8 — , , ( , ) request.setCharacterEncoding("UTF-8"); // action Stiring, doGet() String action = request.getParameter("action"); // action=submit, , . , . , (, update.jsp name="id" value=${bot.id} id, bot.setId(Integer.parseInt(request.getParameter("id"))); if ("submit".equals(action)) { bot.setId(Integer.parseInt(request.getParameter("id"))); bot.setName(request.getParameter("name")); bot.setSerial(request.getParameter("serial")); } // bot /bot.jsp, request.setAttribute("bot", bot); request.getRequestDispatcher("/bot.jsp").forward(request, response); }
Source: https://habr.com/ru/post/334138/
All Articles