自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

原创 SpringBoot统一异常处理

概述​ SpringBoot 提供了 @ControllerAdvice 、@RestControllerAdvice 注解可以实现统一异常处理,只需要在定义异常类加上以上注解即可。自定义异常处理@RestControllerAdvicepublic class GlobalExceptionHandler { private Logger logger = LoggerFactory.getLogger(getClass()); /** * 拦截Exceptio

2021-07-05 00:36:52 209

原创 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 8695 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 1546

原创 SpringBoot整合WebSocket

概述HTTP 协议是一种无状态的、无连接的、单向的应用层协议。它采用了请求/响应模型。通信请求只能由客户端发起,服务端对请求做出应答处理。WebSocket和HTTP一样,都是一种网络通信协议。 比起HTTP只能由客户端发起通信,WebSocket支持双向通信,即客户端可以主动向服务器发送信息,服务器同样可以主动向客户端推送信息。STOMP(面向流文本的消息传递协议) 是 WebSocket 之上的一个子协议。项目依赖JDK 1.8 or laterSpringBoot 2.4.3整合We

2021-07-03 23:16:06 230 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 159

原创 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 115

原创 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 1250

原创 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 454 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 239

原创 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&gt

2021-07-02 01:07:18 138

原创 Failed to configure a DataSource: ‘url‘ attribute is not specified and no embedded datasource could

@Configurationpublic class DatasourceConfig { @Bean public DataSource datasource() { return DataSourceBuilder.create() .driverClassName("com.mysql.cj.jdbc.Driver") .url("jdbc:mysql://localhost:3306/jwtt")

2021-06-27 14:19:32 53

原创 SpringBoot整合Swagger3

概述​ Swagger™ 的目标是为 REST API 定义一个标准的、与语言无关的接口,它允许人们和计算机在不访问源代码、文档或通过网络流量检查的情况下发现和理解服务的功能。当通过 Swagger 正确定义,消费者可以使用最少的实现逻辑理解远程服务并与之交互。添加 Maven 依赖<!-- springfox --> <dependency> <groupId>io.springfox</groupId> <artifact

2021-06-26 19:52:23 183 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 221 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 443

原创 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 145 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 421

原创 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 1713 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 188

原创 SpringBoot整合FreeMarker

FreeMarker​ Apache FreeMarker是一个基于Java语言开发的模板引擎,用于根据模板和不断变化的数据生成文本输出(例如:HTML网页,电子邮件,配置文件,源代码等)。FreeMarker模板使用FTL模板语言编写,这是一种简单的专用语言,在模板中,你专注于如何显示数据,在模板之外,你专注于呈现什么样的数据。。版本依赖JDK 8SpringBoot 2.3.0FreeMarker 2.3.30源代码maven依赖<dependency> &lt

2021-06-19 18:43:25 170

原创 IDEA使用Jrebel运行SpringBoot项目

IDEA 中配置 Jrebel1、打开IDEA Preferences 界面,Compiler—> 勾选 Build project automatically。2、按组合键 Shift+Ctrl+Alt+/,填入 Registry,点击 Registry。勾选上文本框 compiler.automake.allow.when.app.running使用Jrebel 运行SpringBoot项目1、创建 SpringBoot 项目,启动类文件 右击用 Rebel Run ‘DemoAp

2021-06-13 20:59:46 934

原创 Spring AOP功能多种实现方式

XML配置方式maven依赖<properties> <spring-version>5.1.7.RELEASE</spring-version></properties><dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context&l

2021-06-13 18:17:57 54

原创 Error creating bean with name ‘org.springframework.aop.aspectj.AspectJPointcutAdvisor#0

问题:nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.aop.aspectj.AspectJPointcutAdvisor#0': Bean instantiation via constructor failed; nested exception is org.springframework.be

2021-06-13 15:05:13 701 1

原创 SpringBoot-JPA整合ShardingShpere自定义分布式主键

分布式主键简介​ 在分布式环境下,由于分库分表导致数据水平拆分后无法使用单表自增主键,因此我们需要一种全局唯一id生成策略作为分布式主键。当前的解决方案有:UUID(Universally Unique Identifie)Snowflake(Twitter提供的雪花算法)Leaf 算法(Leaf-segment 数据库方案和Leaf-snowflake方案)Redis 计数器Zookeeper数据库自增ID数据库多主模式号段模式TinyID(滴滴)

2021-05-24 20:56:47 1232 1

原创 IDEA查看历史记录

方法一文件内【Ctrl+右键单击 】→Local History→Show History,显示当前文件的本地修改历史方法二一:在文件内,按【Ctrl+ Shift + A】弹出全部搜索对话框,在对话框中输入【Local History】 ,按回车键即可。二、在弹出的对话框中选择【Show History】(注意:【Put Label…】是类似于Git上面的commit,用来提交代码)...

2021-05-24 06:12:10 14940

原创 SpringBoot+JPA整合ShardingShpere实现分表-读写分离

ShardingShpere 分表分库+读写分离​ ShardingShpere 提供来了根据某个字段分表分库的功能。读写分离新增记录的线程从 master 数据库查询不是新增线程从 salva 数据库查询ShardingShpere 源码版本依赖JDK 8SpringBoot 2.4.3ShardingShpere 5.0创建两个数据库 master0、master1,每个库包含两张表 user_0、user_1、user_2。CREATE DATABASE `master

2021-05-23 19:02:06 566

原创 搭建Mysql主从数据库

mysql 5.7 安装下载yum源$ vagrant up # 启动虚拟机$ vagrant ssh # 连接到虚拟机# 下载mysql 5.7wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 本地安装yum源yum install -y mysql-community-server检查 mysql 源是否安装成功yum repolist enabled | grep "mysql

2021-05-23 05:38:50 432

原创 SpringBoot+JPA整合ShardingShpere实现分库分表

ShardingShpere 分表分库​ ShardingShpere 提供来了根据某个字段分表分库的功能。ShardingShpere 源码版本依赖JDK 8SpringBoot 2.4.3ShardingShpere 5.0创建两个数据库 ds0、ds1,每个库包含两张表 user_0、user_1、user_2。CREATE DATABASE `ds0` CHARACTER SET utf8 COLLATE utf8_general_ci;CREATE DATABASE `ds

2021-05-23 04:22:19 660

原创 SpringBoot+JPA整合ShardingShpere实现分表

ShardingShpere 分表​ ShardingShpere 提供来了根据某个字段分表的功能。ShardingShpere 源码版本依赖JDK 8SpringBoot 2.4.3ShardingShpere 5.0创建一个数据库和两张表,CREATE DATABASE `shop` CHARACTER SET utf8 COLLATE utf8_general_ci;CREATE TABLE `user_0` ( `id` int(11) NOT NULL, `ema

2021-05-23 04:19:51 2279

原创 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 352

原创 基于ZooKeeper的SpringBoot整合Curator实现分布式锁

Zookeeper实现分布式锁的原理​ Zookeeper基于临时有序节点+watch机制实现分布式锁原理; 所有线程启动后,所有线程都会在zookeeper中创建临时有序节点(抢占锁),只有最小临时有序节点的那个线程能够抢占到锁, 其他未抢占到锁的线程处于等待状态和监听比自己小的节点; 当抢占到锁的线程释放锁后,比自己大的节点会监听到该节点发生变化,并且去尝试抢占锁;源码Maven 依赖 <dependency> <groupId>org.springframe

2021-05-17 13:13:10 331

原创 JMeter 安装使用

Jmeter下载​Jmeter 启动$ cd /Users/xxx/Downloads/apache-jmeter-5.4.1/bin$ sh jmeterJmeter 测试1、Test Plan -》Add -》Threads -》ThreadGroup2、ThreadGroup -》Add -》Sampler -》Http Request3、ThreadGroup -》Add -》Listener -》View Results Tree问题:Response code:503

2021-05-16 08:04:17 173

原创 基于Redis集群SpringBoot整合Redisson实现分布式锁

分布式锁使用场景​ 用锁保护共享资源,例如 生成唯一的序列号、电商系统下单前确保库存足够等。RedLock算法的核心原理:使用N个完全独立、没有主从关系的Redis master节点以保证他们大多数情况下都不会同时宕机,N一般为奇数。一个客户端需要做如下操作来获取锁:获取当前时间(单位是毫秒)。轮流用相同的key和随机值在N个节点上请求锁,在这一步里,客户端在每个master上请求锁时,会有一个和总的锁释放时间相比小的多的超时时间。比如如果锁自动释放时间是10秒钟,那每个节点锁请求的超时时间可

2021-05-16 04:21:46 656 2

原创 Redis集群搭建

Redis集群搭建1、准备工作$ mkdir cluster-test$ cd cluster-test$ mkdir 7000 7001 7002 7003 7004 7005$ cd 7000$ touch redis.conf$ vi redis.conf# 添加如下集群配置文件port 7000cluster-enabled yescluster-config-file nodes_7000.confcluster-node-timeout 5000appendonly y

2021-05-12 23:45:09 177

原创 快速排序实现

快速排序的基本思想:通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序的目的。假设现在要对数组{50,10,90,30,70,40,80,60,20}进行排序。#define MAXSIZE 10typedef struct{ int r[MAXSIZE+1]; int length;}SqList;/* 交换 L 中数组 r 的下标为 i 和 j 的值 */void swap(SqLi

2020-12-17 21:42:41 98

原创 Vagrant安装多个CentOS7虚拟机

1. 创建集群目录、文件夹$ cd /Users/xxx/ApplySoft$ mkdir k8s$ cd k8s$ mkdir k8s-master k8s-node1 k8s-node22. Vagrant安装centos7分别在k8s-master k8s-node1 k8s-node2目录安装centos7,参考上一篇Vagrant安装centos7,按如下指令操作即可,K8s-master目录下安装:$ cd /Users/xikangzheng/ApplySoft/k8s/k8s

2020-12-06 17:24:50 544

原创 Vagrant安装

1. 下载安装vagrant下载地址:https://www.vagrantup.com/downloads.html安装vargrant,需要先安装virtualboxVirtualbox下载地址:https://www.virtualbox.org/wiki/Downloads2. vagrant添加box$ cd /Users/xxx/ApplySoft$ mkdir vagrant$ cd /Users/xxx/ApplySoft/vagrant下载CentOS7.0 Box$

2020-12-06 06:52:50 282

原创 Hexo分类及标签显示

Hexo根目录配置_config.ymlcategory_map: - Blog: /categories/Blog - Tech: /categories/Tech - Tools: /categories/Tools - Other: /categories/Othertag_map: - JavaScript: js - css: css - html5: html5主题目录配置 /themes/_config.ymlmenu: Home: / Archi

2020-12-01 00:44:39 1216

原创 Docker部署SpringCloud微服务项目

使用Docker来部署SpringCloud微服务项目以项目eureka-server为例,将该微服务的可运行jar包构建成docker镜像1、将jar包上传到服务器/app/eureka目录,在jar包所在目录创建名为Dockerfile的文件。2、在Dockerfile中添加以下内容# 基于哪个镜像From java:8# 复制文件到容器ADD eureka-server-1.0-SNAPSHOT.jar /eureka-server.jar# 声明需要暴露的端口EXPOSE 8761

2020-11-27 21:21:26 369

原创 SpringCloud-Dashboard-Turbine断路器监控(集成RabbitMQ)

Spring Cloud 整合了仪表盘组件Hystrix Dashboard,它主要用来实时监控Hystrix 的各项指标信息。通过Hustrix Bashboard反馈的实时信息,可以帮助我们快速发现系统中存在的问题,从而及时地采取应对措施。Java 8SpringBoot 2.2.10SpringCloud Hoxton.SR8RabbitMQ 3.8.91. 构建一个Hyxtrix Dashboard来对服务实现监控。创建一个标准的Spring Boot 工程,命名为 hystrix

2020-11-18 20:56:52 270

原创 Logstash入门

Logstash入门Java版本安装Logstash运行和测试使用Logstash解析日志将多个输入和输出插件拼接一起JAVA版本Logstash需要以下版本之一:Java 8Java 11Java 14安装Logstash下载Logstash开始运行测试你Logstash的安装运行:xattr -d -r com.apple.quarantine logstash-7.10.0cd logstash-7.10.0bin/logstash -e 'input { s

2020-11-17 13:43:01 320

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除