SpringBoot
文章平均质量分 59
SpringBoot
quest101
业精于勤,荒于嬉,行成于思,毁于随。
展开
-
SpringBoot统一异常处理
概述 SpringBoot 提供了 @ControllerAdvice 、@RestControllerAdvice 注解可以实现统一异常处理,只需要在定义异常类加上以上注解即可。自定义异常处理@RestControllerAdvicepublic class GlobalExceptionHandler { private Logger logger = LoggerFactory.getLogger(getClass()); /** * 拦截Exceptio原创 2021-07-05 00:36:52 · 218 阅读 · 0 评论 -
SpringBoot整合MybatisPlus使用IPage实现分页
概述Mybatis-Plus 提供了分页的功能。项目依赖JDK 1.8SpringBoot 2.5.1MybatisPlus 3.4.3.1分页实现maven依赖 <!-- SpringBoot MybatisPlus --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId原创 2021-07-04 22:53:26 · 9394 阅读 · 2 评论 -
SpringBoot整合MybatisPlus使用PageHelper分页插件
概述Mybatis-Plus 提供了分页的功能。使用分页Maven 依赖<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.12</version></dependency>配置文件原创 2021-07-04 22:52:03 · 1606 阅读 · 0 评论 -
SpringBoot整合WebSocket
概述HTTP 协议是一种无状态的、无连接的、单向的应用层协议。它采用了请求/响应模型。通信请求只能由客户端发起,服务端对请求做出应答处理。WebSocket和HTTP一样,都是一种网络通信协议。 比起HTTP只能由客户端发起通信,WebSocket支持双向通信,即客户端可以主动向服务器发送信息,服务器同样可以主动向客户端推送信息。STOMP(面向流文本的消息传递协议) 是 WebSocket 之上的一个子协议。项目依赖JDK 1.8 or laterSpringBoot 2.4.3整合We原创 2021-07-03 23:16:06 · 248 阅读 · 3 评论 -
SpringBoot整合MybatisPlus 生成代码(二)
概述 MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。版本依赖JDK 1.8SpringBoot 2.5.1Mybatis-Plus 3.4.3.1数据库:DROP TABLE IF EXISTS `departments`;CREATE TABLE `departments` ( `dept_no`原创 2021-07-03 01:43:28 · 176 阅读 · 0 评论 -
SpringBoot整合MybatisPus(一)
概述 MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。版本依赖JDK 1.8SpringBoot 2.5.1MybatisPlus 3.4.3.1数据库db/schema-h2.sqlDROP TABLE IF EXISTS user;CREATE TABLE user( id BIGINT(20原创 2021-07-03 01:41:44 · 129 阅读 · 0 评论 -
springboot 启动报错 Failed to introspect annotated methods on class org.springframework.boot.web.servlet
springboot 启动报错 Failed to introspect annotated methods on class org.springframework.boot.web.servlet.support.SpringBootServletInitializer解决:xml文件中替换 provided to compile and it worked!!.原创 2021-07-02 18:03:45 · 1305 阅读 · 0 评论 -
SpringBoot使用JUnit+MockMvc测试Controller
JUnit+MockMvc 测试 Controllermaven 依赖 <!-- web --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- SpringBoot Test -->原创 2021-07-02 02:15:34 · 517 阅读 · 1 评论 -
SpringBoot使用Mybatis-Plus Generator生成代码
maven依赖 <properties> <mybatis-plus.version>3.2.0</mybatis-plus.version> <mysql.connector.java.version>8.0.19</mysql.connector.java.version> <springfox-swagger.version>2.9.2</springfox-swagg原创 2021-07-02 02:13:14 · 266 阅读 · 0 评论 -
SpringBoot整合Elasticsearch
项目版本JDK 1.8SpringBoot 2.5.1JPA 2.3.0MySQL 8Elasticsearch 7.10.0添加 Maven 依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId></dependency>原创 2021-07-02 01:07:18 · 149 阅读 · 0 评论 -
SpringBoot整合Swagger3
概述 Swagger™ 的目标是为 REST API 定义一个标准的、与语言无关的接口,它允许人们和计算机在不访问源代码、文档或通过网络流量检查的情况下发现和理解服务的功能。当通过 Swagger 正确定义,消费者可以使用最少的实现逻辑理解远程服务并与之交互。添加 Maven 依赖<!-- springfox --> <dependency> <groupId>io.springfox</groupId> <artifact原创 2021-06-26 19:52:23 · 209 阅读 · 1 评论 -
SpringBoot+JPA构建Rest接口服务
项目版本JDK 1.8SpringBoot 2.5.1JPA 2.3.0MySQL 8创建项目添加依赖<!-- web--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency><!-- jpa-->原创 2021-06-26 19:46:01 · 237 阅读 · 3 评论 -
SpringBoot+Vue打成war包,部署到Tomcat服务器,页面访问不了
启动类继承 SpringBootServletInitializer 实现 configure 方法。@SpringBootApplicationpublic class SpringBootVueApplication extends SpringBootServletInitializer { public static void main(String[] args) { SpringApplication.run(SpringBootVueApplication.cla原创 2021-06-22 16:10:38 · 460 阅读 · 0 评论 -
Vue项目中使用ElementUI
Vue项目中使用ElementUIElementUI 安装npm i element-ui -S引入 Elementmain.js 内容添加import ElementUI from 'element-ui';import 'element-ui/lib/theme-chalk/index.css';Vue.use(ElementUI);以上代码便完成了 Element 的引入。样式文件需要单独引入。至此,一个基于 Vue 和 Element 的开发环境已经搭建完毕,现在就可以编写代原创 2021-06-20 22:54:50 · 160 阅读 · 2 评论 -
使用SpringBoot搭建Vue后端项目提供接口服务(三)
搭建后端接口服务1、IDEA父项目 右键 —》New —》Module 。2、Spring Initializr —》Module SDK:1.8 —》Next。3、填入 ,Group:com.kang,Artifact:springbootvue —》Next。4、点击 Web —》勾选 Spring Web —》Next —》Finish ,其他根据需要选择,这样就搭建好了一个 SpringBoot 项目。后端接口服务代码LoginController 类,登陆逻辑处理。@C原创 2021-06-20 19:00:37 · 459 阅读 · 0 评论 -
Vue前端项目开发页面(二)
前端界面开发开发工具版本@vue/cli 4.5.13新建Login.vue登陆页1、在 vue-exemples 项目,选中components目录右键 —》New —》Vue Component,名称为 Login 。Login.vue 文件代码如下:<template> <div> <div style="color:red">{{ ress }}</div> 用户名:<input type原创 2021-06-20 18:54:00 · 1799 阅读 · 9 评论 -
搭建Vue前端项目(一)
安装 Vue CLI 搭建Vue项目需 npn,npm是集成在 Node.js。因此,先下载安装 Node.js ,安装完成之后,查看 node.js 是否成功 :$ node -vv8.9.3查看 npm :$ npm -v5.5.1安裝 Vue CLI 4.x 需要 Node.js v8.9 或更高版本。 $ sudo npm install -g @vue/cli查看是否安装成功$ vue --version@vue/cli 4.5.13快速原型开发使用 vue原创 2021-06-20 01:27:43 · 208 阅读 · 0 评论 -
SpringBoot整合FreeMarker
FreeMarker Apache FreeMarker是一个基于Java语言开发的模板引擎,用于根据模板和不断变化的数据生成文本输出(例如:HTML网页,电子邮件,配置文件,源代码等)。FreeMarker模板使用FTL模板语言编写,这是一种简单的专用语言,在模板中,你专注于如何显示数据,在模板之外,你专注于呈现什么样的数据。。版本依赖JDK 8SpringBoot 2.3.0FreeMarker 2.3.30源代码maven依赖<dependency> <原创 2021-06-19 18:43:25 · 193 阅读 · 0 评论 -
SpringBoot添加JPA
JPA 简介 Java Persistence API(JPA)是一种Java规范,用于访问,持久化和管理Java对象/类与关系数据库之间的数据。JPA被定义为EJB 3.0规范的一部分,以替代EJB 2 CMP Entity Beans规范。现在,JPA被认为是Java行业中对象到关系映射(ORM)的标准行业方法。持久化,在这里包括三个层面的意思:API 本身,定义在 javax.persistence 包内Java持久化查询语言 (JPQL)对象/关系 元数据目前实现JPA规范的ORM原创 2021-05-20 23:05:33 · 385 阅读 · 0 评论 -
基于ZooKeeper的SpringBoot整合Curator实现分布式锁
Zookeeper实现分布式锁的原理 Zookeeper基于临时有序节点+watch机制实现分布式锁原理; 所有线程启动后,所有线程都会在zookeeper中创建临时有序节点(抢占锁),只有最小临时有序节点的那个线程能够抢占到锁, 其他未抢占到锁的线程处于等待状态和监听比自己小的节点; 当抢占到锁的线程释放锁后,比自己大的节点会监听到该节点发生变化,并且去尝试抢占锁;源码Maven 依赖 <dependency> <groupId>org.springframe原创 2021-05-17 13:13:10 · 348 阅读 · 0 评论 -
基于Redis集群SpringBoot整合Redisson实现分布式锁
分布式锁使用场景 用锁保护共享资源,例如 生成唯一的序列号、电商系统下单前确保库存足够等。RedLock算法的核心原理:使用N个完全独立、没有主从关系的Redis master节点以保证他们大多数情况下都不会同时宕机,N一般为奇数。一个客户端需要做如下操作来获取锁:获取当前时间(单位是毫秒)。轮流用相同的key和随机值在N个节点上请求锁,在这一步里,客户端在每个master上请求锁时,会有一个和总的锁释放时间相比小的多的超时时间。比如如果锁自动释放时间是10秒钟,那每个节点锁请求的超时时间可原创 2021-05-16 04:21:46 · 693 阅读 · 2 评论 -
SpringBoot整合Layui首页展示(六)
1.静态文件路径配置application-dev.yml配置文件添加静态资源访问路径:#设置静态资源路径,多个以逗号分隔spring.resources.static-locations: classpath:static/,file:static/,classpath:templates/2.静态资源添加Layui官网https://www.layui.com/下载文件,将官网下载的layui文件放到static文件内。从开源项目[https://gitee.com/Leytton/lay原创 2020-05-14 23:30:19 · 806 阅读 · 0 评论 -
SpringBoot整合Shiro实现登录(五)
title: 2020-4-25-SpringBoot整合Shiro实现登录(五)date: 2020-04-25 09:52:42tags: SpringBoot1.pom.xml文件增加shiro的依赖<!--Shrio依赖配置--><dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-spring</artifactId> .原创 2020-05-10 19:02:50 · 459 阅读 · 0 评论 -
SpringBoot整合Thymeleaf(四)
Thymeleaf是适用于Web和独立环境的现代服务器端Java模板引擎,能够处理HTML,XML,JavaScript,CSS甚至纯文本。1.pom.xml添加thymeleaf<!--Thymeleaf模版引擎 --><dependency> <groupId>org.springframework.boot</groupId> ...原创 2020-04-20 22:17:36 · 132 阅读 · 0 评论 -
SpringBoot整合mybatis(三)
SpringBoot版本 :2.2.6.RELEAS###1.创建user表CREATE TABLE `user` ( `id` int(32) NOT NULL AUTO_INCREMENT, `userName` varchar(32) NOT NULL, `passWord` varchar(50) NOT NULL, `realName` varchar(32) DEF...原创 2020-04-19 22:45:12 · 151 阅读 · 1 评论 -
Spring Boot教程入门(一)
title: 2020-4-5-Spring Boot教程(一):Spring Boot入门date: 2020-04-05 18:26:28tags:typora-root-url: …/…/_posts1、https://start.spring.io/ 下载demo项目, 如下图:2、用eclipse、idea等工具打开项目,如下图:3、运行DemoApplication里...原创 2020-04-09 23:18:15 · 181 阅读 · 0 评论