Skip to content

Commit c3ff75c

Browse files
committed
update
1 parent 8d58463 commit c3ff75c

File tree

15 files changed

+212
-77
lines changed

15 files changed

+212
-77
lines changed

.idea/libraries/book_lib.xml

Lines changed: 9 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/libraries/lib.xml

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

book/src/main/java/com/atguigu/dao/impl/BookDaoImpl.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
import java.util.List;
77

8+
89
public class BookDaoImpl extends BaseDao implements BookDao {
910

1011

@@ -30,13 +31,13 @@ public int updateBook(Book book) {
3031

3132
@Override
3233
public Book queryBookById(Integer id) {
33-
String sql="select id `name`,author,price,sales,stock,img_path as imgPath from t_book where id=? ; ";
34+
String sql="select id ,`name`,author,price,sales,stock,img_path as imgPath from t_book where id=? ; ";
3435
return queryForOne(Book.class,sql,id);
3536
}
3637

3738
@Override
3839
public List<Book> queryBooks() {
39-
String sql="select id `name`,author,price,sales,stock,img_path as imgPath from t_book ;";
40+
String sql="select id ,`name`,author,price,sales,stock,img_path as imgPath from t_book ;";
4041
return queryForList(Book.class,sql);
4142
}
4243
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package com.atguigu.service;
2+
3+
import com.atguigu.pojo.Book;
4+
5+
import java.util.List;
6+
7+
public interface BookService {
8+
9+
public void addBook(Book book);
10+
11+
public void deleteBookById(Integer id);
12+
13+
public void updateBook(Book book);
14+
15+
public Book queryBookById(Integer id);
16+
17+
public List<Book> queryBooks();
18+
19+
}
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package com.atguigu.service.impl;
2+
3+
import com.atguigu.dao.BookDao;
4+
import com.atguigu.dao.impl.BookDaoImpl;
5+
import com.atguigu.pojo.Book;
6+
import com.atguigu.service.BookService;
7+
8+
import java.util.List;
9+
10+
public class BookServiceImpl implements BookService {
11+
12+
// 接口的引用 = 实现了该接口的类的对象
13+
// 为了调用 BookDao的方法,必须获取到BookDaoImpl实现类的 对象
14+
private BookDao bookDao=new BookDaoImpl();
15+
16+
17+
@Override
18+
public void addBook(Book book) {
19+
bookDao.addBook(book);
20+
}
21+
22+
@Override
23+
public void deleteBookById(Integer id) {
24+
bookDao.deleteBookById(id);
25+
}
26+
27+
@Override
28+
public void updateBook(Book book) {
29+
bookDao.updateBook(book);
30+
}
31+
32+
@Override
33+
public Book queryBookById(Integer id) {
34+
return bookDao.queryBookById(id);
35+
}
36+
37+
@Override
38+
public List<Book> queryBooks() {
39+
return bookDao.queryBooks();
40+
}
41+
}

book/src/main/java/com/atguigu/test/BookDaoTest.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ public void addBook() {
2222

2323
@Test
2424
public void deleteBookById() {
25+
bookDao.deleteBookById(21);
2526
}
2627

2728
@Test
@@ -32,9 +33,13 @@ public void updateBook() {
3233

3334
@Test
3435
public void queryBookById() {
36+
System.out.println(bookDao.queryBookById(21));;
3537
}
3638

3739
@Test
3840
public void queryBooks() {
41+
for (Book queryBook : bookDao.queryBooks()) {
42+
System.out.println(queryBook);
43+
}
3944
}
4045
}
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package com.atguigu.test;
2+
3+
import com.atguigu.dao.BookDao;
4+
import com.atguigu.pojo.Book;
5+
import com.atguigu.service.BookService;
6+
import com.atguigu.service.impl.BookServiceImpl;
7+
import org.junit.Test;
8+
9+
import java.math.BigDecimal;
10+
11+
import static org.junit.Assert.*;
12+
13+
public class BookServiceTest {
14+
15+
//这里需要调用的是 BookServiceImpl 实现类的方法 , 引用一下就好了
16+
private BookService bookService=new BookServiceImpl();
17+
18+
@Test
19+
public void addBook() {
20+
bookService.addBook(new Book
21+
(null,"国哥在手,天下我有","1125",new BigDecimal(1000000),100000000,0,null));
22+
}
23+
24+
@Test
25+
public void deleteBookById() {
26+
bookService.deleteBookById(22);
27+
}
28+
29+
@Test
30+
public void updateBook() {
31+
bookService.updateBook(new Book
32+
(22,"社会我国哥,人狠话不多","1125",new BigDecimal(999999),10,111110,null));
33+
}
34+
35+
@Test
36+
public void queryBookById() {
37+
System.out.println(bookService.queryBookById(22));;
38+
}
39+
40+
@Test
41+
public void queryBooks() {
42+
for (Book queryBook : bookService.queryBooks()) {
43+
System.out.println(queryBook);
44+
}
45+
}
46+
}

book/src/main/java/com/atguigu/web/BaseServlet.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@
99

1010
public abstract class BaseServlet extends HttpServlet {
1111

12+
@Override
13+
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
14+
doPost(req,resp);
15+
}
16+
1217
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
1318
String action=req.getParameter("action");
1419
//获取action业务 鉴别字符串,获取相应的业务 方法反射对象
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package com.atguigu.web;
2+
3+
import com.atguigu.pojo.Book;
4+
import com.atguigu.service.BookService;
5+
import com.atguigu.service.impl.BookServiceImpl;
6+
import com.atguigu.utils.WebUtils;
7+
8+
import javax.servlet.ServletException;
9+
import javax.servlet.http.HttpServletRequest;
10+
import javax.servlet.http.HttpServletResponse;
11+
import java.io.IOException;
12+
import java.util.List;
13+
14+
public class BookServlet extends BaseServlet{
15+
16+
//还是 接口的引用执行 实现了该接口的类的对象
17+
//要和数据库交互,需要访问Dao层,但web层不能直接访问dao层,需要先通过访问service层来访问dao层
18+
private BookService bookService=new BookServiceImpl();
19+
20+
protected void add(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
21+
//1.获取请求参数 , 封装成 Book 对象
22+
Book book = WebUtils.copyParamTOBean(req.getParameterMap(), new Book());
23+
//2.调用BookServlet.add()方法 , 保存图书
24+
bookService.addBook(book);
25+
//3.请求重定向 到 图书列表 页面 /manager/bookServlet?action=list
26+
resp.sendRedirect(req.getContextPath()+"/manager/bookServlet?action=list");
27+
28+
}
29+
30+
protected void delete(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
31+
32+
}
33+
34+
protected void update(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
35+
36+
}
37+
38+
protected void list(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
39+
//1.通过BookService 查询全部图书
40+
List<Book> books = bookService.queryBooks();
41+
//2.把全部图书 保存到Request域
42+
req.setAttribute("books",books);
43+
//3.请求转发到 /pages/manager/book_manager.jsp
44+
req.getRequestDispatcher("/pages/manager/book_manager.jsp").forward(req,resp);
45+
}
46+
}
Binary file not shown.

0 commit comments

Comments
 (0)