自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java Bean之Lombok踩坑

JavaBean之Lombok踩坑

2022-11-21 17:39:21 439 1

原创 NativeListener has been compiled by a more recent version of the Java Runtime

Springboot项目启动报错NativeListener

2022-10-18 14:02:14 1061

原创 双活数据中心架构优缺点分析

双活数据男女环境架构分析

2022-10-11 20:31:33 878

原创 lvs与nginx区别

lvs与nginx各自实现负载均衡的优势与区别

2022-09-29 16:53:16 2173

原创 负载均衡的常见实现方式

负载均衡的几种实现方式

2022-09-26 02:47:48 2322

原创 SpringBoot:No supported DataSource type found

SpringBoot配置多数据源报错

2022-09-20 22:48:07 516

原创 K8s技术栈详解

K8s技术栈详解

2022-09-19 22:17:43 580

原创 Springboot如何整合Kafka

如何在Springboot中整合Kafka

2022-09-15 14:15:15 1980

原创 深入理解su与sudo命令以及他们的区别

在Linux等其他系统中,我们在终端中经常会使用su命令与sudo命令,本片文章介绍了su与sudo命令的使用方式以及他们的区别等。

2022-09-07 22:00:32 1129

原创 Docker基础知识

Docker入门知识了解

2022-09-06 22:20:42 160

原创 Linux解决nohop日志文件过大导致磁盘占满

Linux使用 nohup命令启动程序后,会打印大量的日志,很快运维同事收到磁盘已满的报警短信通知。1、解决方案只记录异常日志nohup python -u Job.py >/dev/null 2>error.log 2>&1 &不记录任何日志nohup python -u Job.py >/dev/null 2>&1 &2、简述1)/dev/null 属于字符特殊文件,属于空设备,它是一个特殊的设备文件,会丢弃所有

2021-08-23 10:49:27 814

转载 Linux下如何不停止服务,清空nohup.out文件

1.nohup.out的由来及作用用途:LINUX命令用法,不挂断地运行命令。语法:nohup Command [ Arg … ] [ & ]描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。例子: nohup ./startWeblogic.sh & 意思是即使退出s

2021-07-28 15:55:41 480

原创 idea中debug时查看变量的Variables突然不见了

今天在用Debug是突然发现Variables栏不知道按了什么突然不见了那么我们如何把它调回显示呢,就需要点击右上角的Layout设置框了把变量框重新勾选中就可以显示啦

2021-07-22 14:34:38 4223 1

原创 为什么数据库不建议用外键约束

为什么数据库不建议用外键约束其实这个话题是老生常谈,很多人在工作中确实也不会使用外键。包括在阿里的JAVA规范中也有下面这一条:【强制】不得使用外键与级联,一切外键概念必须在应用层解决。但是呢,询问他们原因,大多是这么回答的:每次做DELETE 或者UPDATE都必须考虑外键约束,会导致开发的时候很痛苦,测试数据极为不方便。坦白说,这么说也是对的。但是呢,不够全面,所以开一文来详细说明。正文首先我们明确一点,外键约束是一种约束,这个约束的存在,会保证表间数据的关系“始终完整”。因此,外

2021-06-11 02:37:12 808

原创 SQLPlus能连上Oracle,但是其他应用程序(DBever,navicat等)不能连上的解决办法

SQLPlus能连上Oracle但是其他应用程序不能连上的解决办法记一次改变oracle配置时出的问题应用端程序无法登录之前在公司一直连的公司本地或者远程的数据库,由于个人的一些原因需要远程支持当前的工作,所以要在本地搭了一个和公司本地一样的数据库进行开发测试,用SQLPlus能够进入到本地数据库,但是用DBever,navicat尝试连接本地oracle数据库都没有成功,所以来记录一下解决的措施排查之路首先先排除是否是DBever软件本身的问题,连接了一下公司的数据库,发现可以正常使用,

2021-04-28 15:23:13 2966 1

原创 详解List的toArray()方法和toArray(T[] a)方法

