与之前的航班管理系统相似,但是更方面都做了优化更新,同时连接数据库操作。主要完成航班信息的增删改查,应用技术大概有,单例模式、懒汉模式、dom4j解析、IO流操作、数据库封装操作等等。
手敲视频链接如下:因为也是第一次,所以时间有点长。
https://pan.baidu.com/s/1xHXm0Wd8otUqyIsLwnfhzw
提取码:nggj
源码如下:
项目结构如图:
Sql文件
/*
SQLyog Ultimate v12.09 (64 bit)
MySQL - 5.6.17 : Database - flight
*********************************************************************
*/
/*!40101 SET NAMES utf8 */;
/*!40101 SET SQL_MODE=''*/;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
CREATE DATABASE /*!32312 IF NOT EXISTS*/`flight` /*!40100 DEFAULT CHARACTER SET utf8 */;
USE `flight`;
/*Table structure for table `flight` */
DROP TABLE IF EXISTS `flight`;
CREATE TABLE `flight` (
`flightNo` varchar(10) NOT NULL COMMENT '航班号',
`departureCity` varchar(50) NOT NULL COMMENT '起飞城市',
`arrivalCity` varchar(50) NOT NULL COMMENT '抵达城市',
`departureTime` datetime NOT NULL COMMENT '起飞时间',
`arrivalTime` datetime NOT NULL COMMENT '抵达时间',
`isEnabled` int(1) DEFAULT '1' COMMENT '是否启用',
PRIMARY KEY (`flightNo`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;
/*Data for the table `flight` */
insert into `flight`(`flightNo`,`departureCity`,`arrivalCity`,`departureTime`,`arrivalTime`,`isEnabled`) values ('CA1234','苏州','辽源','2019-09-08 09:55:00','2019-09-08 14:55:00',1),('CA1357','苏州','长春','2019-06-06 20:30:00','2019-06-06 21:00:00',1),('CA2468','长春','北京','2019-06-06 21:30:00','2019-06-06 22:30:00',1),('CA2469','北京','长春','2019-06-06 21:30:00','2019-06-06 22:30:00',1),('CA5676','北京','上海','2019-09-30 12:55:00','2019-09-30 14:55:00',1),('CA5677','北京','上海','2019-10-01 11:55:00','2019-10-01 13:55:00',1),('CA5678','北京','上海','2019-10-01 13:55:00','2019-10-01 15:55:00',1),('CA5775','上海','长春','2019-09-08 11:55:00','2019-09-08 13:35:00',1),('CA6789','北京','三亚','2019-09-26 14:00:00','2019-09-26 18:00:00',1);
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans>
<bean id="flightDao" class="com.biubiubiu.FlightsManagement.dao.impl.FlightDaoImpl"></bean>
<bean id="flightService" class="com.biubiubiu.FlightsManagement.service.impl.FlightServiceImpl">
<property name="flightDao" ref="flightDao"></property>
</bean>
<bean id="flightAction" class="com.biubiubiu.FlightsManagement.action.FlightAction">
<property name="flightService" ref="flightService"></property>
</bean>
</beans>
DataBase.properties
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/flight
username=root
password=root
flights.txt
空
flights.xml
<?xml version="1.0" encoding="utf-8"?>
<flights>
<flight flightNo="A1234">
<departureCity>北京</departureCity>
<arrivalCity>南京</arrivalCity>
<departureTime>2019-06-06 20:30:00</departureTime>
<arrivalTime>2019-06-06 22:30:00</arrivalTime>
</flight>
<flight flightNo="CA1357">
<departureCity>苏州</departureCity>
<arrivalCity>长春</arrivalCity>
<departureTime>2019-06-06 20:30:00</departureTime>
<arrivalTime>2019-06-06 21:00:00</arrivalTime>
</flight>
<flight flightNo="CA2468">
<departureCity>长春</departureCity>
<arrivalCity>北京</arrivalCity>
<departureTime>2019-06-06 21:30:00</departureTime>
<arrivalTime>2019-06-06 22:30:00</arrivalTime>
</flight>
<flight flightNo="CA2469">
<departureCity>北京</departureCity>
<arrivalCity>长春</arrivalCity>
<departureTime>2019-06-06 21:30:00</departureTime>
<arrivalTime>2019-06-06 22:30:00</arrivalTime>
</flight>
<flight flightNo="CA1234">
<departureCity>苏州</departureCity>
<arrivalCity>辽源</arrivalCity>
<departureTime>2019-09-08 09:55:00</departureTime>
<arrivalTime>2019-09-08 14:55:00</arrivalTime>
</flight>
<flight flightNo="CA5775">
<departureCity>上海</departureCity>
<arrivalCity>长春</arrivalCity>
<departureTime>2019-09-08 11:55:00</departureTime>
<arrivalTime>2019-09-08 13:35:00</arrivalTime>
</flight>
<flight flightNo="CA6789">
<departureCity>北京</departureCity>
<arrivalCity>三亚</arrivalCity>
<departureTime>2019-09-26 14:00:00</departureTime>
<arrivalTime>2019-09-26 18:00:00</arrivalTime>
</flight>
<flight flightNo="CA5676">
<departureCity>北京</departureCity>
<arrivalCity>上海</arrivalCity>
<departureTime>2019-09-30 12:55:00</departureTime