java航空订票系统毕业设计(4)

2019-01-26 14:37

passengerid Calendar cabinclass tickettype branch_id 证件号码 出票日期 舱位等级 乘客类型 营业网点编号 VARCHAR(20) DATE CHAR(1) CHAR(1) NUMBER(4) NOT NULL NOT NULL NOT NULL CHECK IN(F,C,Y) NOT NULL CHECK IN(A,C,I) NOT NULL REFERENCES BRANCH.id 3.3 DAO接口设计

设计了通用的DAO接口,

flightDAO用来航班计划,航班的数据访问。 BranchDAO用来访问网点数据。

TicketOrderDAO用来访问票单数据。

可以创建不同的实现类来实现接口,使标准制定和标准实现分离。 如从文件中读取数据可以定义FlightDaoFromFile, 利用JDBC访问数据可以定义FlightDaoFromJDBC,

利用hibernate访问数据可以定义FlightDaoFromHibernate等。 3.3.1FlightDAO:

package com.tarena.abs.dao; import com.tarena.abs.model.*; import java.util.*; ** * 对航班和航班计划数据访问的接口。 * @author zhoukai * * public interface FlightDAO{ ** * 根据指定出发地,目的地和出发日期在底层数据源中查找 * 得到所有的航班对象的集合。 * @param fromAddr 出发地 * @param toAddr 目的地 * @param date 出发日期 * @return 航班集合 * public Set getAllFlights(String fromAddr,String toAddr,Calendar date); ** * 执行出票的操作。 * @param ord 订单对象 * @return 若出票成功返回true,否则返回false。 * public boolean order(Order ord); ** * 添加指定的航班计划对象。 * @param fs 要添加的航班计划对象。 * @return 添加成功返回true,否则返回false。 * public boolean addFlightSchedular(FlightSchedular fs);

} ** * 根据给定的航班编号在底层数据源中删除该航班计划,以及该计划下的所有航班。 * @param flightNumber 要删除的航班计划的航班编号。 * @return 删除成功返回true,否则返回false。 * public boolean removeFlightSchedular(String flightNumber); * 得到所有航班计划对象 * @return * public Set getAllFlightSchedulars(); * *添加航班 * public boolean addFlight(Flight fl); 3.3.2 BranchDAO:

package com.tarena.abs.dao; import com.tarena.abs.model.*; import java.util.*; ** * 对网点数据进行访问的接口。 * @author zhoukai * * public interface BranchDAO{ ** * 根据给定的姓名和密码在底层数据源中查找代理商的纪录, * 若找到,则返回该代理商对象,若没找到或密码错误则返回null。 * @param name 网点名称 * @param passwd 网点密码密码 * @return 找到的网点对象或null * public Branch getBranch(String name,String passwd); ** * 向底层数据中添加一个网点纪录。 * @param user 要添加的网点对象 * @return 若添加成功返回true,否则返回false。 * public boolean addBranch(Branch user); ** * 根据指定的网点的姓名在底层数据源中删除该网点。 * @param name 网点姓名 * @return 若删除成功返回true,否则返回false。 * public boolean removeBranch(String name);

** * 修改指定网点的密码。 * @param name 网点名称 * @param oldPassword 旧密码 * @param newPassword 新密码 * @return 若修改成功返回true,否则返回false。 * public boolean modifyPassword(String name,String newPassword); * *查询所有网点信息 *@return 若成功返回set,否则null. * public Set getAllBranch(); } 3.3.3TicketOrderDAO:

package com.tarena.abs.dao; import java.util.Set; import java.util.Calendar; import com.tarena.abs.model.*; ** * 机票出票记录访问接口 * @author zhoukai * * public interface TicketOrderDAO { ** * 执行出票的操作。 * @param ord 订单对象 * @return 若出票成功返回true,否则返回false。 * public boolean order(Order ord); ** * 执行退票操作。 * @param TicketNumber 机票编号 * @return 退票成功返回true,否则返回false。 * public boolean cancelOrder(int TicketNumber); ** * 查询指定营业网点在指定时间段内的出票记录 * @param branch 营业网点 * @param startDate 开始日期 * @param endDate 结束日期 * @return 满足条件的出票记录集合 * oldPassword,String

public Set getAllTicketOrder(Branch branch,Calendar startDate,Calendar endDate); ** * 得到指定营业网点指定日期内的营业额。 * @param branch 营业网点 * @param startDate 开始日期 * @param endDate 结束日期 * @return 营业额 * public double getAllTicketMoney(Branch branch,Calendar startDate,Calendar endDate); ** * 得到所有营业网点指定日期内的营业额 * @param startDate 开始日期 * @param endDate 结束日期 * @return 营业额 * public double getAllTicketMoney(Calendar startDate,Calendar endDate); * *查询所有出票信息 *@return 出票集合 public Set getAllTicketOrder(); } 3.4主要工作流程:

客户端启动出票查询航班YES营业员登录输入用户名/密码NO数据有效性验证YES修改密码是否已查询出航班YES输入乘客信息NO输入出发地/目的地/出发日期数据有效性验证YESNOYES输入旧密码/新密码NO数据有效性验证YES数据有效性验证YES封装Request对象将Request对象写往服务器端NO分拣请求出票请求调用TicketOrderDao航班查询请求调用FlightDao修改密码请求调用BranchDao登录请求调用BranchDao封装Response对象解析Response对象,将结果显示在客户端将Response对象写往客户端


java航空订票系统毕业设计(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:重庆市巴南区电力经营管理站关于小水电站安全监管职责划分的请示

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: