简介梗概
实习的意义和作用
企业员工标准
- 出勤
- 工作态度
- 日报
- 团队协作
介绍华清
研发了元宇宙实验中心 在全国高校都有合作 出版了100多本教材 合作院校几乎覆盖西南地区所有高校
运用到的工具
最好用 jdk-8 版本 MySQL最好用 8.x 版本的
后台:springboot框架,jdbc(连接MySQL数据库),druid(建立连接池)、Mybatis-plus(ORM,将数据库字段映射为Java对象),代码生成器(根据数据表字段反向生成Java代码)、条件构造器(单表操作, 不用写sql语句)、分页拦截器(在做分页查询时,自动分页) 跨域过滤器(前端跨域访问后台的配置:直接发送请求会失败,会被浏览器的同源策略给拦截住)
前端:vue框架、elementUI(页面标签)、axios(前后端通信)
功能::
- 登录:前端输入用户名密码,发送给后台进行验证,成功则跳转页面,失败则给出错误提示
- 主界面,布局(header、aside、main)
- 业务页面:以用户列表为例,分页查询、添加、修改、删除
前后端分离的好处:分布式部署时好用..................
项目设计
项目:SpringBoot-Vue-Cli
Springboot脚手架网址:start.springboot.io 和 start.aliyun.com
建立项目步骤:
Group填写是域名的倒置写法,项目存储地址Location不要有中文路径(可能会有乱码),Artifact与Name相同,Package-name是代码的根目录,所有代码都放在该位置下 Java版本需要在Java17版本以下(不包括Java17),因为17以后的版本使用SpringBoot3.0, Packaging是打包方式,选择为war包,则打包后还需要安装tomcat服务器并解压到该服务器中运行;而选择打包为jar包,其有内嵌的tomcat服务器,所以只要直接启动jar包即可
- 创建完成项目后,如图两个文件不可删除,否则项目会崩溃
- 设置Maven
- 更改settings.xml中的国内镜像:
随后对该New Project Setup中的Settings for New Projects的设置也同上settings设置一样修改,这里就不再贴图展示,上述修改是仅对刚刚创建的user-server项目生效的设置,而现在设置的是对以后所有新建立项目的设置,这样以后新建项目就不用每次都进行设置了
JDK是JAVA开发版本,JRA是JAVA运行版本
- 设置对应SDK,Language level需要选择对应版本,不确定则选择SDK DEFAULT,系统会自动匹配
- 最后在Setting中,找到plugins设置,下载lombok插件
- 将pom.xml文件中的depencies标签下的所有内容替换为老师所提供的依赖.txt文件中的依赖包
- 随后点击右边栏M,再点击左上角按钮,系统会自动下载缺少的依赖
Navicat
MariaDB是MySQL的分支,与MySQL作用一致
创建连接时,输入连接名与密码后,用户名默认root,必须要先测试连接,连接成功后才能继续创建 若先前已经创建过用户名为root的连接,则密码为先前设置的密码
主机:本机地址
新建表结构:
名 | 类型 | 长度 | 非null | 键 |
---|---|---|---|---|
id | int | Yes | 主键 | |
username | varchar | 32 | Yes | |
password | varchar | 32 | ||
varchar | 32 | |||
sex | varchar | 16 | ||
age | int | |||
address | varchar | 255 | ||
id要勾选自增 | ||||
在输入表数据时,id字段无需输入数据,会自动填入自增编号(从1开始),非null列数据不可为空,其余不要求 |
- ⭐表名不能与MySQL的保留字相同
建立与MySQL连接的配置文件
- 随后在resources目录下新建file
- 设置与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
代码生成器
代码生成器能生成的文件有:
- controller
- service
- mapper
- entity
- xml
具体执行步骤:
- 将老师给的CodeGenerator.java代码复制到com.springboot.userserver.generator包下,随后更改第26行
String projectPath = "D://mybatisCode"; // 绑定mybatis的路径,自己到指定为止创建文件夹用于存储代码
- 更改第47行变为自己的数据库密码,第49行将resources下的配置复制过来
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);
- 更改第54行的模块位置,操作步骤如下:
pc.setModuleName("user");// 模块名,生成后的代码都会放在该名字的module中
pc.setParent("com.springboot.userserver"); // user模块所在的位置
- 最后更改第83行的代码为:
strategy.setInclude("user");// 数据库的表名
- 执行该代码生成器,随后到指定位置(第一步中设置的生成代码存储地址:D://mybatisCode)中查找对应代码,将D:\mybatisCode\com\springboot\userserver\user⽂件夹粘贴到com.springboot.userserver包下,再在resources下创建mapper包,将D:\mybatisCode\src\main\resources\mapper\user\UserMapper.xml文件粘贴到该包下