自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 mybatis-oracle批量插入Merge into,存在更新,不存在新增

Merge是一个非常有用的功能,类似于Mysql里的insert into on duplicate key.Oracle在9i引入了merge命令,通过这个merge你能够在一个SQL语句中对一个表同时执行inserts和updates操作. 当然是update还是insert是依据于你的指定的条件判断的,Merge into可以实现用B表来更新A表数据,如果A表中没有,则把B表的数据插入A表. MERGE命令从一个或多个数据源中选择行来updating或inserting到一个或多个表语法如下M

2021-12-21 18:02:59 2333

原创 hashCode 与 equals

一、equals()作用:判断两个对象是否相等定义在基类Object.java中,通过判断两个对象的地址值来判断它们是否相等(也就是判断他们是不是同一个对象)public boolean equals(Object obj) { return (this == obj);}类里面没有重写equals(),等价与使用"=="来比较两个对象,比较的是两个对象在内存中存储的地址值是否相等。类里面重写equals(),通过重写的规则来比较两个对象(一般要判断内容是否相同)。

2021-09-13 22:22:58 180

原创 JMeter压力测试

结合jdk的jconsole.exe和Apache JMeter做一个简单的压力测试jconsolejdk的bin目录下,打开jconsole.exe选择本地启动的项目JMeter下载地址:http://jmeter.apache.org/download_jmeter.cgi选择Binaries下载解压,打开bin目录下的jmeter.bat打开后如下图,cmd窗口不能关,里面的提示为:不要使用GUI(cmd窗口外的另一个窗口)运行压力测试,GUI仅用于压力测试的创建和调试;执行压力测试请

2021-02-02 17:30:53 964

原创 postman批量测试

postman批量测试,直接展示有多少个异常首先给文件夹设置tests,从返回值中拿code,code==200为true点击文件夹的三角箭头开始批量发起请求选择要发起的请求,全部测试则不用管返回值200位true返回值不是200为flase,点击红色小方块可以看到哪些请求报错...

2020-06-11 19:56:03 485

原创 postman全局变量设置

测试插入数据时,需要传一个当前时间时,可以使用postman的全局变量设置给文件夹设置(设置之后,文件夹中的所有request都可以使用这个变量)选择Edit后页面如下,在里面设置全局变量上传表单时上传json时...

2020-06-11 19:39:26 1061

原创 RESTful简介

何为RESTfulRESTful架构是目前最流行的一种互联网软件架构是Roy Thomas Fielding在他2000年的博士论文中提出的是Representational State Transfer的缩写,翻译过来是”表现层状态转化”是所有Web应用都应该遵守的架构设计指导原则7个HTTP方法:GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS安全:线程安全.(多线程同时读不会有问题;多线程同时修改就容易出问题了)幂等性:同一个请求(路径/参数)无论请求多

2020-05-24 13:29:34 259

转载 spring的七种事务传播行为

