Advertisement
syntaxer_

Untitled

Jun 5th, 2018
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.50 KB | None | 0 0
  1. package com.demo;
  2.  
  3. import java.io.IOException;
  4. import java.sql.SQLException;
  5. import java.util.List;
  6.  
  7. import javax.servlet.RequestDispatcher;
  8. import javax.servlet.ServletException;
  9. import javax.servlet.http.HttpServlet;
  10. import javax.servlet.http.HttpServletRequest;
  11. import javax.servlet.http.HttpServletResponse;
  12.  
  13. /**
  14.  * Created by IntelliJ IDEA.
  15.  * User: FERREL JOHN FERNANDO
  16.  * Date: 05/06/2018.
  17.  * Time: 17:19.
  18.  * To change this template use File | Settings | File Templates.
  19.  */
  20. public class ControllerServlet extends HttpServlet {
  21.     private static final long serialVersionUID = 1L;
  22.     private BookDAO bookDAO;
  23.  
  24.     public void init() {
  25.         String jdbcURL = getServletContext().getInitParameter("jdbcURL");
  26.         String jdbcUsername = getServletContext().getInitParameter("jdbcUsername");
  27.         String jdbcPassword = getServletContext().getInitParameter("jdbcPassword");
  28.  
  29.         bookDAO = new BookDAO(jdbcURL, jdbcUsername, jdbcPassword);
  30.  
  31.     }
  32.  
  33.     protected void doPost(HttpServletRequest request, HttpServletResponse response)
  34.             throws ServletException, IOException {
  35.         doGet(request, response);
  36.     }
  37.  
  38.     protected void doGet(HttpServletRequest request, HttpServletResponse response)
  39.             throws ServletException, IOException {
  40.         String action = request.getServletPath();
  41.  
  42.         try {
  43.             switch (action) {
  44.             case "/new":
  45.                 showNewForm(request, response);
  46.                 break;
  47.             case "/insert":
  48.                 insertBook(request, response);
  49.                 break;
  50.             case "/delete":
  51.                 deleteBook(request, response);
  52.                 break;
  53.             case "/edit":
  54.                 showEditForm(request, response);
  55.                 break;
  56.             case "/update":
  57.                 updateBook(request, response);
  58.                 break;
  59.             default:
  60.                 listBook(request, response);
  61.                 break;
  62.             }
  63.         } catch (SQLException ex) {
  64.             throw new ServletException(ex);
  65.         }
  66.     }
  67.  
  68.     private void listBook(HttpServletRequest request, HttpServletResponse response)
  69.             throws SQLException, IOException, ServletException {
  70.         List<Book> listBook = bookDAO.listAllBooks();
  71.         request.setAttribute("listBook", listBook);
  72.         RequestDispatcher dispatcher = request.getRequestDispatcher("BookList.jsp");
  73.         dispatcher.forward(request, response);
  74.     }
  75.  
  76.     private void showNewForm(HttpServletRequest request, HttpServletResponse response)
  77.             throws ServletException, IOException {
  78.         RequestDispatcher dispatcher = request.getRequestDispatcher("BookForm.jsp");
  79.         dispatcher.forward(request, response);
  80.     }
  81.  
  82.     private void showEditForm(HttpServletRequest request, HttpServletResponse response)
  83.             throws SQLException, ServletException, IOException {
  84.         int id = Integer.parseInt(request.getParameter("id"));
  85.         Book existingBook = bookDAO.getBook(id);
  86.         RequestDispatcher dispatcher = request.getRequestDispatcher("BookForm.jsp");
  87.         request.setAttribute("book", existingBook);
  88.         dispatcher.forward(request, response);
  89.  
  90.     }
  91.  
  92.     private void insertBook(HttpServletRequest request, HttpServletResponse response)
  93.             throws SQLException, IOException {
  94.         String title = request.getParameter("title");
  95.         String author = request.getParameter("author");
  96.         float price = Float.parseFloat(request.getParameter("price"));
  97.  
  98.         Book newBook = new Book(title, author, price);
  99.         bookDAO.insertBook(newBook);
  100.         response.sendRedirect("list");
  101.     }
  102.  
  103.     private void updateBook(HttpServletRequest request, HttpServletResponse response)
  104.             throws SQLException, IOException {
  105.         int id = Integer.parseInt(request.getParameter("id"));
  106.         String title = request.getParameter("title");
  107.         String author = request.getParameter("author");
  108.         float price = Float.parseFloat(request.getParameter("price"));
  109.  
  110.         Book book = new Book(id, title, author, price);
  111.         bookDAO.updateBook(book);
  112.         response.sendRedirect("list");
  113.     }
  114.  
  115.     private void deleteBook(HttpServletRequest request, HttpServletResponse response)
  116.             throws SQLException, IOException {
  117.         int id = Integer.parseInt(request.getParameter("id"));
  118.  
  119.         Book book = new Book(id);
  120.         bookDAO.deleteBook(book);
  121.         response.sendRedirect("list");
  122.  
  123.     }
  124. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement