自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

JInterest

个人学习记录

  • 博客(43)
  • 收藏
  • 关注

原创 什么是MapStruct?

一、简介现在的分布式系统中模块划分越来越细,不同模块的实体、DTO、DO等需要进行转换,这么多工程处理起来不是那么简单。MapStruct 就是这样的一个属性映射插件,用于为Java Bean生成类型安全且高性能的映射。它基于编译阶段生成get/set代码,此实现过程中没有反射,不会造成额外的性能损失。只需要定义一个 Mapper 接口,MapStruct 就会自动实现这个映射接口,避免了繁琐的映射实现。???? 官网 - ???? Github - ???? 官方示例优点与手工编写映射代码相比

2021-06-14 16:58:26 1453 2

原创 brew 安装/切换 指定版本的 Gradle

前言在导入 gradle 项目时候依赖一直下载不了,plugin 找不到。最终问题定位在 gradle 版本没有对应上。在Mac OS 使用 brew install 默认是安装最新版本的,所以安装指定版本需要我们改一些配置。使用 brew 安装指定版本Mac 安装 homebrew 请参考一、先去⛳️官网下载指定版本查看文件的 sha256 (待会需要使用) openssl dgst -sha256 /Users/youpath/gradle-4.10.2-all.zip #

2021-04-12 13:10:44 4497 1

原创 seatable 安装问题

问题:安装seatable时,出现数据库连接异常(Access denied)原因:修改 MySQL 的 root 的密码(MYSQL_ROOT_PASSWORD 和 DB_ROOT_PASSWD)时需要注意格式。我的解决方案: 在字符串中加了 _ , 如 mysql_pwd

2021-03-31 12:01:33 1460

原创 CentOS 7安装docker-compose找不到包

使用yum安装docker-compose时提示没有这个包可以使用以下命令安装更新yum源sudo yum -y install epel-release然后可以直接安装yum install docker-compose可以理解成获取系统支持且最新的epel-release

2021-03-31 10:43:49 783

原创 本地事务&分布式事务

一、本地事务1、事务的基本性质数据库事务的几个特性∶原子性(Atomicity)、一致性(Consistency)隔离性或独立性(Isolation)和持久性(Durabilily),简称就是 ACID;原子性 ∶ 一系列的操作整体不可拆分,要么同时成功,要么同时失败一致性∶ 数据在事务的前后,业务整体一致。转账 A∶1000; B∶1000; 转200 事务成功; A∶ 800 B∶1200隔离性∶ 事务之间互相隔离。持久性∶ 一旦事务成功,数据一定会落盘在数据库。在以往的单体

2020-12-14 09:40:47 350

原创 压力测试Jmeter的简单使用

前言Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了

2020-11-22 08:57:57 653

原创 ElasticSearch基础入门

转载:谷粒商城-官方笔记-分布式高级(3/4)前言什么是ElasticSearch?ElasticSearch 是一个高可用开源全文检索和分析组件。提供存储服务,搜索服务,大数据准实时分析等。一般用于提供一些提供复杂搜索的应用。ElasticSearch 提供了一套基于restful风格的全文检索服务组件。前身是compass,直到2010被一家公司接管进行维护,开始商业化,并提供了ElasticSearch 一些相关的产品,包括大家比较熟悉的 kibana、logstash 以及 Elast

2020-11-19 13:11:07 720

原创 node自由切换版本