一、什么是事务传播行为?某一个事务传播行为修饰的方法被嵌套进另一个方法的事务时如何传播。public void methodA(){ methodB(); //doSomething } @Transaction(Propagation=XXX) public void methodB(){ //doSomething }方法A嵌套调用方法B,方法B的事务...

2020-05-10 01:55:16 399

原创 mysql行列转换

记一个简单的行列转换有如下一张表:要转换为:sql语句为:select t.name,sum(case when t.`subject` = '语文' then t.score end) as '语文',sum(case when t.`subject` = '数学' then t.score end) as '数学' ,sum(CASE when t.`subj...

2020-04-24 15:44:21 201

原创 jjwt令牌(Java JSON Web Token)

JWTJSON Web Token(JWT)是一个非常轻巧的规范。这个规范允许我们使用JWT在用户和服务器之间传递安全可靠的信息。一个JWT实际上就是一个字符串,它由三部分组成,头部、载荷与签名。头部(Header)头部用于描述关于该JWT的最基本的信息,例如其类型以及签名所用的算法等。这也可以被表示成一个JSON对象。{"typ":"JWT","alg":"HS256"}在头部指明...

2020-04-16 23:11:27 5166

原创 sql优化

1.表连接数:连接的表越多,性能越差可能的话,将连接拆分成若干个过程逐一执行优先执行可显著减少数据量的连接,既降低了复杂度,也能够容易按照预期执行外连接没有内连接效果好,因为必须对左右表进行表扫描2.子查询效率低,尽量少用3.避免使用null列,null列使用索引没有意义4.模糊查询不要在首位加%,会导致无法使用索引,直接全表扫描5.order by子句不要使用非索引列或嵌套表...

2019-12-24 22:39:45 101

转载 redis

一、简述Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库(nosql),不过与传统数据库不同的是 redis 的数据是存在内存中的,所以存写速度非常快,因此 redis 被广泛应用于缓存方向。另外,redis 也经常用来做分布式锁。redis 提供了多种数据类型来支持不同的业 务场景。除此之外,redis 支持事务 、持久化、LUA脚本、LRU驱动事件、多种集群方案。...

2019-12-23 18:37:11 162

转载 事务隔离级别

一、什么是事务事务是逻辑上的一组操作,要么都执行,要么都不执行。事务最经典也经常被拿出来说例子就是转账了。假如小明要给小红转账1000元,这个转账会涉及到两个关键操作就是:将小明的余额减少1000元,将小红的余额增加1000元。万一在这两个操作之间突然出现错误比如银行系统崩溃,导致小明余额减少而小红的余额没有增加,这样就不对了。事务就是保证这两个关键操作要么都成功,要么都要失败。二、事务的特...

2019-12-23 12:40:47 104

转载 数据库索引

内容来源:https://github.com/Snailclimb/JavaGuide一、为什么要使用索引通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性可以大大加快数据的检索速度(大大减少检索的数据量),这也是创建索引的最主要原因帮助服务器避免排序和临时表将随机IO变为顺序的IO可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别的有意义二、为什么不对表中的...

2019-12-20 21:50:29 128

转载 java_计算机网络常见面试点

内容来源:https://github.com/Snailclimb/JavaGuide一、TCP与UDP协议的区别UDP:传送数据前不需要先建立连接,远地主机在收到 UDP 报文后,不需要给出任何确认。虽然 UDP 不提供可靠交付,但在某些情况下 UDP 确是一种最有效的工作方式(一般用于即时通信),比如: QQ 语音、 QQ 视频 、直播等等TCP:提供面向连接的服务。在传送数据...

2019-12-20 19:37:03 226

转载 java_集合框架

内容来源:https://github.com/Snailclimb/JavaGuide一、 Arraylist 与 LinkedList 异同1. 是否保证线程安全:ArrayList 和 LinkedList 都是不同步的,也就是不保证线程安全;2. 底层数据结构:Arraylist 底层使用的是Object数组;LinkedList 底层使用的是双向链表数据结构(JDK1.6之前...

2019-12-20 15:41:33 93

转载 java_基础知识

内容来源:https://github.com/Snailclimb/JavaGuide一、重载与重写的区别1、重载发生在同一个类中,方法名相同,参数类型不同、个数不同、顺序不同,方法返回值和访问修饰符可以不同,发生在编译时。2、重写@Override发生在父子类中,方法名、参数列表必须相同,返回值范围小于等于父类;抛出的异常范围小于等于父类,访问修饰符范围大于等于父类;如果父类方法访...

2019-12-20 15:11:26 142

转载 利用Docker创建镜像运行jar包

一、将所需要运行的jar包上传到服务器中。本教程jar包存放位置为/usr/springboot/lost_and_found-v1.jar二、创建Dockerfile文件Dockerfile文件是用来创建镜像文件的,也就是镜像的创建离不来Dockerfile,在与jar包同级的目录下创建Dockerfile文件。文件内容如下:# 基础镜像是docker仓库的java:8(也就是jdk8...

2019-12-15 03:04:03 589

原创 linux安装Kibana容器

Kibana 是一款开源的数据分析和可视化平台,它是 Elastic Stack 成员之一,设计用于和 Elasticsearch 协作。您可以使用 Kibana 对 Elasticsearch 索引中的数据进行搜索、查看、交互操作。您可以很方便的利用图表、表格及地图对数据进行多元化的分析和呈现。Kibana 可以使大数据通俗易懂。它很简单,基于浏览器的界面便于您快速创建和分享动态数据仪表板来追...

2019-12-12 03:22:40 454

原创 linux下安装Elasticsearch容器

安装Elasticsearch 容器docker镜像下载docker pull elasticsearch:5.6.8安装es容器docker run -di --name=elasticsearch -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" -p 9200:9200 -p 9300:9300 elasticsearch:5.6.89200端口(Web管...

2019-12-12 03:04:06 454

转载 linux下.swp文件

操作修改nginx.conf时断网了,恢复之后,使用notepad++的NPPFTP插件时,发现多了个nginx.conf.swp文件百度了一下,原因如下:在用vim打开一个文件时,其会产生一个cmd.swap文件,用于保存数据,当文件非正常关闭时,可用此文件来恢复,当正常关闭时,此文件会被删除,非正常关闭时,不会被删除,所以提示存在.swap文件。解决办法:恢复文件,然后删除swp文件...

2019-12-11 19:44:45 256

原创 linux系统lua安装

安装步骤curl -R -O http://www.lua.org/ftp/lua-5.3.5.tar.gztar zxf lua-5.3.5.tar.gzcd lua-5.3.5make linux test注意:此时安装,有可能会出现如下错误:此时需要安装lua相关依赖库的支持,执行如下命令即可:yum install libtermcap-devel ncurses-dev...

2019-12-11 17:05:03 180

原创 BCrypt简单使用

BCrypt一般用于密码加密,相对来说,BCrypt比MD5更安全。BCrypt 官网http://www.mindrot.org/projects/jBCrypt/将下面这个java类做为工具类放入项目中import java.io.UnsupportedEncodingException;import java.security.SecureRandom;public class ...

2019-12-10 14:00:51 1538

原创 spring boot常用注解

1.springBoot启动类@SpringBootApplication该注解标记的类为springBoot启动类该类中可以定义一个或多个Bean,并自动触发自动配置Bean和自动扫描组件,相当于@Configuration + @EnableAutoConfiguration + @ComponentScan@Bean在spring启动类中配置bean,使用时直接@Autowir...

2019-12-08 17:38:17 123

转载 分布式id

常见的id生成方式及优缺点1、uuid可以利用数据库也可以利用程序生成,一般来说全球唯一。优点:1)简单,代码方便。2)生成ID性能非常好,基本不会有性能问题。3)全球唯一,在遇见数据迁移,系统数据合并,或者数据库变更等情况下,可以从容应对。缺点:1)没有排序,无法保证趋势递增。2)UUID往往是使用字符串存储,查询的效率比较低。3)存储空间比较大,如果是海量数据库,就需要考虑...

2019-12-08 15:48:34 91

原创 分布式文件存储-FastDFS

整理知识点时翻出来的,想想还是发个博客好了,图片来源的博客找不到了,只能厚颜上个原创…FastDFS是一个开源的轻量级分布式文件系统功能:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使...

2019-12-05 17:02:09 230

原创 docker

一、安装docker(1)yum 包更新到最新sudo yum update(2)安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的 sudo yum install -y yum-utils device-mapper-persistent-data lvm2(3)设置yum源为阿里云 sudo yu...

2019-11-29 20:51:17 86

原创 linux系统发布项目和停止项目

发布项目将jar包放到tomcat的webapps文件夹下后台发布项目nohup java -jar mywd-admin.jar &nohup表示永久运行。&表示后台运行结束项目查询pidps -ef | grep java结束kill -s 9 16829...

2019-11-22 10:32:36 556

转载 CentOS7.5 安装MySql

1.先检查系统是否装有mysqlrpm -qa | grep mysql2.下载mysql的repo源wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm如果报错: -bash: wget: 未找到命令安装插件yum -y install wget3.安装 mysql-community-rele...

2019-11-21 16:02:09 139

原创 linux安装及配置tomcat

1.进入要存放安装包的文件夹,执行以下命令,下载 Tomcat 源码包,您可根据实际需求下载不同版本 Tomcat。说明: 本文使用 Apache 官网提供下载网址,您可前往 [Apache 官网](https://tomcat.apache.org/) 获取更多安装信息。wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat...

2019-11-21 15:43:39 133

原创 linux使用rpm时报错Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY

linux使用rpm安装时报错warning: python-urlgrabber-3.9.1-11.el6.noarch.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY解决办法cd /etc/pki/rpm-gpg/ wget http://mirrors.163.com/centos/RPM-GPG-KEY-Cent...

2019-11-20 16:45:34 1424

原创 linux安装及配置java

yum一键安装1.首先执行以下命令查看可安装的jdk版本:yum -y list java*2.选择需要的jdk版本进行安装 yum install -y java-1.8.0-openjdk-devel.x86_64等待安装完成3.查看安装的jdk版本java -version安装的jsk路径为 /usr/lib/jvmcd /usr/lib/jvmll4.配...

2019-11-20 15:10:06 104

原创 linux下tomcat9中shutdown无效问题

linux系统中,安装了tomcat9使用shutdown后,tomcat还在继续运行使用两次 ps -ef | grep tomcat 命令使用kill -9 28977 命令杀掉重复的

2019-11-19 11:51:45 467

转载 SpringBoot参数校验

即使在前端对数据进行校验的情况下,我们还是要对传入后端的数据再进行一遍校验,避免用户绕过浏览器直接通过一些 HTTP 工具直接向后端请求一些违法数据。一、环境搭建1、依赖<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <ma...

2019-11-15 16:23:36 425

原创 多表查询_未参加考试的学生_学生成绩档_case when then else end

sql表班级表class学生表student成绩表scores1:查询没有参加考试(没有成绩表)的学生SELECT s.sid,s.sname,s.sex,c.cname,sc.languages,sc.math FROM student as s LEFT JOIN class as c on s.cid = c.cid LEFT JOIN scores as sc o...

2019-11-11 16:56:13 7153 1

转载 (分组排序、获取多个分组中的第一条数据)ROW_NUMBER() OVER()函数用法详解

点击跳转原博客语法格式:row_number() over(partition by 分组列 order by 排序列 desc)row_number() over()分组排序功能:在使用 row_number() over()函数时候,over()里头的分组以及排序的执行晚于 where 、group by、order by 的执行。例一:表数据:create table TEST_R...

2019-10-25 16:55:38 3230

原创 org.springframework.beans.factory.UnsatisfiedDependencyException

公司新项目要使用springboot整合mybatis,使用xml文件的方式.配置的时候报错Caused by: org.xml.sax.SAXParseException: 不允许有匹配 “[xX][mM][lL]” 的处理指令目标。找了一圈,最后发现是因为*Mapper.xml文件第一行空出来了,把首行空格去掉就好了org.springframework.beans.factory.Un...

2019-09-02 22:56:40 272

转载 java.lang.IllegalArgumentException: An invalid domain [.xxx.com] was specified for this cookie

java.lang.IllegalArgumentException: An invalid domain [.xxx.com] was specified for this cookie at org.apache.tomcat.util.http.Rfc6265CookieProcessor.validateDomain(Rfc6265CookieProcessor.java:...

2019-08-26 23:10:03 3116

原创 三次握手和四次挥手

三次握手:第一次握手:客户端向服务端发送消息请求建立连接("哥们,聊聊"SYN=1)第二次握手:服务端接收到客户端发出的消息(证明客户端发消息功能正常),服务端向客户端发出消息("知道了"ACK,"现在聊吗"SYN)第三次握手:客户端接收到服务器返回的消息(证明服务端接收消息和发送消息的功能正常),客户端再次发出消息("现在聊"ACK),服务端接收到消息(证明客户端接收消息功能正常),连...

2019-08-24 16:37:00 98

原创 冒泡排序/快速排序/二分(折半)查找法

冒泡排序public void bubbleSort() { Integer[] arr = {3, 1, 2, 8, 5, 7}; Integer temp = 0; //最后一次元素交换时较小数的索引 Integer lastExchange = 0; //遍历长度 Integer sortLen...

2019-08-18 18:09:52 272

原创 git下载、设置及如何在idea中推送到gitHub

一、安装git1:git下载地址:https://git-scm.com/download2:tortoisegit下载地址:https://tortoisegit.org/download/3:安装git和TortoiseGit除了下面这条外,其他全部默认即可配置开发者姓名及邮箱,每次提交代码时都会把此信息包含到提交的信息中。简体中文语言包安装后,在设置中将语言设置为中文...

2019-08-17 18:41:12 275

空空如也

空空如也

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

TA关注的人

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