Advertisement
stronk_8s

Java Servlet CRUD+Search

Mar 31st, 2025 (edited)
563
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 10.84 KB | Source Code | 0 0
  1. //CrimeBeans
  2.  
  3. package urvil.internal_exam;
  4.  
  5. import java.util.Collection;
  6. import javax.ejb.Stateless;
  7. import javax.persistence.EntityManager;
  8. import javax.persistence.PersistenceContext;
  9.  
  10. @Stateless
  11. public class CrimeBeans implements CrimeBeansLocal {
  12.  
  13.     @PersistenceContext(unitName = "my_persistence_unit")
  14.     EntityManager em;
  15.  
  16.     @Override
  17.     public Collection<Crime> getAllCrimes() {
  18.         return em.createNamedQuery("Crime.findAll").getResultList();
  19.     }
  20.  
  21.     @Override
  22.     public Crime getCrimeById(Integer id) {
  23.         return em.find(Crime.class, id);
  24.     }
  25.  
  26.     @Override
  27.     public Crime getCrimeByLocation(String location) {
  28.         return em.createNamedQuery("Crime.findByLocation", Crime.class)
  29.                 .setParameter("location", location).getSingleResult();
  30.     }
  31.  
  32.     @Override
  33.     public void addCrime(String location, String punishment) {
  34.         Crime crime = new Crime();
  35.         crime.setLocation(location);
  36.         crime.setPunishment(punishment);
  37.         em.persist(crime);
  38.     }
  39.  
  40.     @Override
  41.     public void updateCrime(Integer id, String location, String punishment) {
  42.         Crime crime = em.find(Crime.class, id);
  43.         crime.setLocation(location);
  44.         crime.setPunishment(punishment);
  45.         em.merge(crime);
  46.     }
  47.  
  48.     @Override
  49.     public void removeCrime(Integer id) {
  50.         Crime crime = em.find(Crime.class, id);
  51.         em.remove(crime);
  52.     }
  53.  
  54.     // Add business logic below. (Right-click in editor and choose
  55.     // "Insert Code > Add Business Method")
  56. }
  57.  
  58.  
  59. //Crimes-List-Servlet
  60. package urvil.internal_exam;
  61.  
  62. import java.io.IOException;
  63. import java.io.PrintWriter;
  64. import java.util.Collection;
  65. import javax.ejb.EJB;
  66. import javax.servlet.ServletException;
  67. import javax.servlet.annotation.WebServlet;
  68. import javax.servlet.http.HttpServlet;
  69. import javax.servlet.http.HttpServletRequest;
  70. import javax.servlet.http.HttpServletResponse;
  71.  
  72. @WebServlet(name = "Crimes", urlPatterns = {"/Crimes"})
  73. public class Crimes extends HttpServlet {
  74.  
  75.     @EJB
  76.     CrimeBeansLocal cbl;
  77.  
  78.     protected void processRequest(HttpServletRequest request, HttpServletResponse response)
  79.             throws ServletException, IOException {
  80.         response.setContentType("text/html;charset=UTF-8");
  81.  
  82.         try (PrintWriter out = response.getWriter()) {
  83.             /* TODO output your page here. You may use following sample code. */
  84.             out.println("<!DOCTYPE html>");
  85.             out.println("<html>");
  86.             out.println("<head>");
  87.             out.println("<title>Servlet Crimes</title>");
  88.             out.println("</head>");
  89.             out.println("<body>");
  90.             out.println("<a href='AddCrime'>Add Crime</a>");
  91.             out.println("<form method='POST' action='SearchCrime'>"
  92.                     + "<input type='text' name='search'/>"
  93.                     + "<input type='submit' value='Submit'/></form>");
  94.             out.println("<table><tr><th>Location</th><th>Punishment</th><th>Edit</th><th>Delete</th></tr>");
  95.             Collection<Crime> crimes = cbl.getAllCrimes();
  96.             for (Crime c : crimes) {
  97.                 out.println("<tr>");
  98.                 out.println("<td>" + c.getLocation() + "</td>");
  99.                 out.println("<td>" + c.getPunishment() + "</td>");
  100.                 out.println("<td><a href='UpdateCrime?id=" + c.getId() + "'>Edit</a></td>");
  101.                 out.println("<td><a href='Crimes?delid=" + c.getId() + "'>Delete</a></td>");
  102.                 out.println("</tr>");
  103.             }
  104.             out.println("</table>");
  105.             out.println("<h1>Servlet Crimes at " + request.getContextPath() + "</h1>");
  106.             out.println("</body>");
  107.             out.println("</html>");
  108.         }
  109.     }
  110.  
  111.     @Override
  112.     protected void doGet(HttpServletRequest request, HttpServletResponse response)
  113.             throws ServletException, IOException {
  114.         String delId = request.getParameter("delid");
  115.         if (delId != null) {
  116.             cbl.removeCrime(Integer.parseInt(delId));
  117.             response.sendRedirect("Crimes");
  118.         } else {
  119.             processRequest(request, response);
  120.         }
  121.     }
  122.     @Override
  123.     protected void doPost(HttpServletRequest request, HttpServletResponse response)
  124.             throws ServletException, IOException {
  125.         processRequest(request, response);
  126.     }
  127.  
  128.     @Override
  129.     public String getServletInfo() {
  130.         return "Short description";
  131.     }// </editor-fold>
  132.  
  133. }
  134.  
  135.  
  136. //Add-Crime-Servlet
  137. package urvil.internal_exam;
  138.  
  139. import java.io.IOException;
  140. import java.io.PrintWriter;
  141. import javax.ejb.EJB;
  142. import javax.servlet.ServletException;
  143. import javax.servlet.annotation.WebServlet;
  144. import javax.servlet.http.HttpServlet;
  145. import javax.servlet.http.HttpServletRequest;
  146. import javax.servlet.http.HttpServletResponse;
  147. @WebServlet(name = "AddCrime", urlPatterns = {"/AddCrime"})
  148. public class AddCrime extends HttpServlet {
  149.    
  150.     @EJB
  151.     CrimeBeansLocal cbl;
  152.     protected void processRequest(HttpServletRequest request, HttpServletResponse response)
  153.             throws ServletException, IOException {
  154.         response.setContentType("text/html;charset=UTF-8");
  155.         try (PrintWriter out = response.getWriter()) {
  156.             /* TODO output your page here. You may use following sample code. */
  157.             out.println("<!DOCTYPE html>");
  158.             out.println("<html>");
  159.             out.println("<head>");
  160.             out.println("<title>Servlet AddCrime</title>");
  161.             out.println("</head>");
  162.             out.println("<body>");
  163.             out.println("<form method='POST' action='AddCrime'>"
  164.                     + "Location<input type='text' name='location'/><br>"
  165.                     + "Punishment<input type='text' name='punishment'/><br>"
  166.                     + "<input type='submit' value='Submit'/></form>");
  167.             out.println("<h1>Servlet AddCrime at " + request.getContextPath() + "</h1>");
  168.             out.println("</body>");
  169.             out.println("</html>");
  170.         }
  171.     }
  172.     @Override
  173.     protected void doGet(HttpServletRequest request, HttpServletResponse response)
  174.             throws ServletException, IOException {
  175.         processRequest(request, response);
  176.     }
  177.  
  178.     @Override
  179.     protected void doPost(HttpServletRequest request, HttpServletResponse response)
  180.             throws ServletException, IOException {
  181.         String location = request.getParameter("location");
  182.         String punishment = request.getParameter("punishment");
  183.         cbl.addCrime(location, punishment);
  184.         response.sendRedirect("Crimes");
  185.     }
  186.     @Override
  187.     public String getServletInfo() {
  188.         return "Short description";
  189.     }// </editor-fold>
  190.  
  191. }
  192.  
  193.  
  194.  
  195. //Update-Crime-Servlet
  196. package urvil.internal_exam;
  197.  
  198. import java.io.IOException;
  199. import java.io.PrintWriter;
  200. import javax.ejb.EJB;
  201. import javax.servlet.ServletException;
  202. import javax.servlet.annotation.WebServlet;
  203. import javax.servlet.http.HttpServlet;
  204. import javax.servlet.http.HttpServletRequest;
  205. import javax.servlet.http.HttpServletResponse;
  206.  
  207. @WebServlet(name = "UpdateCrime", urlPatterns = {"/UpdateCrime"})
  208. public class UpdateCrime extends HttpServlet {
  209.  
  210.     @EJB
  211.     CrimeBeansLocal cbl;
  212.     @Override
  213.     protected void doGet(HttpServletRequest request, HttpServletResponse response)
  214.             throws ServletException, IOException {
  215.         int crimeId = Integer.parseInt(request.getParameter("id"));
  216.         Crime crime = cbl.getCrimeById(crimeId);
  217.         try (PrintWriter out = response.getWriter()) {
  218.             /* TODO output your page here. You may use following sample code. */
  219.             out.println("<!DOCTYPE html>");
  220.             out.println("<html>");
  221.             out.println("<head>");
  222.             out.println("<title>Servlet UpdateCrime</title>");
  223.             out.println("</head>");
  224.             out.println("<body>");
  225.             out.println("<form method='POST' action='UpdateCrime'>"
  226.                     +"<input type='hidden' name='id' value='" + crime.getId()+ "'/>"
  227.                     + "Location<input type='text' name='location' value='" + crime.getLocation() + "'/><br>"
  228.                     + "Location<input type='text' name='punishment' value='" + crime.getPunishment() + "'/><br>"
  229.                     + "<input type='submit' value='Submit'/></form>");
  230.             out.println("<h1>Servlet UpdateCrime at " + request.getContextPath() + "</h1>");
  231.             out.println("</body>");
  232.             out.println("</html>");
  233.         }
  234.     }
  235.  
  236.     @Override
  237.     protected void doPost(HttpServletRequest request, HttpServletResponse response)
  238.             throws ServletException, IOException {
  239.         int crimeId = Integer.parseInt(request.getParameter("id"));
  240.         String location = request.getParameter("location");
  241.         String punishment = request.getParameter("punishment");
  242.         if (location != null && punishment != null) {
  243.             cbl.updateCrime(crimeId, location, punishment);
  244.         }
  245.  
  246.         response.sendRedirect("Crimes");
  247.     }
  248.     @Override
  249.     public String getServletInfo() {
  250.         return "Short description";
  251.     }// </editor-fold>
  252.  
  253. }
  254.  
  255.  
  256. //Search-Crime-Servlet
  257. package urvil.internal_exam;
  258.  
  259. import java.io.IOException;
  260. import java.io.PrintWriter;
  261. import javax.ejb.EJB;
  262. import javax.servlet.ServletException;
  263. import javax.servlet.annotation.WebServlet;
  264. import javax.servlet.http.HttpServlet;
  265. import javax.servlet.http.HttpServletRequest;
  266. import javax.servlet.http.HttpServletResponse;
  267.  
  268. @WebServlet(name = "SearchCrime", urlPatterns = {"/SearchCrime"})
  269. public class SearchCrime extends HttpServlet {
  270.  
  271.     @EJB
  272.     CrimeBeansLocal cbl;
  273.     protected void processRequest(HttpServletRequest request, HttpServletResponse response)
  274.             throws ServletException, IOException {
  275.  
  276.     }
  277.     @Override
  278.     protected void doPost(HttpServletRequest request, HttpServletResponse response)
  279.             throws ServletException, IOException {
  280.  
  281.         response.setContentType("text/html;charset=UTF-8");
  282.         String location = request.getParameter("search");
  283.         Crime crime = cbl.getCrimeByLocation(location);
  284.  
  285.         try (PrintWriter out = response.getWriter()) {
  286.             /* TODO output your page here. You may use following sample code. */
  287.             out.println("<!DOCTYPE html>");
  288.             out.println("<html>");
  289.             out.println("<head>");
  290.             out.println("<title>Servlet SearchCrime</title>");
  291.             out.println("</head>");
  292.             out.println("<body>");
  293.             out.println("<h1>Location: " + crime.getLocation() + "</h1>");
  294.             out.println("<h2>Punishment: " + crime.getPunishment() + "</h2>");
  295.             out.println("<a href='Crimes'>Go Back</a>");
  296.             out.println("</body>");
  297.             out.println("</html>");
  298.         }
  299.     }
  300.     @Override
  301.     public String getServletInfo() {
  302.         return "Short description";
  303.     }// </editor-fold>
  304.  
  305. }
  306.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement