JavaEE开发基础计算机科学技术系第12讲基于Servlet的MVC设计模式练习2本讲目标理解MVC设计模式掌握MVC应用的开发方法熟练使用Servlet在MVC中进行程序控制上机实验升级E-Book电子书店为MVC模式3上机任务升级E-Book电子书店为MVC模式增加结账功能(MVC实现)修改登录、注册(MVC实现)4结账功能具体任务建立实体类:Account.java(定义账户实体)BookOrder.java(定义订单实体)属性同数据库表中的字段名提供getter和setter方法建立数据库操作类:BookOrderDao.java(定义订单操作类)实现数据库的CRUD操作提供公有方法:doInsertBookOrder(BookOrderbookOrder),插入订单建立数据库操作类:AccountDao.java(定义账户操作类)实现数据库的CRUD操作方法:getAccountByCreditcartf(Stringcreditcard)获取账户信息便于得到余额方法:doUpdateBalance(Stringcreditcard,doubletotal)更新账户信息对应的余额(减去消费金额)5建立业务类:AccountBiz.java(定义账户业务类)提供方法:subMoney(Stringcreditcard,doubletotal),调用AccountDao类中查询和更新方法实现建立业务类:BookOrderBiz.java(定义订单业务类)提供方法:saveOrder(BookOrderbookOrder),调用BookOrderDao类中的插入方法实现。结账功能具体任务6结账功能具体任务建立Servlet类:ProcessOrderServlet.java重写doPost()或doGet()方法获取order.jsp页面中的请求数据,封装成实体bookOrder调用业务BookOrderBiz类中的saveOrder(bookOrder)保存订单调用业务AccountBiz类中的subMoney(creditcard,total)更新账户中的余额根据业务方法返回结果跳转页面成功,跳到bye.jsp;失败,跳回重新结账建立结账信息页面:order.jsp表单的action属性:执行ProcessOrderServlet类,处理请求7登录、注册功能具体任务建立实体类:UserInfo.java(定义用户实体)属性同数据库表中的字段名提供getter和setter方法建立数据库操作类:UserInfoDao.java(定义用户操作类)实现数据库的CRUD操作提供公有方法:findUser(UserInfouserInfo),查找用户是否存在提供公有方法:doCreateUser(UserInfouserInfo),插入新用户8建立业务类:UserinfoBiz.java(定义用户业务类)提供方法:login(UserInfouserInfo),调用UserInfoDao类中的findUser(userInfo)实现用户的查询提供方法:register(UserInfouserInfo),调用UserInfoDao类中的doCreateUser(UserInfouserInfo)实现插入新用户登录、注册功能具体任务9登录、注册功能具体任务建立Servlet类:MVCLoginServlet.java重写doPost()或doGet()方法获取login.jsp页面中的请求数据,封装成实体userInfo调用业务UserinfoBiz类中的login(userInfo)登录验证根据验证结果返回结果跳转页面成功,跳到books.jsp;失败,跳回重新登录或注册建立Servlet类:MVCRegisterServlet.java重写doPost()或doGet()方法获取register.jsp页面中的请求数据,封装成实体userInfo调用业务UserinfoBiz类中的register(userInfo)进行注册根据注册结果返回结果跳转页面成功,跳到login.jsp登录;失败,跳回重新注册register.html建立登录页面:order.jsp表单的action属性:执行MVCLoginServlet类,处理请求建立注册页面:register.html表单的action属性:执行MVCRegisterServlet类,处理请求