Este artigo seguirá o artigo anterior no módulo de classificação do livro de shoppings para sua referência. O conteúdo específico é o seguinte
1. Crie classes relacionadas
cn.itcast.bookstore.book
Domínio: livro
DAO: Bookdao
Serviço: Serviço de Books
Web.Servle: BookServlet
Livro
Public Class Book {Private String Bid; String privada Bname; preço duplo privado; Autor de String Private; imagem de string privada; categoria privada categoria; Privado booleano del;}Bookdao
classe pública bookdao {private Queryrunner qr = new TxQueryRunner (); / ** * Consulta todos os livros * @return */ list public <Book> findall () {try {string sql = "Selecione * no livro onde del = false"; retornar Qr.Query (SQL, New Beanlisthandler <Book> (book.class)); } catch (sqLexception e) {lança a nova run timeException (e); }} / ** * consulta por categoria * @param cid * @return * / list public <Book> findByCategory (string cid) {try {string sql = "selecione * do livro onde cid =? E del = false"; retornar Qr.Query (SQL, New Beanlisthandler <Book> (book.class), CID); } catch (sqLexception e) {lança a nova run timeException (e); }} / ** * Método de carregamento * @param bid * @return * / public book findbybid (string bid) {try { / * * precisamos salvar as informações da categoria no objeto do livro * / string sql = "selecione * do livro onde bid =?"; Mapa <string, objeto> map = qr.Query (sql, new maphandler (), bid); / * * Use um mapa para mapear dois objetos e, em seguida, estabeleça um relacionamento para esses dois objetos! */ Categoria categoria = Commonutils.toBean (mapa, category.class); Livro do livro = CommonUtils.Tobean (mapa, book.class); book.setCategory (categoria); livro de retorno; } catch (sqLexception e) {lança a nova run timeException (e); }} / *** Consulte o número de livros na categoria especificada* @param cid* @return* / public int getCountByCid (string cid) {try {string sql = "selecione count (*) do livro onde cid =?"; Número cnt = (número) qr.Query (sql, new scalarHandler (), cid); return cnt.IntValue (); } catch (sqLexception e) {lança a nova run timeException (e); }} / *** Adicionar livro* @param livro* / public void add (livro do livro) {tente {string sql = "inserir nos valores do livro (?,?,?,?,?)"; Objeto [] params = {book.getbid (), book.getbname (), book.getprice (), book.getauthor (), book.getImage (), book.getCategory (). GetCid ()}; qr.Update (SQL, params); } catch (sqLexception e) {lança a nova run timeException (e); }} / *** Exclua o livro* @param bid* / public void delete (string bid) {try {string sql = "Atualize o conjunto de livros del = true where bid =?"; qr.Update (SQL, BID); } catch (sqLexception e) {lança a nova run timeException (e); }} public void edit (livro de livros) {tente {string sql = "Atualize o conjunto de livros Bname =?, preço =?, autor =?, imagem =?, cid =? Onde BID =?"; Objeto [] params = {book.getBname (), book.getprice (), book.getauthor (), book.getImage (), book.getCategory (). GetCid (), book.getbid ()}; qr.Update (SQL, params); } catch (sqLexception e) {lança a nova run timeException (e); }}}Serviço de Books
classe pública BookService {private bookdao bookdao = new bookdao (); / *** Consulta todos os livros* @return*/ list public <Book> findall () {return bookdao.findall (); } / ** * Livros de consulta por categoria * @param cid * @return * / list public <Book> findByCategory (string cid) {return bookdao.findbycategory (cid); } public book load (string bid) {return bookdao.findbybid (bid); } / *** Adicionar livro* @param livro* / public void add (livro de livros) {bookdao.add (livro); } public void Delete (String bid) {bookdao.delete (BID); } public void Edit (livro) {bookdao.edit (livro); }}Serviço de livros
Public Class BookServlet estende BasEServlet {private BookService BookService = New BookService (); Public String Load (solicitação httpServletRequest, resposta httpServletResponse) lança servletexception, ioexception { / * * 1. Obtenha a oferta do parâmetro * 2. Query Get Book * 3. Salve e encaminhe para des desc.jsp * / request.Setattruction ("book"), bookService.Load.get.getParameter (" retornar "f: /jsps/book/desc.jsp"; } / ** * Consulta todos os livros * @param request * @param Resposta * @return * @throws servletexception * @throws ioexception * / public string findall (httpServletReQuest request, httpServletResponse Respons) lança o servLeTException, IoException.AltTttttttSonse ("LOUSTRESTSOnse)" retornar "f: /jsps/book/list.jsp"; } / ** * consulta por categoria * @param request * @param Resposta * @return * @throws servletexception * @throws ioexception * / public string findbycategory (httpServletRequest Solicy, httpServletResponse Response) lança servException, IoException {string =.. SolicyPet) request.setAttribute ("Booklist", BookService.findbycategory (CID)); retornar "f: /jsps/book/list.jsp"; }}2. Consulte todos os livros
Processo: Left.jsp (todas as classes) -> BookServlet#findall () -> /jsps/book/list.jsp
3. Livros de consulta por categoria
Processo: Left.jsp -> BookServlet#findbycategory () -> list.jsp
4. Detalhes da consulta (carga)
Processo: list.jsp (Clique em um livro) -> BookServlet#load () -> desc.jsp
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.