在客运公司工作 7 年之余,对客运管理的难度深有感触。特别是在春运期
间购票难依旧是长途汽车订票的一大难题。长途汽车和火车的订票管理虽然有
差异,但大体上是相同的。长途汽车在售票的过程中需要对旅客的起始地、目
的地、车次、订票和退票进行管理。利用长途汽车网上订票系统及时为旅客预
购到目的地的车票,有利于提高购票的速度,更方便旅客的出行。这尤其体现
在春运等客运高峰时期。
信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济
和社会生活的各个领域。计算机虽然与人类的关系愈来愈密切,还有人由于计
算机操作不方便继续用手工劳动。为了适应现代社会人们高度强烈的时间观念,
长途汽车网上订票系统为旅客的出行和售票人员带来了极大的方便。操作人员
只需输入一些简单的汉字、数字,即可达到自己的目标。
对于长途汽车公司,利用计算机支持高效率完成日常事务,是适应现代要
求、推动管理走向科学化、规范化的必要条件。同时计算机具有手工管理所无
法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、
寿命长等。这些优点能够极大地提高长途汽车订票管理的效率,也是长途汽车
公司的科学化、正规化管理的必要条件。
长途汽车网上订票体统需要对旅客预定车票、退订车票、车次、车号核对
等一切操作进行管理,并储存旅客的相关信息,严格服从有关规定,按一定的
模式或规律进行。体现数据量大,数据流清晰、规范的特点,因而特别适合用
计算机管理。
演示视频:
【java毕业设计首发】基于微信小程序的springboot客运汽车票购票系统源码和论文
pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.8.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.poiu</groupId>
<artifactId>ticket</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>
<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.67</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.3.1.tmp</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.3.1.tmp</version>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>2.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.18</version>
</dependency>
<dependency>
<groupId>com.belerweb</groupId>
<artifactId>pinyin4j</artifactId>
<version>2.5.1</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.4.13</version>
<configuration>
<!-- 删除 172.16.1.75:5000 -->
<imageName>lianghb/ticket:latest</imageName>
<dockerDirectory>${project.basedir}/</dockerDirectory>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
<!-- 运行命令 mvn clean package docker:build 打包并生成docker镜像 -->
</plugin>
</plugins>
</build>
</project>
本篇论文编写写的目的是为了说明系统需求概述、设计概要情况和设计思
路,为系统后期维护基础,同时作为开发人员在系统分析设计阶段的工作成果
和本阶段的结束标志。使用户和软件开发者,对系统的设计有一个全面的认识,
使之成为后期开发工作的基础和依据。
本长途汽车订票、退票管理信息系统是现代管理的一个具体体现,长途汽车
订票、退票等管理日益现代化,基于人工管理的方式已经不适应业务发展的需
要。长途汽车网上订票管理日益复杂化,管理的内容日益增多,结算方式也有
所不同,为此,应该开发一个现代管理的长途汽车网上订票管理系统
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.poiu.ticket.domain.mapper.TicketMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.poiu.ticket.domain.entity.Ticket">
<id column="id" property="id" />
<result column="order_number" property="orderNumber" />
<result column="user_id" property="userId" />
<result column="rider_id" property="riderId" />
<result column="rider_name" property="riderName" />
<result column="car_shift_id" property="carShiftId" />
<result column="start_station_id" property="startStationId" />
<result column="start_station_name" property="startStationName" />
<result column="arrival_station_id" property="arrivalStationId" />
<result column="arrival_station_name" property="arrivalStationName" />
<result column="sale_price" property="salePrice" />
<result column="start_time" property="startTime" />
<result column="ticket_status" property="ticketStatus" />
<result column="create_time" property="createTime" />
<result column="update_time" property="updateTime" />
<result column="version" property="version" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, order_number, user_id, rider_id, rider_name, car_shift_id, start_station_id, start_station_name, arrival_station_id, arrival_station_name, sale_price, start_time, ticket_status, create_time, update_time, version
</sql>
<update id="updateStatus">
update tp_ticket set ticket_status = 3 where ticket_status = 2 and start_time < now();
</update>
</mapper>
1969
年,美国
IBM
公司首次宣布除操作系统继续随计算机配送外,其余软件一律计价出售,从
此开创了软件成为独立商品的先河。短短
30
几年的时间,计算机软件的重要性与日俱增。从
PC
机
到笔记本电脑,从因特网到移动电话,从先进的武器到现代的家电,计算机软件几乎无处不在,无
时不在。世界上最大的软件公司微软公司及其创始人,已成为全球知名度最高的企业和任务之一。
在很多发达国家,软件产业已成为社会的支柱产业,软件工程师也成为最受青睐的一种职业。
正是由于软件的发展,使计算机应用逐步渗透到社会生活的各个角落,使各行各业都发生了很
大的变化。这同时也促使人们对软件的品种,数量,功能和质量等提出了越来越高的要求。然而,
软件的规模越大,越复杂,人们的软件开发能力越显得力不从心。于是,人们开始重视软件开发过
程,方法,工具和环境的研究,软件工程应运而生。
软件工程技术历经三十多年的发展,目前已进入成熟期。软件过程改善的热潮使软件企业对软
件工程技术及
case
工具的认识有了质的飞跃,正在被越来越广泛地接收。过程改善和技术提升的结
合是软件产业发展的趋势。软件复用和软件构件技术,再工程技术及领域工程技术正逐步成为主流
软件技术,是软件工程化,工业化生产技术的核心技术。
“目前,从技术上看,软件开发的主要模式仍以手工作坊式为住,但工程化技术和
case
工具的
采用呈稳步上升趋势。软件企业的过程改善,规范化,规模化正成为一种趋势。推行软件的工程化,
工业化生产技术和模式是软件企业发展并形成规模经济的必由之路,这已成为学术界和产业界的共
识。”
当前,学术界和产业界的共识是:在注重软件工程技术研究的同时应注重软件过程
的研究;软件开发单位不仅需要技术创新(采用先进技术),更需要将其过程改善放在
首位。过程改善和技术的紧密结合才是完善的软件开发解决方案。
进入九十年代以来,软件过程研究及企业过程改善成为热潮,和软件工程技术研究及企业技术
创新受到同等重视,两方面都得到了长足的发展。在技术方面,软件工程技术不断发展,软件工具
市场不断扩大。在过程改善方面,已存在若干软件过程模型,并出现了软件企业的认证热潮,例如,
美国的
cmm
认证和欧洲的
iso9001/tickit
认证。当前最重要的模型有
tickie
,
sei
的
cmm
,
bootstrap
和
spice
。
“当前,软件工程领域的主要研究热点是软件复用和软件构件技术,它们别视为是解决“软件
危机”的一条现实可行的途径,是软件工业化生产的必由之路”。
我国政府支持的国家重点科技攻关项目青鸟工程长期从事对软件工程技术的研究,在上述几方
面及其集成上均有卓有成效的成果,保持了和国际前沿同步,同时,为我国软件产业基础设施建设
以及软件工程学科建设做出了积极贡献。
package com.poiu.ticket;
import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.config.*;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
import lombok.extern.slf4j.Slf4j;
import java.util.Scanner;
/**
* @description:
* @author: 曾远征
* @create: 2019-09-27 15:27
**/
@Slf4j
public class BatisPlusGenerator {
public static void main(String[] args) {
String[] tables = new String[]{
"tp_ticket"
};
AutoGenerator autoGenerator = new AutoGenerator();
/**
* 全局配置
*/
GlobalConfig globalConfig = new GlobalConfig();
String projectPath = System.getProperty("user.dir");
// D:\work\ticket-project\src\main\java
globalConfig.setOutputDir(projectPath + "/src/main/java");
globalConfig.setAuthor("poiu");
globalConfig.setEnableCache(false);
globalConfig.setBaseResultMap(true);
globalConfig.setBaseColumnList(true);
globalConfig.setOpen(false);
globalConfig.setFileOverride(true);
autoGenerator.setGlobalConfig(globalConfig);
/**
* 数据源配置
*/
DataSourceConfig dataSourceConfig = new DataSourceConfig();
dataSourceConfig.setUrl("jdbc:mysql://106.13.209.81:3306/ticket_project?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=GMT%2B8");
dataSourceConfig.setDriverName("com.mysql.cj.jdbc.Driver");
dataSourceConfig.setUsername("root");
dataSourceConfig.setPassword("root1");
autoGenerator.setDataSource(dataSourceConfig);
/**
* 包配置v
*/
PackageConfig packageConfig = new PackageConfig();
packageConfig.setModuleName("domain");
packageConfig.setParent("com.poiu.ticket");
autoGenerator.setPackageInfo(packageConfig);
/**
* 模板配置
*/
TemplateConfig templateConfig = new TemplateConfig();
templateConfig.setEntity("templates/entity.java");
templateConfig.setMapper("templates/mapper.java");
templateConfig.setXml("templates/mapper.xml");
templateConfig.setService("templates/service.java");
templateConfig.setServiceImpl("templates/serviceImpl.java");
templateConfig.setController("templates/controller.java");
autoGenerator.setTemplate(templateConfig);
/**
* 策略配置
*/
StrategyConfig strategy = new StrategyConfig();
strategy.setNaming(NamingStrategy.underline_to_camel);
strategy.setColumnNaming(NamingStrategy.underline_to_camel);
strategy.setEntityLombokModel(true);
strategy.setRestControllerStyle(true);
strategy.setInclude(tables);
strategy.setControllerMappingHyphenStyle(true);
strategy.setTablePrefix("tp_");
autoGenerator.setStrategy(strategy);
autoGenerator.execute();
}
}
可行性研究分析
可行性分析是通过对项目的主要内容和配套条件,如市场需求、资源供应、
建设规模、工艺路线、设备选型、环境影响、资金筹措、盈利能力等,从技术、
经济、工程等方面进行调查研究和分析比较,并对项目建成以后可能取得的财
务、经济效益及社会环境影响进行预测,从而提出该项目是否值得投资和如何
进行建设的咨询意见,为项目决策提供依据的一种综合性的系统分析方法。可
行性分析应具有预见性、公正性、可靠性、科学性的特点。
1.1 经济可行性
该系统仅用少量人员开发,用最低的成本和人力,在较短时间内使软件具
有在线查阅票价,车站,车号,订票等基本功能,预期系统设计期间投入的资
金较小,从经济角度考虑,此系统开发可行。
1.2 技术可行性
为方便乘客,需开发一个汽车票订票系统,乘客把预定汽车票的乘车信息,
包括汽车号,发车时间,发车地点,到站时间,到站地点等信息输入到预定系
统的客户端程序,系统经过访问汽车公司内部的数据服务器中的数据库后,为
乘客安排所需车辆,印出取票通知,乘客在汽车发车之前一天凭取票通知和账
单交款后取票,系统校对无误后即印出车票给旅客。
要求系统能有效、快速、安全、可靠和无误的完成上诉操作。并要求客户
机的界面简单明了,易于操作,服务器程序利于维护。
由于本软件仅实现一些简单功能,且开发人员已掌握相关领域的知识,因
此技术上是可行的。