diff --git a/book_store.db b/book_store.db
index 4a86d6e6..624d9771 100644
Binary files a/book_store.db and b/book_store.db differ
diff --git a/pom.xml b/pom.xml
index 1a90b05e..3a985cdd 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,6 +23,15 @@
3.1.0
provided
+
+
+ javax.servlet.jsp
+ javax.servlet.jsp-api
+ 2.3.1
+ provided
+
+
+
javax.servlet
@@ -85,8 +94,9 @@
tomcat7-maven-plugin
2.2
- 8080
+ 8081
/
+ true
diff --git a/projects-cli.json b/projects-cli.json
new file mode 100644
index 00000000..80d77fa6
--- /dev/null
+++ b/projects-cli.json
@@ -0,0 +1 @@
+{ "tagPattern": "_\\w+" }
diff --git a/src/main/java/com/pluralsight/BookDAO.java b/src/main/java/com/pluralsight/BookDAO.java
index 262e495e..541bb3c4 100644
--- a/src/main/java/com/pluralsight/BookDAO.java
+++ b/src/main/java/com/pluralsight/BookDAO.java
@@ -45,7 +45,7 @@ public Book getBook(int id) {
}
public ArrayList listAllBooks() {
- ArrayList listBook = new ArrayList<>();
+ ArrayList listBook = new ArrayList();
String sql = "SELECT * FROM book";
@@ -90,36 +90,43 @@ public boolean insertBook(Book book) {
return false;
}
+
+ public boolean updateBook(Book book) {
+ String sql = "update book set title=?, author=?, price=? where id=?";
- // public void deleteBook(int id) {
- // String sql = "DELETE FROM book WHERE id = ?";
- //
- // try {
- // PreparedStatement statement = jdbcConnection.prepareStatement(sql);
- // statement.setInt(1, id);
- // statement.executeUpdate();
- //
- // statement.close();
- // } catch (SQLException e) {
- // e.printStackTrace();
- // }
- // }
- //
- // public void updateBook(Book book) {
- // String sql = "UPDATE book SET title = ?, author = ?, price = ?" +
- // " WHERE id = ?";
- //
- // try {
- // PreparedStatement statement = jdbcConnection.prepareStatement(sql);
- // statement.setString(1, book.getTitle());
- // statement.setString(2, book.getAuthor());
- // statement.setFloat(3, book.getPrice());
- // statement.setInt(4, book.getId());
- //
- // statement.executeUpdate();
- // statement.close();
- // } catch(SQLException e) {
- // e.printStackTrace();
- // }
- // }
+ try {
+ PreparedStatement statement = jdbcConnection.prepareStatement(sql);
+ statement.setString(1, book.getTitle());
+ statement.setString(2, book.getAuthor());
+ statement.setFloat(3, book.getPrice());
+ statement.setInt(4, book.getId());
+
+ boolean rowUpdated = statement.executeUpdate() > 0;
+ statement.close();
+ return rowUpdated;
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+
+ return false;
+ }
+
+
+ public boolean deleteBook(Book book) {
+ String sql = "delete from book where id=?";
+
+ try {
+ PreparedStatement statement = jdbcConnection.prepareStatement(sql);
+ statement.setInt(1, book.getId());
+
+
+ boolean rowInserted = statement.executeUpdate() > 0;
+ statement.close();
+ return rowInserted;
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+
+ return false;
+ }
}
diff --git a/src/main/java/com/pluralsight/ControllerServlet.java b/src/main/java/com/pluralsight/ControllerServlet.java
index 08ac0cf3..ce86119d 100644
--- a/src/main/java/com/pluralsight/ControllerServlet.java
+++ b/src/main/java/com/pluralsight/ControllerServlet.java
@@ -44,7 +44,7 @@ public ControllerServlet() {
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
- protected void doGet(HttpServletRequest request, HttpServletResponse response)
+ public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String action = request.getPathInfo();
@@ -58,16 +58,19 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response)
break;
case "/insert":
insertBook(request, response);
+
+ break;
+ case "/edit":
+ showEditForm(request, response);
+
+ break;
+ case "/update":
+ updateBook(request, response);
+
+ break;
+ case "/delete":
+ deleteBook(request, response);
break;
- // case "/edit":
- // showEditForm(request, response);
- // break;
- // case "/delete":
- // deleteBook(request, response);
- // break;
- // case "/update":
- // updateBook(request, response);
- // break;
default:
listBooks(request, response);
break;
@@ -101,22 +104,20 @@ private void showNewForm(HttpServletRequest request, HttpServletResponse respons
RequestDispatcher dispatcher = request.getRequestDispatcher("/BookForm.jsp");
dispatcher.forward(request, response);
}
-
- // private void showEditForm(HttpServletRequest request, HttpServletResponse response)
- // throws ServletException, IOException {
- // int id = Integer.parseInt(request.getParameter("id"));
- // Book existingBook = bookDAO.getBook(id);
- // RequestDispatcher dispatcher = request.getRequestDispatcher("/BookForm.jsp");
- // request.setAttribute("book", existingBook);
- // dispatcher.forward(request, response);
- // }
-
- // private void deleteBook(HttpServletRequest request, HttpServletResponse response)
- // throws ServletException, IOException {
- // int id = Integer.parseInt(request.getParameter("id"));
- // bookDAO.deleteBook(id);
- // response.sendRedirect("list");
- // }
+
+ private void showEditForm(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
+
+ int bookid = Integer.parseInt(request.getParameter("id"));
+
+ Book exsitingBook = bookDAO.getBook(bookid);
+
+ RequestDispatcher dispatcher = request.getRequestDispatcher("/BookForm.jsp");
+ request.setAttribute("book", exsitingBook);
+ dispatcher.forward(request, response);
+ }
+
+
private void insertBook(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException, ClassNotFoundException, SQLException {
@@ -124,25 +125,39 @@ private void insertBook(HttpServletRequest request, HttpServletResponse response
String author = request.getParameter("bookauthor");
String priceString = request.getParameter("bookprice");
- Book newBook = new Book(title, author, Float.parseFloat(priceString));
+ Book newBook = new Book( title, author, Float.parseFloat(priceString));
bookDAO.insertBook(newBook);
- response.sendRedirect("list");
+ //response.sendRedirect("list");
}
+
+ private void updateBook(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException, ClassNotFoundException, SQLException {
+
+ String id = request.getParameter("id");
+ String title = request.getParameter("booktitle");
+ String author = request.getParameter("bookauthor");
+ String priceString = request.getParameter("bookprice");
- // private void updateBook(HttpServletRequest request, HttpServletResponse response)
- // throws ServletException, IOException, ClassNotFoundException, SQLException {
- // String idStr = request.getParameter("id");
- // int id = Integer.parseInt(idStr);
- // String title = request.getParameter("booktitle");
- // String author = request.getParameter("bookauthor");
- // String priceString = request.getParameter("bookprice");
- //
- // Book newBook = new Book(id, title, author, Float.parseFloat(priceString));
- //
- // bookDAO.updateBook(newBook);
- // response.sendRedirect("list");
- // }
+ Book uBook = new Book(Integer.parseInt(id),title, author, Float.parseFloat(priceString));
+
+ bookDAO.updateBook(uBook);
+ response.sendRedirect("list");
+ }
+
+
+
+ private void deleteBook(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException, ClassNotFoundException, SQLException {
+
+ int id = Integer.parseInt(request.getParameter("id"));
+
+ Book removeBook = new Book(id, "", "", 0);
+
+ bookDAO.deleteBook(removeBook);
+ response.sendRedirect("list");
+ }
+
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
diff --git a/src/main/java/com/pluralsight/LoginServlet.java b/src/main/java/com/pluralsight/LoginServlet.java
deleted file mode 100644
index ec7ca71d..00000000
--- a/src/main/java/com/pluralsight/LoginServlet.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package com.pluralsight;
-
-import java.io.IOException;
-import java.io.PrintWriter;
-
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-/**
- * Servlet implementation class LoginServlet
- */
-public class LoginServlet extends HttpServlet {
- private static final long serialVersionUID = 1L;
-
- /**
- * @see HttpServlet#HttpServlet()
- */
- public LoginServlet() {
- super();
- // TODO Auto-generated constructor stub
- }
-
- /**
- * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
- */
- protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
- // TODO Auto-generated method stub
- response.getWriter().append("Served at: ").append(request.getContextPath());
- }
-
- /**
- * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
- */
- protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
- // Get parameters
- String username = request.getParameter("username");
- String password = request.getParameter("password");
-
- PrintWriter writer = response.getWriter();
- writer.println("username = " + username + ", password = " + password);
- }
-
-}
diff --git a/src/main/java/com/pluralsight/NameHandler.java b/src/main/java/com/pluralsight/NameHandler.java
deleted file mode 100644
index b0f08951..00000000
--- a/src/main/java/com/pluralsight/NameHandler.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.pluralsight;
-
-public class NameHandler {
-
- private String name;
-
- /** Creates a new instance of NameHandler */
- public NameHandler() {
- name = null;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
-
-
-}
diff --git a/src/main/webapp/BookAdmin.jsp b/src/main/webapp/BookAdmin.jsp
index 9e9c25da..cbb67588 100644
--- a/src/main/webapp/BookAdmin.jsp
+++ b/src/main/webapp/BookAdmin.jsp
@@ -14,7 +14,6 @@
@@ -25,7 +24,6 @@
Title |
Author |
Price |
-
In Stock |
Add Book |
@@ -34,11 +32,8 @@
${ item.getTitle() } |
${ item.getAuthor() } |
|
-
10 |
-
Edit
- Delete |
- <%--
Edit
- Delete | --%>
+
Edit
+ Delete |
diff --git a/src/main/webapp/BookForm.jsp b/src/main/webapp/BookForm.jsp
index 353c2a51..ccc0868f 100644
--- a/src/main/webapp/BookForm.jsp
+++ b/src/main/webapp/BookForm.jsp
@@ -11,38 +11,36 @@
-
-
-
-
-
- List of Books
-
- | Title |
- Author |
- Price |
- In Stock |
- Add Book |
-
-
-
-
- | ${ item.getTitle() } |
- ${ item.getAuthor() } |
- |
- 10 |
- Edit Delete |
-
-
-
-
-
-
diff --git a/src/main/webapp/BookList.jsp b/src/main/webapp/BookList.jsp
index ad0950cb..ac40509a 100644
--- a/src/main/webapp/BookList.jsp
+++ b/src/main/webapp/BookList.jsp
@@ -14,7 +14,6 @@
diff --git a/src/main/webapp/ShoppingCart.jsp b/src/main/webapp/ShoppingCart.jsp
deleted file mode 100644
index fab13b4b..00000000
--- a/src/main/webapp/ShoppingCart.jsp
+++ /dev/null
@@ -1,45 +0,0 @@
-<%@ page language="java" contentType="text/html; charset=UTF-8"
- pageEncoding="UTF-8"%>
-<%@ taglib uri = "http://java.sun.com/jsp/jstl/core" prefix = "c" %>
-<%@ taglib prefix = "fmt" uri = "http://java.sun.com/jsp/jstl/fmt" %>
-
-
-