kirito66465 / pack-java

校园快递管理系统-Spring Boot
Apache License 2.0
34 stars 6 forks source link
jasypt-password pack-java spring-boot

基于web的校园快递管理系统

调试运行步骤

  1. 所需环境:JDK1.8、MySQL 5.x.x、Redis、Maven、IDEA
  2. MySQL 5.x.x 版本 导入 ./database/pack-prod-2400.sql SQL文件;
  3. 修改 application.yml 配置文件中的数据库 urlusernamepassword
  4. 修改 application.yml 配置文件中的 Redis 的 hostportpassword(Redis 密码可选项);
  5. 如果 8080 端口被占用,修改 application.yml 配置文件中的 server.port
  6. SpringBoot 项目选择 PackApplication ,带参数[--jasypt.encryptor.password=${JASYPT_PASSWORD}]进行调试运行;
  7. 浏览器输入 127.0.0.1:8080/pack 访问 基于 Web 的校园快递管理系统
    学生账号(用户名:2120172171 密码:123456)
    驿站管理员账号1:(用户名:2101 密码:admin)
    驿站管理员账号2:(用户名:2102 密码:admin)
    驿站管理员账号3:(用户名:2103 密码:admin)

进度记录

相关算法

学生登录退出的状态保存

Vue 项目全局变量的存储与管理

取件码给予算法

1. 如果驿站快递未满且还有取件码未被使用过,则根据未入站前驿站快递总数,使用取件码工具类生成的取件码,给予新入站的快递
2. 如果驿站快递已满,则当有快递被取出时,未有取件码的快递根据最旧入站时间给予其被取出的快递释放的取件码
3. 取件码工具类生成取件码,仅在当前驿站快递未满且最大取件码未被使用时才使用

注意

SQL 语句:

SELECT count(*) 未取快递数
FROM t_pack
WHERE per_tel = 'xxx'
AND status = 1
OR status = -1;

实际执行的是:

SELECT count(*)
FROM t_pack
WHERE per_tel = 'xxx'
AND status = 1;

+

SELECT count(*)
FROM t_pack
WHERE status = -1;

导致结果不正确。

打包上线

  1. 配置环境变量 JASYPT_PASSWORD=[密钥] export JASYPT_PASSWORD
  2. java -jar [jar包] --server.port=[端口] --jasypt.encryptor.password=${JASYPT_PASSWORD}

请求响应类型

produces:它的作用是指定返回值类型,不但可以设置返回值类型还可以设定返回值的字符编码; consumes: 指定处理请求的提交内容类型(Content-Type),例如application/json, text/html;

elasticsearch

  1. 前端 搜索 根据 输入内容 请求 服务器
  2. 服务器根据索引请求 elasticsearch 获取数据 返回 前端