SpringBoot项目的打包
SpringBoot项目的打包
1. 运用mvn指令打包在pom.xml中配置打包插件
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>2.3.0.RELEASE</version> <configuration> <!-- 配置启动主程序入口 --> <mainClass>com.x2yu.exception.demo.DemoApplication</mainClass> </configuration> <executions> <execution> <goals> <goal>repackage</goal> ...
Log4j2配置
Log4j2日志框架在SpringBoot中的应用
1. SpringBoot自带的日志框架SpringBoot默认的日志框架为LogBack
GitHub地址:
Logback:https://github.com/qos-ch/logback
感觉Logback作者有段时间没更新了
在启动项依赖中点进去可以依次看到包含依赖<artifactId>spring-boot-starter-web</artifactId> ↓<artifactId>spring-boot-starter</artifactId> ↓<artifactId>spring-boot-starter-logging</artifactId> ↓<dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId& ...
Springboot全局异常处理
关于异常处理的学习思考。
1.Spring Boot的异常处理机制SpringBoot默认的异常处理主要是由BasicErrorController类来进行处理的。
处理分为了两类,一类是浏览器请求一个不存在的页面时发生异常,SpringBoot会默认响应一个Whitelabel Error Page的html文档内容。这是由于一般情况下浏览器默认发送的请求头中是Accept: text/html。
还有一类是在请求后服务端处理发生异常,返回包含异常信息的Json字符串,如:
{ "timestamp": "2020-08-04T06:11:45.209+0000", "status": 404, "error": "Not Found", "message": "No message available", "path": "/index.html"}
Spring Boot 默认提供了程序出错的结果映射路径/error。在BasicErrorController中进行映射处理。
@Controller@RequestMapp ...
mysql随机获取多条数据
mysql随机获取一条或者多条数据SQL分析关于mysql随机获取多条数据的学习记录。
1.SQL首先记录一下找到的三种sql语句
1. 简单使用random()SELECT * from usertb order by rand() LIMIT 100
语句虽然能够实现需求,但是根据一些资料看到 ORDER BY从句里面不能使用RAND()函数,这样会导致数据列被多次扫描,导致效率相当相当的低,效率不行,切忌使用。
2. 随机获取连续的数据SELECT * FROM usertb AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM `usertb`)-(SELECT MIN(id) FROM usertb))+(SELECT MIN(id) FROM usertb)) AS id) AS t2 WHERE t1.id >= t2.id ORDER BY t1.id LIMIT 100
3. 高效一点的随机获取多条数据SELECT * FROM usertb WHERE id >= ((SELECT MAX ...
Git日常记录
清除git仓库的所有提交记录,成为一个新的仓库记录一下
操作步骤
切换到新的分支
git checkout --orphan latest_branch
将所有文件添加到新仓库
git add -A
提交跟踪过的文件
git commit -am "commit message"
删除master分支
git branch -D master
重命名当前分支为master
git branch -m master
提交到远程master分支
git push -f origin master
git commit -m 与 git commit -am 的区别
1 $ git add .2 $ git commit -m "xxx"3 $ git commit -am "xxx" (第三步等于第一步和第二步)
【am】 就是 【add modify】 两个命令的合并
如果是新增的文件就必须使用第一步和第二步的命令; git commit -am ‘xxx’命令只能提交已经跟踪过且修改了的文件。
Swagger2 的简单配置
Api接口文档生成工具:Swagger2Swagger2 可以动态生成Api接口文档,使得api接口一目了然。
1. SpringBoot 整合 Swagger2
pom.xml 导入依赖
<!--swagger--><dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version></dependency><dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version></dependency>
配置类编写
impo ...
Vuex 与前端登录拦截器
前端登录拦截器的简单设置。Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。
1.Vuex的引入
Vuex 是什么?
如果创建vue 项目时没有引入vuex ,运行 npm install vuex --save,之后,在 src 目录下新建一个文件夹 store,并在该目录下新建 index.js 文件,在该文件中引入 vue 和 vuex
import Vue from 'vue'import Vuex from 'vuex'Vue.use(Vuex)
在index.js文件中设置我们需要的状态变量和方法。
实现前端拦截器,需要一个记录用户信息的变量,创建一个user对象
import Vue from 'vue'import Vuex from 'vuex'Vue.use(Vuex)export default new Vuex.Store({ state: { user: { username: window.localS ...
使用MyBatis-Plus进行代码快速生成
不断的去学习新的工具。
AutoGenerator 是 MyBatis-Plus 的代码生成器,通过 AutoGenerator 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 等各个模块的代码,极大的提升了开发效率。
1.MyBatis Plus 简介以及使用
MyBatis-Plus官网
Github
MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变。
Maven导入
<!--Mybatis Plus--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.3.1</version></dependency>
2. MyBatis plus Generat ...