一、使用nvm管理node版本1、安装nvmbrew install nvm2、使用nvm安装node版本安装最新版本nvm isntall node安装指定版本nvm install 10.16.43、查看所有版本nvm ls4、切换node版本使用最新版本nvm use node使用指定版本nvm use 10.16.2注意mac使用的终端是zsh,需要在~/.zshrc添加以下内容:export NVM_DIR=~/.nvmsource $(brew --p

2020-10-29 23:13:05 351

原创 Docker超详细教程

Docker简介Docker 是一个开源的应用容器引擎,基于Go语言并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。应用场景Web 应用的自动化打包和发布。自动化测试和持续集成、发布。在服务型环境中部署和调整数据库或其他的后台应用。从头编译或者扩展

2020-10-09 07:21:03 2953 1

原创 masOS-Tomcat安装部署

1. 安装TomCat官网下载地址解压,重命名TomCat。我的tomcat是放在/usr/local/2.设置bin文件权限终端输入cd /usr/local/TomCat/bin授权sudo chmod 755 *.sh755 : 表示用户对该文件拥有读写,执行的权限,同组的其他人员拥有执行和读的权限,没有写的权限,其它用户的权限和同组人员一样.3. 开启TomCatsudo sh ./startup.sh开启浏览器输入localhost:808

2020-09-28 23:06:44 131

原创 macOS-JDK安装部署

1.下载JDKoracle官网JDK下载地址百度网盘:20pn2.安装傻瓜式安装,dmg格式会自动安装到Macintosh HD/资源库/Java/JavaVirtualMachines 下打开终端输入java -version 出现版本号说明配置生效3. 配置环境变量1. 配置到/etc/profile:为系统的每个用户设置环境信息...

2020-09-27 19:49:30 138

原创 masOS-Nodejs安装部署

1.下载Nodejs官网下载地址下载好会弹出一个框框,按提示操作查看版本2.配置环境变量打开终端输入sudo vim /etc/profile添加export NODE_HOME=/usr/local/bin/nodeexport PATH=$PATH:$NODE_HOME/binsource /etc/profile刷新配置...

2020-09-27 19:42:04 288

原创 masOS-MySql安装部署

1. 下载MySQLMysql官网下载下载.dmg格式,默认安装到/usr/local/mysql。也可以下载tar.gz格式,自己选择安装位置。下载完成,默认一直下一步就行了,安装完后mysql会弹出一个框,告诉你安装成功以及设置root用户的初始密码。2. 配置环境变量打开终端 cmd+空格sudo 命令打开防止没有权限修改文件 sudo Vim /etc/profile然后配置 ,:wq退出(root用户且文件只读 ,:wq!强制退出)export MYS

2020-09-27 19:40:41 552

原创 masOS-Maven安装部署

1. 下载maven官网maven 3.6.3maven库,百度网盘 : 3egs解压到/usr/local/,或者其他地方2.修改配置文件修改本地仓库路径修改镜像,从阿里云镜像仓库下载速度比较快(注意配置的格式) <mirrors> <mirror> <id>nexus-aliyun</id> <mirrorOf>central</mirrorOf> <n

2020-09-27 19:37:05 385

原创 macOS-Redis安装部署

1.下载安装RedisRedis官网选择稳定版下载解压到/usr/local,终端进入Redis目录编译测试 sudo make test编译安装 sudo make install2.启动测试是否成功安装安装成功后,输入redis-server &后台启动redisredis-cli进入客户端redis-cli shutdown 关闭 或者 kill -9 redis端口3. 修改redis配置找到redis.conf,先备份cp redi

2020-09-27 19:34:43 193

原创 macOS-JDK11安装部署

1.下载JDKoracle官网JDK下载地址百度网盘:20pn2.安装傻瓜式安装,dmg格式会自动安装到Macintosh HD/资源库/Java/JavaVirtualMachines 下打开终端输入java -version 出现版本号说明配置生效3. 配置环境变量1. 配置到/etc/profile:为系统的每个用户设置环境信息和启动程序,当用户第一次登录时,该文件被执行,其配置对所有登录的用户都有效。当被修改时,必须重启才会生效。英文描述:”System wide enviro

2020-09-27 19:28:34 1075

原创 macOS-Git安装部署

1. 安装Git官网下载地址傻瓜式安装查看版本git --version系统提示需要安装xcode问题2. git相关配置通过以下指令配置用户名和邮箱git config --global user.name "your_name" git config --global user.email "[email protected]"git config core.ignorecase false // 本地仓库文件是否大小写敏感查看是否配置成功gi

2020-09-27 19:25:13 424

原创 《将博客搬至CSDN》

搬家搬家

2020-09-27 18:09:20 68

原创 Markdown之基础语法

认识MarkdownMarkdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。Markdown具有一系列衍生版本,用于扩展Markdown的功能(如表格、脚注、内嵌HTML等等),这些功能原初的Markdown尚不具备,它们能让Markdown转换成更多的格式,例如LaTeX,Docbook。简单来说,一般我们用的字处理软件Word或Pages有大量的排版、字体设置,而Markdown是个非常容易学习的排版语法。Markdown 的优点如

2020-09-27 18:02:25 360

原创 Jsp+Servlet 简单登录注册查询

注册功能:制作一个注册页面用户输入:用户名密码年龄注册成功:——>跳转至登录页面进行登录注册失败:——>文字或其他形式的提示皆可简易查询:制作一个查询页面输入用户名显示该用户的用户名、密码、年龄演示启动进入登陆页面点击注册,进入注册页面,成功跳转到登录页面失败则提示回到登录页面,登录成功进入查询页面登录失败显示提示信息输入用户名->显示该用户的用户名、密码、年龄代码daopublic class Us.

2020-09-27 17:52:19 787

原创 计网考前必背

参考王道考研,菜鸟教程分层结构七层 OSI 参考模型 (法定标准)国际化标准组织(ISO)于1984年提出开发系统互连(OSI)参考模型。7 应用层 :能够产生网络流量,能够和用户交互的应用程序6 表示层 :数据加密解密 数据压缩恢复 格式转换5 会话层 :服务和客户建立的会话 查木马 校验点实现同步4 传输层 ...

2020-08-19 23:16:49 403

原创 Mybatis plus简单入门

一、简介官网:http://mp.baomidou.com/参考教程:http://mp.baomidou.com/guide/MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。二、特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺...

2020-08-06 17:33:18 268 1

原创 vue

一、介绍1、Vue.js 是什么Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。官方网站:https://cn.vuejs.org2、...

2020-08-01 17:33:04 179

原创 npm

一、简介1、什么是NPMNPM全称Node Package Manager,是Node.js包管理工具,是全球最大的模块生态系统,里面所有的模块都是开源免费的;也是Node.js的包管理工具,相当于前端的Maven 。2、NPM工具的安装位置我们通过npm 可以很方便地下载js库,管理前端工程。Node.js默认安装的npm包和工具的位置:Nod...

2020-07-19 17:32:59 181

原创 Node

一、简介1、什么是Node.js简单的说 Node.js 就是运行在服务端的 JavaScript。Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。2、Node.js有什么用如果你是一个前端程序员,你不懂得像PHP、Python或Ruby等动态...

2020-07-19 17:32:53 81

原创 ES6

自学参考:http://es6.ruanyifeng.com/一、ECMAScript 6 简介ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了。它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。1、ECMAScript 和...

2020-07-19 17:32:39 65

原创 EasyExcel

一、Excel导入导出的应用场景1、数据导入:减轻录入工作量2、数据导出:统计信息归档3、数据传输:异构系统之间数据传输二、EasyExcel简介1、EasyExcel特点Java领域解析、生成Excel比较有名的框架有Apache poi、jxl等。但他们都存在一个严重的问题就是非常的耗内存。如果你的系统并发量不大的话可能还行,但是一旦并发...

2020-07-18 17:30:12 432

原创 element-ui的下拉框有值却无法选中

问题在用element-ui做后台系统时,下拉框遇见一个问题,当从后端获取到值,然后选择时下拉框无反应。原因调试了之后发现 ,函数中已经修改成功,但在页面中没有刷新改变后的值,下拉框还是默认值。搜索资料得出结果:因为数据层次太多,render函数没有自动更新,需手动强制刷新。解决方法写一个方法,在select的change事件中调用此方法,运用...

2020-07-16 00:56:58 218

原创 算法复杂度

前言算法复杂度分为时间复杂度和空间复杂度。算法的复杂性体运行该算法时的计算机所需资源的多少上,计算机资源最重要的是时间和空间(即寄存器)资源,因此复杂度分为时间和空间复杂度。时间复杂度是指执行算法所需要的计算工作量,指时间增长的趋势。T(n) = O( f ( n ) )常用时间复杂度量级:常数阶O(1): 算法的执行时间不随着问题规...

2020-07-15 21:37:02 155

原创 git上传相关错误

1,输入:git remote add origin [email protected]:yourName/yourRepo.git 时报错:fatal: Not a git repository (or any of the parent directories): .git解决办法:输入 git init ,初始化一个本地仓库2,输入:git remo...

2020-07-11 23:33:59 345 1

原创 多模块引入失败

问题:今天在搭建多模块项目的时候ServiceA引入ServiceB模块,启动的时候出现Could not resolve dependencies for project.... 也就是ServiceB模块jar没找到原因:ServiceB模块没有打包生成jarspring-boot工程打包编译时,会生成两种jar包,一种是普通的jar,另...

2020-07-11 11:54:04 240

原创 Java多线程并发--3

1、Java 中用到的线程调度抢占式调度:抢占式调度指的是每条线程执行的时间、线程的切换都由系统控制,系统控制指的是在系统某种运行机制下,可能每条线程都分同样的执行时间片,也可能是某些线程执行的时间片较长,甚至某些线程得不到执行的时间片。在这种机制下,一个线程的堵塞不会导致整个进程堵塞。协同式调度:协同式调度指某一线程执行完后主动通知系统切换到另一...

2020-06-29 17:16:02 242

原创 Java多线程并发--2

1、同步锁与死锁一、同步锁当多个线程同时访问同一个数据时,很容易出现问题。为了避免这种情况出现,我们要保证 线程同步互斥,就是指并发执行的多个线程 ,在同一时间内只允许一个线程访问共享数据。 Java 中可以使用synchronized 关键字来取得一个对象的同步锁。二、死锁何为死锁,就是多个线程同时被阻塞,它们中的一个或者全部都在等待某个资源被释...

2020-06-29 10:46:31 89

原创 Java多线程并发--1

1、线程实现/创建方式一、继承 Thread 类Thread 类本质上是实现了 Runnable 接口的一个实例,代表一个线程的实例。启动线程的唯一方法就是通过 Thread 类的 start()实例方法。start()方法是一个 native 方法,它将启动一个新线程,并执行 run()方法。public class MyThread extend...

2020-06-28 16:39:41 117

原创 Java基础--集合

集合类存放于Java.util包中,主要有3种set(集)、list(列表)、map(映射) 视频学习链接先上图 ~List、SetArrayList:底层是数组。LinkedList:底层是双向链表。Vector:底层是数组,线程安全的,线程同步的,某一时刻只有一个线程能够写 Vector,所有效率较低,使用较少。HashSet:底层是...

2020-06-26 19:51:49 80

原创 Java基础--2

1、异常分类及处理一、 概念如果某个方法不能按照正常的途径完成任务,就可以通过另一种路径退出方法。在这种情况下会抛出一个封装了错误信息的对象。此时,这个方法会立刻退出同时不返回任何值。另外,调用这个方法的其他代码也无法继续执行,异常处理机制会将代码执行交给异常处理器。二、异常分类Throwable是Java语言中所有错误或异常的超类。下一层分为Er...

2020-06-25 17:17:28 144

原创 Java基础--1

1、Java语言有哪些特点简单易学,有丰富的类库面向对象(java最重要的特性,让程序耦合度更低,内聚性更高)与平台无关性(JVM是Java跨平台使用的根本)可靠安全支持多线程2、面向对象和面向过程的区别面向过程: 是分析解决问题的步骤,然后用函数把这些步骤一步一步地实现,然后在使用的时候一一调用则可。性能较高,所有单片机,嵌入式开发等...

2020-06-24 20:39:02 128

原创 Linux基础

以下是使用阿里云ecs的Linux-centos8Linux的远程连接和文件传输Windows使用下面两种工具对linux的远程连接和文件传输。Xshell:终端模拟器Xftp:为远程文件传输软件点击进入下载Linux的目录结构bin:存放常用命令的目录,如vi,suboot:存放引导系统启动的相关文件dev: 用于存放设...

2020-06-18 22:28:40 103

原创 Github的连接

原因今天上传博客时至github失败,ping GitHub.com超时C:\Users\ajun>ping github.com正在 Ping github.com [192.30.255.112] 具有 32 字节的数据:请求超时。请求超时。请求超时。请求超时。192.30.255.112 的 Ping 统计信息: 数据...

2020-06-06 23:26:15 163

原创 HTTP状态码

消息这一类型的状态码,代表请求已被接受,需要继续处理。这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束。由于 HTTP/1.0 协议中没有定义任何 1xx 状态码,所以除非在某些试验条件下,服务器禁止向此类客户端发送 1xx 响应。100 Continue客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服...

2020-06-02 22:59:36 112

空空如也

空空如也

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

TA关注的人

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