德州中文网站建设,网页美工设计需求说明,网站一跳率,北京网络公司信息目录 mymvcdemo是自定义mvc框架的使用示例
1.1 实体类
1.2 dao方法 1.3 写Service / biz 三层架构
1.4 建action 相当于selvert
1.5 con连接MySQL 8.0 版本
1.6 配置文件 XML
1.7 主界面布局
1.8 增加界面布局
1.9 写tld配置文件
2.0 注意架包 我是已经打包好的 mymv…
目录 mymvcdemo是自定义mvc框架的使用示例
1.1 实体类
1.2 dao方法 1.3 写Service / biz 三层架构
1.4 建action 相当于selvert
1.5 con连接MySQL 8.0 版本
1.6 配置文件 XML
1.7 主界面布局
1.8 增加界面布局
1.9 写tld配置文件
2.0 注意架包 我是已经打包好的 mymvcdemo是自定义mvc框架的使用示例 1.1 实体类
package com.zking.mymvc.entity;import java.io.Serializable;public class Book implements Serializable {private Integer bookid;private String bookname;private String bookname_pinyin;private Float price;private String booktype;public Integer getBookid() {return bookid;}public void setBookid(Integer bookid) {this.bookid bookid;}public String getBookname() {return bookname;}public void setBookname(String bookname) {this.bookname bookname;}public String getBookname_pinyin() {return bookname_pinyin;}public void setBookname_pinyin(String bookname_pinyin) {this.bookname_pinyin bookname_pinyin;}public Float getPrice() {return price;}public void setPrice(Float price) {this.price price;}public String getBooktype() {return booktype;}public void setBooktype(String booktype) {this.booktype booktype;}public Book() {// TODO Auto-generated constructor stub}public Book(Integer bookid, String bookname, String bookname_pinyin, Float price, String booktype) {super();this.bookid bookid;this.bookname bookname;this.bookname_pinyin bookname_pinyin;this.price price;this.booktype booktype;}public Book( String bookname, String bookname_pinyin, Float price, String booktype) {this.bookname bookname;this.bookname_pinyin bookname_pinyin;this.price price;this.booktype booktype;}Overridepublic String toString() {return Book [bookid bookid , bookname bookname , bookname_pinyin bookname_pinyin , price price , booktype booktype ];}}1.2 dao方法
package com.zking.mymvc.dao;import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;import org.junit.Test;import com.zking.dao.BaseDao02;
import com.zking.dao.BaseDao02.ICovent;
import com.zking.mymvc.entity.Book;import com.zking.util.DBHelper;
import com.zking.util.PageBean;
import com.zking.util.PinYinUtil;public class BookDao implements IBookDao {Connection con null;PreparedStatement ps null;ResultSet rs null;Overridepublic ListBook getBooks(Book book, PageBean pageBean) {String sqlselect * from tb_book where 11;ListObject ls new ArrayList();if(book ! null book.getBookname() !null !.equals(book.getBookname())) {sql and bookname like ?;ls.add(%book.getBookname()%) ;}return BaseDao02.query(sql, ls.toArray(), pageBean, new ICoventBook() {Overridepublic ListBook convent(ResultSet rs) throws SQLException {ListBook list new ArrayList();while(rs.next()) {Book book new Book();book.setBookid(rs.getInt(bookid));book.setBookname(rs.getString(bookname));book.setBookname_pinyin(rs.getString(bookname_pinyin));book.setPrice(rs.getFloat(price));book.setBooktype(rs.getString(booktype));list.add(book);}return list;}});}Overridepublic void addBook(Book book) {System.out.println(book);try {//创建连接conDBHelper.getConnection();//SQL语句String sqlinsert into tb_book(bookname,bookname_pinyin,price,booktype) values(?,?,?,?);//执行语句pscon.prepareStatement(sql);//赋值ֵps.setString(1,book.getBookname());ps.setString(2,PinYinUtil.toPinyin(book.getBookname().toLowerCase()));ps.setFloat(3, book.getPrice());ps.setString(4, book.getBooktype());ps.executeUpdate();} catch (Exception e) {e.printStackTrace();}finally {DBHelper.close(con, ps, null);}}Overridepublic int deleteBook(int bookid) {int n 0;try {//创建连接conDBHelper.getConnection();//定义SQL语句String sqldelete from tb_book where bookid?;//获得执行语句pscon.prepareStatement(sql);//赋值ps.setInt(1, bookid);nps.executeUpdate();} catch (Exception e) {e.printStackTrace();}finally {DBHelper.close(con, ps, rs);}return n;}Testpublic void testGetBook() {Book book new Book();book.setBookname(西);PageBean pageBean new PageBean();pageBean.setRows(5);pageBean.setPage(2);ListBook list getBooks(book, pageBean);list.forEach(System.out::println);}Testpublic void testAddBook() {Book book new Book(哈哈哈, hhh, 34.33f, 小说);BookDao bd new BookDao();bd.addBook(book);}}package com.zking.mymvc.dao;import java.util.List;import com.zking.mymvc.entity.Book;
import com.zking.util.PageBean;public interface IBookDao {/*** 查询方法* param book* param pageBean* return*/ListBook getBooks(Book book, PageBean pageBean);/*** 增加方法* param book*/void addBook(Book book);/*** 删除方法* param bookid* return*/int deleteBook(int bookid);}1.3 写Service / biz 三层架构
package com.zking.mymvc.service;import java.util.List;import com.zking.mymvc.dao.BookDao;
import com.zking.mymvc.dao.IBookDao;
import com.zking.mymvc.entity.Book;
import com.zking.util.PageBean;/*** author PC**/
public class BookService implements IBookService {private IBookDao dao new BookDao();Overridepublic ListBook getBooks(Book book,PageBean pageBean) {return dao.getBooks(book, pageBean);}Overridepublic void addBook(Book book) {dao.addBook(book);}Overridepublic void deleteBook(int bookid) {dao.deleteBook(bookid);}}package com.zking.mymvc.service;import java.util.List;import com.zking.mymvc.entity.Book;
import com.zking.util.PageBean;public interface IBookService {ListBook getBooks(Book book,PageBean pageBean);void addBook(Book book);void deleteBook(int bookid);}1.4 建action 相当于selvert
package com.zking.mymvc.action;import java.util.List;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.zking.framework.AbstractDispatchAction;
import com.zking.framework.ModelDrive;
import com.zking.mymvc.entity.Book;
import com.zking.mymvc.service.BookService;
import com.zking.mymvc.service.IBookService;
import com.zking.util.PageBean;public class BookAction extends AbstractDispatchAction implements ModelDrive {private Book book new Book();Overridepublic Object getModel() {return book;}//查询private IBookService service new BookService();public String getBooks(HttpServletRequest req,HttpServletResponse resp) {PageBean pageBean new PageBean();pageBean.setRequest(req);pageBean.setRows(5);ListBook bookPager service.getBooks(book, pageBean);req.setAttribute(bookPager, bookPager);return book;}/*** 增加* param req* param resp* return*/public String addBook(HttpServletRequest req,HttpServletResponse resp) {service.addBook(book);return success;}/*** 删除* param req* param resp* return*/public String deleteBook(HttpServletRequest req,HttpServletResponse resp) {service.deleteBook(book.getBookid());return ok;}}1.5 con连接MySQL 8.0 版本
#oracle9i
#driveroracle.jdbc.driver.OracleDriver
#urljdbc:oracle:thin:localhost:1521:orcl
#userscott
#pwd123#sql2005
#drivercom.microsoft.sqlserver.jdbc.SQLServerDriver
#urljdbc:sqlserver://localhost:1433;DatabaseNametest1
#usersa
#pwd123#sql2000
#drivercom.microsoft.jdbc.sqlserver.SQLServerDriver
#urljdbc:microsoft:sqlserver://localhost:1433;databaseNameunit6DB
#usersa
#pwd888888#mysql
drivercom.mysql.cj.jdbc.Driver
urljdbc:mysql://localhost:3306/tb_books?useUnicodetruecharacterEncodingUTF-8useSSLfalseallowPublicKeyRetrievaltrue
#urljdbc:mysql://119.23.46.143:3306/db_s2_easyui?useUnicodetruecharacterEncodingUTF-8useSSLfalse
userroot
pwd123456
1.6 配置文件 XML
?xml version1.0 encodingUTF-8?
!DOCTYPE config[!ELEMENT config (action*)!ELEMENT action (forward*)!ELEMENT forward EMPTY!ATTLIST actionpath CDATA #REQUIREDtype CDATA #REQUIRED!ATTLIST forwardname CDATA #REQUIREDpath CDATA #REQUIREDredirect (true|false) false
]
configaction path/bookAction typecom.zking.mymvc.action.BookActionforward namebook path/bookList.jsp redirectfalse/forward namesuccess pathhttp://localhost:8080/J2EE_mymvcdemo/bookAction.action?methodNamegetBooks redirecttrue/forward nameok pathhttp://localhost:8080/J2EE_mymvcdemo/bookAction.action?methodNamegetBooks redirecttrue//action
/config
1.7 主界面布局
%page languagejava contentTypetext/html; charsetUTF-8pageEncodingUTF-8%
%taglib prefixc urihttp://java.sun.com/jsp/jstl/core%
%taglib prefixz uri/zking%
!DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN http://www.w3.org/TR/html4/loose.dtd
html
head
meta http-equivContent-Type contenttext/html; charsetUTF-8
title通用分页案例书本信息/title
/head
bodyh1书本信息/h1form action%request.getContextPath()%/bookAction.action?methodNamegetBooks methodpostinput typetext namebookname value%request.getParameter(bookname)null ? : request.getParameter(bookname)%/ input typesubmit value查询/formtable width100% border1 cellpadding0 cellspacing0theadtrtd书本编号/tdtd书本名字/tdtd书本拼音/tdtd书本价格/tdtd书本类型/tdtd操作a href%request.getContextPath()%/addBook.jsp增加/a/td/tr/theadc:forEach items${bookPager} varbtrtd${b.bookid}/tdtd${b.bookname}/tdtd${b.bookname_pinyin}/tdtd${b.price}/tdtd${b.booktype}/tdtda href%request.getContextPath()%/bookAction.action?methodNamedeleteBookbookid${b.bookid}删除/a/td/tr/c:forEach/tablez:paging pageBean${pageBean}//body
/html
1.8 增加界面布局
% page languagejava contentTypetext/html; charsetUTF-8pageEncodingUTF-8%
!DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN http://www.w3.org/TR/html4/loose.dtd
html
head
meta http-equivContent-Type contenttext/html; charsetUTF-8
titleInsert title here/title
/head
bodyh1增加/h1form action%request.getContextPath()%/bookAction.action?methodNameaddBook methodpost书本名字: input typetext namebooknamebr书本价格: input typetext namepricebr书本类型: input typetext namebooktypebrinput typesubmit value提交/form
/body
/html
1.9 写tld配置文件
!DOCTYPE taglibPUBLIC -//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//ENhttp://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd
!-- 标签库描述符 --
taglib xmlnshttp://java.sun.com/JSP/TagLibraryDescriptortlib-version1.0/tlib-versionjsp-version1.2/jsp-versionshort-nameSimple Tags/short-nameuri/zking/uritagnamepaging/nametag-classcom.zking.tag.PagingTag/tag-classbody-contentempty/body-contentattributenamepageBean/namerequiredtrue/requiredrtexprvaluetrue/rtexprvalue/attribute/tag/taglib
2.0 注意架包 我是已经打包好的