此项目为线上火车票订票系统,是个人大学毕设,所用知识比较基础简单,适合新手借鉴。项目基于springboot,JDK1.8.0+,Mysql 5.7,Thymeleaf,MyBatis Plus,redis,shiro开发。它的后台管理项目在这-->https://github.com/Yong-Ma/bookticket-admin
(1)用户信息管理:用于用户注册或登陆以及修改个人信息。
(2)车次查询:根据选定的条件查找符合的车次。
(3)车票预定:购买车票并生成相关的订单信息。
(4)车票退订:对所购买的并还未发车的车票发起退订。
(5)订单查询:用于查看订单明细,订单信息包括车次详细信息。
(6)车票改签:对已购买的车票进行同一线路的改签操作。
(7)用户管理:管理员有权对一些用户的信息查阅和管理。
(8)车次信息管理:对车次的线路、列车型号、起始时间、到达时间等信息进行管理。
(9)订单查询:管理员可查询用户的订单信息。
(10)线路管理:对线路的起始点、终点、距离等信息进行管理。
(11)列车信息管理:对列车的承载人员数量、最大速度等列车的有关信息进行管理。
技术 | 说明 | 官网 |
---|---|---|
SpringBoot | 容器+MVC框架 | https://spring.io/projects/spring-boot |
MyBatis-Plus | ORM框架 | https://mp.baomidou.com/guide/ |
Redis | 缓存 | https://redis.io/ |
shiro | Java安全框架 | https://shiro.apache.org/ |
Druid | 数据库连接池 | https://github.com/alibaba/druid |
Lombok | 简化对象封装工具 | https://github.com/rzwitserloot/lombok |
Thymeleaf | HTML5 模板引擎 | https://www.thymeleaf.org/ |
kaptcha | 验证码生成工具 | https://github.com/penggle/kaptcha |
pagehelper | 分页插件 | https://github.com/pagehelper/Mybatis-PageHelper |
log4j | 日志组件 | http://logging.apache.org/log4j/2.x/ |
fastjson | JSON解析器和生成器 | https://github.com/alibaba/fastjson |
工具 | 说明 | 官网 |
---|---|---|
IDEA | 开发IDE | https://www.jetbrains.com/idea/download |
Navicat | 数据库连接工具 | http://www.formysql.com/xiazai.html |
Typora | Markdown编辑器 | https://typora.io/ |
Mybatis-X | IDEA插件,用于生成部分代码 | https://baomidou.com/guide/mybatisx-idea-plugin.html |
1.创建数据库book_ticket,运行sql
文件夹下的文件
2..在application-dev.yaml里修改数据库的用户名和密码
druid:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/book_ticket?characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true
username: root
password: admin
3.运行自己安装的redis
4.在application.yaml里的mail
修改username
和password
,其中password不是邮箱密码,而是授权码,获取方法---> 登陆网易163邮箱,在设置中打开并勾选POP3/SMTP/IMAP服务,然后会得到一个授权码,这个邮箱和授权码将用作登陆认证。 如果是使用qq邮箱还得修改host
#email
mail:
host: smtp.163.com
username: ******@163.com
password: ******
port: 465
protocol: smtps
from: *****@163.com
5..在application.yaml里修改logging
的file.path,自己创建一个文件夹用于存放日志文件;以及在logback-spring.xml里面修改logging.path
的value值为自己的创建的文件夹
#日志配置
logging:
level:
#打印sql语句
com.ma.bookticket.mapper: debug
config: classpath:log/logback-spring.xml
file:
path: ******
<property name="logging.path" value="***"/>
6.可通过IDEA打开项目,运行springboot项目,打开网址:http://localhost:8087/
7.输入用户名GDPU,密码GDPU进行登陆
1.编写Dockerfile文件
# jdk
FROM openjdk:11.0.13-slim-buster
MAINTAINER mzy
# 拷贝jar包
COPY target/*.jar /app.jar
# 容器启动时执行的命令
ENTRYPOINT ["java","-jar","app.jar"]
2.修改mysql和redis的访问地址为容器所处的宿主机,
- 如果是linux平台,一般为172.17.0.1(宿主机在与容器同一局域网的IP地址一般是docker0对应的IP地址段的首个地址)
- 如果是mac电脑,则修改为host.docker.internal
- Docker For Mac的Docker Daemon是运行于虚拟机(xhyve)中的, 而不是像Linux上那样作为进程运行于宿主机,因此Docker For Mac没有docker0网桥
- docker for mac 的容器里可以通过 docker.for.mac.host.internal 域名直接访问宿主机服务
3.运行Dockerfile,生成镜像,然后运行
-
可以通过idea的docker插件进行配置
-
也可以通过docker命令进行操作,记得做端口映射
#生成镜像 docker build -t bookticker:1.0 . #容器运行 docker run -d -p 8087:8087 --name bookticker bookticker:1.0
- 如果使用该项目出现问题,请联系我 [email protected]
- 如果该项目对您有帮助,请
star
鼓励我