这里有新鲜出炉的Java函数式编程,程序狗速度看过来!
java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaEE(j2ee), JavaME(j2me), JavaSE(j2se))的总称。
这篇文章主要介绍了javaweb图书商城设计之图书模块的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
1、创建相关类
cn.itcast.bookstore.book
domain:Book
dao:BookDao
service :BookService
web.servle:BookServlet
Book
- public class Book {
- private String bid;
- private String bname;
- private double price;
- private String author;
- private String image;
- private Category category;
- private boolean del;
- }
BookDao
- public class BookDao {
- private QueryRunner qr = new TxQueryRunner();
- /**
- * 查询所有图书
- * @return
- */
- public List < Book > findAll() {
- try {
- String sql = "select * from book where del=false";
- return qr.query(sql, new BeanListHandler < Book > (Book.class));
- } catch(SQLException e) {
- throw new RuntimeException(e);
- }
- }
- /**
- * 按分类查询
- * @param cid
- * @return
- */
- public List < Book > findByCategory(String cid) {
- try {
- String sql = "select * from book where cid=? and del=false";
- return qr.query(sql, new BeanListHandler < Book > (Book.class), cid);
- } catch(SQLException e) {
- throw new RuntimeException(e);
- }
- }
- /**
- * 加载方法
- * @param bid
- * @return
- */
- public Book findByBid(String bid) {
- try {
- /*
- * 我们需要在Book对象中保存Category的信息
- */
- String sql = "select * from book where bid=?";
- Map < String,
- Object > map = qr.query(sql, new MapHandler(), bid);
- /*
- * 使用一个Map,映射出两个对象,再给这两个对象建立关系!
- */
- Category category = CommonUtils.toBean(map, Category.class);
- Book book = CommonUtils.toBean(map, Book.class);
- book.setCategory(category);
- return book;
- } catch(SQLException e) {
- throw new RuntimeException(e);
- }
- }
- /**
- * 查询指定分类下的图书本数
- * @param cid
- * @return
- */
- public int getCountByCid(String cid) {
- try {
- String sql = "select count(*) from book where cid=?";
- Number cnt = (Number) qr.query(sql, new ScalarHandler(), cid);
- return cnt.intValue();
- } catch(SQLException e) {
- throw new RuntimeException(e);
- }
- }
- /**
- * 添加图书
- * @param book
- */
- public void add(Book book) {
- try {
- String sql = "insert into book values(?,?,?,?,?,?)";
- Object[] params = {
- book.getBid(),
- book.getBname(),
- book.getPrice(),
- book.getAuthor(),
- book.getImage(),
- book.getCategory().getCid()
- };
- qr.update(sql, params);
- } catch(SQLException e) {
- throw new RuntimeException(e);
- }
- }
- /**
- * 删除图书
- * @param bid
- */
- public void delete(String bid) {
- try {
- String sql = "update book set del=true where bid=?";
- qr.update(sql, bid);
- } catch(SQLException e) {
- throw new RuntimeException(e);
- }
- }
- public void edit(Book book) {
- try {
- String sql = "update book set bname=?, price=?,author=?, image=?, cid=? where bid=?";
- Object[] params = {
- book.getBname(),
- book.getPrice(),
- book.getAuthor(),
- book.getImage(),
- book.getCategory().getCid(),
- book.getBid()
- };
- qr.update(sql, params);
- } catch(SQLException e) {
- throw new RuntimeException(e);
- }
- }
- }
BookService
- public class BookService {
- private BookDao bookDao = new BookDao();
- /**
- * 查询所有图书
- * @return
- */
- public List < Book > findAll() {
- return bookDao.findAll();
- }
- /**
- * 按分类查询图书
- * @param cid
- * @return
- */
- public List < Book > findByCategory(String cid) {
- return bookDao.findByCategory(cid);
- }
- public Book load(String bid) {
- return bookDao.findByBid(bid);
- }
- /**
- * 添加图书
- * @param book
- */
- public void add(Book book) {
- bookDao.add(book);
- }
- public void delete(String bid) {
- bookDao.delete(bid);
- }
- public void edit(Book book) {
- bookDao.edit(book);
- }
- }
BookServlet
- public class BookServlet extends BaseServlet {
- private BookService bookService = new BookService();
- public String load(HttpServletRequest request, HttpServletResponse response) throws ServletException,
- IOException {
- /*
- * 1. 得到参数bid
- * 2. 查询得到Book
- * 3. 保存,转发到desc.jsp
- */
- request.setAttribute("book", bookService.load(request.getParameter("bid")));
- return "f:/jsps/book/desc.jsp";
- }
- /**
- * 查询所有图书
- * @param request
- * @param response
- * @return
- * @throws ServletException
- * @throws IOException
- */
- public String findAll(HttpServletRequest request, HttpServletResponse response) throws ServletException,
- IOException {
- request.setAttribute("bookList", bookService.findAll());
- return "f:/jsps/book/list.jsp";
- }
- /**
- * 按分类查询
- * @param request
- * @param response
- * @return
- * @throws ServletException
- * @throws IOException
- */
- public String findByCategory(HttpServletRequest request, HttpServletResponse response) throws ServletException,
- IOException {
- String cid = request.getParameter("cid");
- request.setAttribute("bookList", bookService.findByCategory(cid));
- return "f:/jsps/book/list.jsp";
- }
- }
2、查询所有图书
流程:left.jsp(全部分类) -> BookServlet#findAll() -> /jsps/book/list.jsp
3、按分类查询图书
流程:left.jsp -> BookServlet#findByCategory() -> list.jsp
4、查询详细信息(加载)
流程:list.jsp(点击某一本书) -> BookServlet#load() -> desc.jsp
来源: http://www.phperz.com/article/17/1202/359435.html