Skip to content

简介梗概

字数
1869 字
阅读时间
8 分钟

实习的意义和作用

企业员工标准

  • 出勤
  • 工作态度
  • 日报
  • 团队协作

介绍华清

研发了元宇宙实验中心 在全国高校都有合作 出版了100多本教材 合作院校几乎覆盖西南地区所有高校

运用到的工具

最好用 jdk-8 版本 MySQL最好用 8.x 版本的

后台:springboot框架,jdbc(连接MySQL数据库),druid(建立连接池)、Mybatis-plus(ORM,将数据库字段映射为Java对象),代码生成器(根据数据表字段反向生成Java代码)、条件构造器(单表操作, 不用写sql语句)、分页拦截器(在做分页查询时,自动分页) 跨域过滤器(前端跨域访问后台的配置:直接发送请求会失败,会被浏览器的同源策略给拦截住)

前端:vue框架、elementUI(页面标签)、axios(前后端通信)

功能::

  1. 登录:前端输入用户名密码,发送给后台进行验证,成功则跳转页面,失败则给出错误提示
  2. 主界面,布局(header、aside、main)
  3. 业务页面:以用户列表为例,分页查询、添加、修改、删除

前后端分离的好处:分布式部署时好用..................

项目设计

项目:SpringBoot-Vue-Cli

Springboot脚手架网址:start.springboot.io 和 start.aliyun.com

建立项目步骤:

  1. Group填写是域名的倒置写法,项目存储地址Location不要有中文路径(可能会有乱码),Artifact与Name相同,Package-name是代码的根目录,所有代码都放在该位置下 Java版本需要在Java17版本以下(不包括Java17),因为17以后的版本使用SpringBoot3.0, Packaging是打包方式,选择为war包,则打包后还需要安装tomcat服务器并解压到该服务器中运行;而选择打包为jar包,其有内嵌的tomcat服务器,所以只要直接启动jar包即可
  2. 创建完成项目后,如图两个文件不可删除,否则项目会崩溃
  3. 设置Maven
  4. 更改settings.xml中的国内镜像:
  5. 随后对该New Project Setup中的Settings for New Projects的设置也同上settings设置一样修改,这里就不再贴图展示,上述修改是仅对刚刚创建的user-server项目生效的设置,而现在设置的是对以后所有新建立项目的设置,这样以后新建项目就不用每次都进行设置了
  6. JDK是JAVA开发版本,JRA是JAVA运行版本
  7. 设置对应SDK,Language level需要选择对应版本,不确定则选择SDK DEFAULT,系统会自动匹配
  8. 最后在Setting中,找到plugins设置,下载lombok插件
  9. 将pom.xml文件中的depencies标签下的所有内容替换为老师所提供的依赖.txt文件中的依赖包
  10. 随后点击右边栏M,再点击左上角按钮,系统会自动下载缺少的依赖
MariaDB是MySQL的分支,与MySQL作用一致

创建连接时,输入连接名与密码后,用户名默认root,必须要先测试连接,连接成功后才能继续创建 若先前已经创建过用户名为root的连接,则密码为先前设置的密码

主机:本机地址

新建表结构:

类型长度非null
idintYes主键
usernamevarchar32Yes
passwordvarchar32
emailvarchar32
sexvarchar16
ageint
addressvarchar255
id要勾选自增
在输入表数据时,id字段无需输入数据,会自动填入自增编号(从1开始),非null列数据不可为空,其余不要求
  • ⭐表名不能与MySQL的保留字相同

建立与MySQL连接的配置文件

  1. 随后在resources目录下新建file
  2. 设置与MySQL数据库的连接(在application.properties下进行配置)
# 端口号
# 默认端口号为8080
server.port=8080
# tomcat的字符集
# 能设置字符集的地方都尽量设置一下,以避免出现乱码的情况
server.tomcat.uri-encoding=UTF-8
# jdbc连接
# jdbc的驱动
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
# jdbc:mysql://数据库地址/数据库名?参数设定
# url
spring.datasource.url=jdbc:mysql://localhost:3306/user_db?useUnicode=ture&characterEncoding=utf8&SSL=false&allowPublicKeyRetrieval=true
# 用户名
spring.datasource.username=root
# 密码
spring.datasource.password=自己数据库的密码
图示说明

使用jdbc连接时,先创建server应用与MySQL的一个连接connection,随后创建一个statement,再做一个SQL执行execute,最后做一个close关闭 为了精简过程,我们可以直接拿到现有的连接池使用执行,省去了连接connection和关闭close操作,节省了时间

改良优化

先将server与连接池连接,将mysql也与连接池连接,由连接池去连接mysql,而server仅与连接池连接,从连接池获取mysql连接

连接池配置

继续在resources下的application.properties中进行配置

# 连接池
# 事先初始化一定数据量的连接供jdbc使用,并且管理这些连接的创建和释放
# 连接池的类型
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
# 初始化连接池的数量
spring.datasource.druid.initial-size=3
# 判断连接池的最大活动数(同时最多可以连接多少个)
spring.datasource.druid.max-active=20
# 最大等待时间,单位:毫秒(ms)
# 如果超过该最大等待时间,则会抛出一个异常
spring.datasource.druid.max-wait=60000
# 最小空闲数,在使用人数较少时(例如深夜睡觉时),释放掉多余的连接数,最小空闲数即为释放后最少要保留的连接数,以避免重新创建连接时需要再次连接和取消连接的时间浪费
spring.datasource.druid.min-idle=3

代码生成器

代码生成器能生成的文件有:

  1. controller
  2. service
  3. mapper
  4. entity
  5. xml

具体执行步骤:

  1. 将老师给的CodeGenerator.java代码复制到com.springboot.userserver.generator包下,随后更改第26行
Java
String projectPath = "D://mybatisCode"; // 绑定mybatis的路径,自己到指定为止创建文件夹用于存储代码
  1. 更改第47行变为自己的数据库密码,第49行将resources下的配置复制过来
Java
        dsc.setDbType(DbType.MYSQL); // 因为用的是MySQL,所以DbType是MYSQL
        dsc.setDriverName("com.mysql.jdbc.Driver");
        dsc.setUsername("root");
        dsc.setPassword("Chen1656497721*"); // 改成自己的密码
        dsc.setUrl( // 用resources下的application.properties中的数据库连接信息
                "jdbc:mysql://localhost:3306/user_db?useUnicode=true&characterEncoding=utf8&useSSL=false&allowPublicKeyRetrieval=true");
        mpg.setDataSource(dsc);
  1. 更改第54行的模块位置,操作步骤如下:
Java
pc.setModuleName("user");// 模块名,生成后的代码都会放在该名字的module中
pc.setParent("com.springboot.userserver"); // user模块所在的位置
  1. 最后更改第83行的代码为:
Java
strategy.setInclude("user");// 数据库的表名
  1. 执行该代码生成器,随后到指定位置(第一步中设置的生成代码存储地址:D://mybatisCode)中查找对应代码,将D:\mybatisCode\com\springboot\userserver\user⽂件夹粘贴到com.springboot.userserver包下,再在resources下创建mapper包,将D:\mybatisCode\src\main\resources\mapper\user\UserMapper.xml文件粘贴到该包下

贡献者

The avatar of contributor named as freeway348 freeway348

文件历史

撰写