这两个方法都是将列表List中的元素转导出为数组,不同的是,toArray()方法导出的是Object类型数组,而toArray[T[] a]方法导出的是指定类型的数组。下面是两个方法的申明及说明,摘自Java8的API文档。toArray()方法的分析Object[] toArray()Returns an array containing all of the elements in this list in proper sequence (from first to last elem

2021-04-21 16:18:49 4687

原创 oracle排序时把null放在最后(或最前面)

ORACLE默认空值是最大的值若想把 null 排在最后可将SQL语句改为...order by ”排序字段" desc nulls last 语法nulls first :将null排在最前面。null last :将null排在最后面。

2021-04-21 13:54:00 5515

原创 安装vue基本环境

node的安装1、https://nodejs.org/en/ 下载&安装node环境【中文版:https://nodejs.org/zh-cn/】2、安装cnpm 代替npm (由于npm比较慢) 这里使用的是淘宝的源使用淘宝源,cmd中输入npm install -g cnpm --registry=https://registry.npm.taobao.org3、验证cnpm 是否成功成功将会显示以下信息 [email protected] (/usr/local/node/lib/n

2021-04-14 14:19:53 100

原创 Linux命令之cat、tac、tail、head命令的使用

一、cat命令对文件内容正序查看时,可以使用cat命令。还可以两多个文件输出到一个文件中。也可以新建一个文件。下面就介绍一下cat命令的用法。cat filename 正序查看文件所有内容cat -n filename 带行号正序查看文件所有内容cat -b filename 忽略空白行,带行号正序显示文件所有内容cat > filename 新建一个文件cat filename1 filename2 > filename3 将filename1 filename2合并为file

2021-04-07 17:20:34 684

原创 oracle常用hint总结

在SQL语句优化过程中,我们经常会用到hint,现总结一下在SQL优化过程中常见Oracle HINT的用法:1. /+ALL_ROWS/表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化.例如:SELECT /+ALL+_ROWS/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO=‘SCOTT’;2. /+FIRST_ROWS/表明对语句块选择基于开销的优化方法,并获得最佳响应时间,使资源消耗最小化.例如:SELECT

2021-03-26 18:15:05 841

原创 maven打包时未识别到lib下的jar包

方式1:dependency 本地jar包 <dependency> <groupId>com.hope.cloud</groupId> <!--自定义--> <artifactId>cloud</artifactId> <!--自定义--> <version>1.0</version> <!--自定义-->

2021-03-26 14:26:03 1374

原创 springboot如何解决添加拦截器后出现的跨域问题

解决原理:一个http请求,先走filter,到达servlet后才进行拦截器的处理,所以我们可以把cors放在filter里,就可以优先于权限拦截器执行。所以在过滤器里添加如下代码即可解决 @Bean public CorsFilter corsFilter() { CorsConfiguration config = new CorsConfiguration(); config.addAllowedOrigin("*"); confi

2021-03-25 16:24:40 735

转载 Springboot项目添加拦截器解决HttpServletRequest的输入流只能读取一次的问题

背景通常对安全性有要求的接口都会对请求参数做一些签名验证,而我们一般会把验签的逻辑统一放到过滤器或拦截器里,这样就不用每个接口都去重复编写验签的逻辑。在一个项目中会有很多的接口,而不同的接口可能接收不同类型的数据,例如表单数据和json数据,表单数据还好说,调用request的getParameterMap就能全部取出来。而json数据就有些麻烦了,因为json数据放在body中,我们需要通过request的输入流去读取。但问题在于request的输入流只能读取一次不能重复读取,所以我们在过滤器或拦截

2021-03-24 20:25:27 1031

原创 Oracle数据库索引的类型及其适用场景

索引类型的选择,索引列的选择,表之间的联结类型对于实现最优性能有着很高的重要性。从算法维度上看,索引可以广义分为:B-树索引(oracle索引所使用的结构)、位图索引、索引组织表。B-树索引:实现类似于倒置的树形结构,包括根节点,分支节点,叶子节点,并且使用树遍历算法来搜索列值。叶子节点中包含一对值(索引值,行编号rowid),索引值对应索引键列,行编号则表示行在表中数据块中内存地址;分支节点包含叶子几点目录及存储在其中叶子节点的值范围;根节点包含分支节点目录以及这些分支节点所包含的值范围。

2021-03-20 01:33:09 552

原创 Oracle数据库如何查看表中索引

1、查看表中有哪些索引select * from user_indexes where table_name = '表名'或者select * from all_indexes where table_name = '表名'2、查看表中索引对应哪些列select * from user_ind_columns where table_name='表名'

2021-03-20 01:20:27 12222

转载 原子操作类AtomicInteger详解

为什么需要AtomicInteger原子操作类?对于Java中的运算操作,例如自增或自减,若没有进行额外的同步操作,在多线程环境下就是线程不安全的。num++解析为num=num+1,明显,这个操作不具备原子性,多线程并发共享这个变量时必然会出现问题。测试代码如下:public class AtomicIntegerTest { private static final int THREADS_CONUT = 20; public static int count = 0;..

2021-03-09 15:56:37 138

原创 Postman调接口时获取Chrome浏览器Cookie数据携带发送

前言在前后端分离开发时,做为后端开发人员,要求独立开发完成某个接口后,开发人员自己需要先测试通过后再提交给测试人员进行测试,否则会出现到测试人员哪里业务流程根本就走不通,或者BUG会过多的情况等。Postman就是一款完善的接口测试工具,它能够高效的帮助后端开发人员独立进行接口测试。Postman具体的使用方式可以详细阅读:强大的接口调试工具-Postman图文详解但是在部分任务场景,部分api 必须设置cookie登录后才能访问调用接口时,如何才可以免登陆,自动同步浏览器上的登陆信息呢?场景:

2021-03-05 14:30:32 3931

原创 SpringDataJPA之Repository

Repository 接口是 Spring Data JPA 中为我我们提供的所有接口中的顶层接口,而且是个标志接口,Repository 提供了两种查询方式的支持1)基于方法名称命名规则查询2)基于@Query 注解查询Repository一、基于方法名称命名规则查询1.方法名称命名规则查询规则:findBy(关键字)+属性名称(属性名称的首字母大写)+查询条件(首字母大写)关键字方法名sql where 子句AndfindByNameAndPwdwhere nam

2021-02-25 16:18:09 256

原创 java.util.NoSuchElementException: No value present

报错代码如下错误JPA在调用findById并get时,如果没有查到数据,就会报这个错误。因此不能在get后判断是否为空,要在其之前调用一个.isPresent()方法判断是否有数据。修改后代码如下:

2021-02-23 18:05:10 217 1

原创 内网中服务器之间如何进行文件传输

前提无法联网下载插件,只有SSH连接和xsell工具。第一种办法:scp命令scp就是secure copy,一个在linux下用来进行远程拷贝文件的命令。有时我们需要获得远程服务器上的某个文件,该服务器既没有配置ftp服务器,也没有做共享,无法通过常规途径获得文件时,只需要通过简单的scp命令便可达到目的。1.将本机文件复制到远程服务器上#scp /home/administrator/news.txt [email protected]:/etc/squid/home/administrat

2021-02-05 15:35:56 3684 1

转载 服务器之间传输数据是如何通信的

服务器之间的通信通常我们交互除了P2P等协议,大多数都是基于C/S架构的通信场景,比如FTP, HTTP, DNS等。但是再射一一些安全协议方案的时候通常包括多方服务器和用户。此时应该如何通信那?比如传递命令和传输密钥。(1)Socket一般情况下比如我们设计一个后端服务,包括多个服务器:数据库服务器,web服务器,文件服务器、缓存服务器等的通信,一般是通过socket来设计专门的通信协议,因为比较高效。比如MySQL,MS SQL等也都是有知名的专用端口号。这个场景大多是在一个内网中,所以通信效率一

2021-02-05 15:30:34 6433

转载 IE浏览器下载中文文件,文件名乱码或变成下划线问题

在web开发工作当中,浏览器兼容性问题总是会引来一大波前端攻城狮们的疯狂吐槽,尤其是IE浏览器更是一个神一般的存在,总是让人头疼不已。前段时间用java在做一个文件上传下载功能时,发现部分IE浏览器上下载中文文件名文件时会出现文件名乱码的现象。经过查看之前调用的两个文件下载工具类源代码发现其中一个工具类原来代码是直接使用ISO8859-1编码对文件名进行编码,而另一个工具类则多了一层筛选,通过对浏览器请求头中的User-Agent参数中是否存在MISE关键字对进行了判断,当用户使用浏览器是IE时使用URL

2021-01-25 14:17:25 2206

原创 IE浏览器请求url报400,错误:The valid characters are defined in RFC 7230 and RFC 3986

Tomcat:URL包含特殊字符报错问题问题:在chrome浏览器中可以正常请求url,但是在ie浏览器中报400错误原因:url中包含中文字符。chorme请求的时候会自动编码,而IE下则不会。解决:​根据RFC规范,URL中是不允许有 |,{,}等特殊字符,但是在实际的生产环境中,还是有一些URL会携带这些特殊字符,诸如:[]、| 等字符。​ 在Tomcat7相对较新的版本中,诸如:7.0.96。以及Tomcat8之后的版本,对URL字符中特殊字符的检查变得更加严格,在URL中如果出现这

2021-01-22 14:18:58 1030

原创 Oracle ID实现自增长

ORACLE数据库的自增长与MySQL稍有不同,在ORACLE中我们可以通过创建序列和触发器实现id的自增长1.创建序列 CREATE SEQUENCE RECORDINFO_ID_SEQUENCE INCREMENT BY 1 START WITH 1; --或者详细 CREATE SEQUENCE RECORDINFO_ID_SEQUENCE increment by 1 -- 每次递增1 start with 1

2021-01-21 15:38:37 283

原创 Postman发送带cookie的http请求

1.Postman是chrome上一个非常好用的http客户端插件,可惜由于chrome安全的限制,发不出带cookie的请求。如果想要发送带cookie的请求,需要开启Interceptor:2.点击这里可以直接在postman中下载 Postman Interceptor 扩展程序。开启Capture Cookies就可以发送带cookie的http请求了。3.发送cookie时,在header中添加key-value,key固定为Cookie,value是cookie具体的k=v,例如: 需要

2021-01-20 14:58:33 971

原创 关掉指定端口进程

2021-01-19 18:26:27 135

原创 如何通过request对象获取用户IP地址

获取客户端的IP地址的方法是:request.getRemoteAddr() ,这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。正向代理是客户端(google.com),反向代理是服务器(baidu.com)。如果使用了反向代理软件,将http://192.168.1.110:2046/ 的URL反向代理为http://www.xxx.com/ 的URL时,用request.getRemoteAddr() 方法获取的IP地址是:12

2021-01-19 18:14:12 7592

原创 Redis 笔记总结

1. Redis 简介Redis 是完全开源免费的,遵守 BSD 协议,是一个高性能的 key - value 数据库Redis 与 其他 key - value 缓存产品有以下三个特点:Redis 支持数据持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。Redis 不仅仅支持简单的 key - value 类型的数据,同时还提供 list,set,zset,hash 等数据结构的存储Redis 支持数据的备份,即 master - slave 模式的数据备份2. R

2021-01-15 14:42:21 84

原创 java.math.BigDecimal cannot be cast to java.lang.Integer

问题描述:利用sql语句从数据库里面取出数据后,对取出的数据进行数据转换时,出现了java.math.BigDecimal cannot be cast to java.lang.Integer错误,原因是BigDecimal不能直接转换为Integer类型解决方法:先将取出的数据转换为BigDecimal类型,再将该类型转换为Integer类型,参考代码如下所示:BigDecimal bigDecimal= (BigDecimal)objects[0];Integer id=Integer.pa

2020-12-24 10:39:03 801

原创 oracle数据库:指定字符在字符串中第n次出现的位置

instr(字段 , 指定字符串 , start(从原字段第几个开始数) , n(需要第几个出现的位置))SELECT INSTR(‘上海市海洋管理海事分部’, ‘海’,1,2) FROM dual

2020-12-17 18:07:53 3863

空空如也

空空如也

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

TA关注的人

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