自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 问答 (1)
  • 收藏
  • 关注

原创 springboot 请求https的私有证书验证

我这里采用RestTemplate的方式调用https请求,请求第三方接口获取数据,证书由第三方私自签发的证书,我们构建的是一个springboot的API项目。这样构建好的RestTemplate,我们在Controller或者Service就可以通过@Autowried注解引入。构建RestTemplateConfig为了初始化RestTemplate让它具备验证证书功能。

2023-09-07 10:08:07 1312

原创 Spring Security的账号密码登录+Azure AD的授权登录集成Demo

自己实现AuthenticationProvider接口,这样可以根据自己传入的不同TAuthenticationToken去执行自己定义Provider,可以更加灵活自主的实现登录业务逻辑。

2023-05-31 10:07:25 1921 2

原创 Spring Security Ldap 登录认证流程的源码梳理

Spring Security Ldap的登录认证流程源码分析

2023-04-25 11:24:15 1679

原创 Spring Security Ldap 登录认证实现

springboot + security + ldap 实现登录认证逻辑

2023-04-24 13:37:55 1804 1

原创 CentOS7.X 安装 Open LDAP

OpenLDAP的在CentOS7的安装。

2023-03-22 17:34:37 563 1

原创 解决使用jaxb读取xml文件报javax.xml.bind.UnmarshalException: 意外的元素 的错误问题。

解决jaxb读取xml文件报错:javax.xml.bind.UnmarshalException: 意外的元素 (uri:"urn:swift:xsd:envelope", local:"Envelope")。所需元素为的问题。

2023-01-05 14:34:59 7417

原创 Netty源码学习之ByteToMessageDecoder的浅谈分析

一、简介ByteToMessageDecoder类浅谈Netty的源码学习之ByteToMessageDecoder,这个解码器是Netty诸多解码的父类解码器,下图就是ByteToMessageDecoder类的子类和父类以及实现的接口类关系。通过上面两张图片我们可以清晰看到有诸多子类是实现了ByteToMessageDecoder类的。下面我们说说ByteToMessageDecoder的主要功能,它主要就是实现入站操作,它是一个不能共享的解码器,因为需要存还没有解码完的数据,还有各

2020-07-20 17:00:19 897

原创 项目遇到的多线程的并发问题和分析

这里先简单描述一下问题,场景:在一个线程中创建了另外一个线程处理一部分业务,主线程对数据库进行新增操作,在操作结束后,启动一个新的线程去执行查询插入的数据的查询操作,发现了数据没有查询的问题。下面我们我们直接上代码:@Service@Transactional@Slf4jpublic class RPatientService extends BaseService<...

2020-01-11 16:12:57 829

转载 JDK1.5的@Retention注解的使用和分析

注解@Retention可以用来修饰注解,是注解的注解,称为元注解。Retention注解是RetentionPolicy类型的,是一个标准的枚举类型.这个枚举决定了Retention注解应该如何去保持,也可理解为Rentention 搭配 RententionPolicy使用。RetentionPolicy有3个值:CLASS RUNTIME SOURCE。按生命周期来划分可分为3类:1...

2020-01-09 11:43:55 547

原创 MyEclipse安装activiti-designer-5.18.0.zip

需要下载安装:activiti-designer-5.18.0.zip1.下载地址:http://www.activiti.org2.将下载的activiti-designer-5.18.0.zip 解压安装在MyEclipse的安装目录的dropins目录下创建一个目录,名字随意。3.在activiti目录下,再创建一个 “activiti.link”文件,在...

2020-01-06 14:17:28 802 1

原创 Mybatis的源码学习之Executor

1.概述Executor接口是Mybatis的执行器,是Mybatis的调度中心,是SQL语句的生成和查询缓存的维护。Executor是通过Configuration的newExecutor函数来生成的。2.Executor结构下面介绍一下Executor接口的实现类以及实现类的继承类之间关系。从上面的Executor的结构图,我们得到了Executor接口有两个实现类分别为:...

2019-11-08 11:41:15 193

原创 Centos7安装Kafka

这里我们需要安装一个kafkaMQ队列,用于消息系统。在安装Kafka之前我们需要做一些准备工作,kafka是依赖于zookeeper分布式锁,所以我们需要在Centos系统中先安装zookeeper,但是zookeeper需要jdk环境,所以我们同样需要安装JDK。这里安装zookeeper就不在细说了,不会的可以看我的:https://blog.csdn.net/gelong_b...

2019-06-03 11:24:37 7633

原创 使用dockerfile创建一个包含jdk和tomcat的镜像

这里就不在赘述docker的一些基础应用了直接上步骤:1.第一步需要在宿主机上创建一个文件夹(/opt/centos的文件目录)2.将tomcat和jdk上传到宿主机上。(如图)注:上面都是准备工作,这里就不一一详细赘述了。3.在当前文件夹下面创建一个dockerfile文件,文件内容如下.#镜像FROM centos#创建者MAINTAINER gl.com...

2019-05-30 14:03:07 1852

原创 使用Xshell实现SSH隧道穿透

最近公司开发项目遇到了一个非常蛋疼的事情!我们公司同时迁入了电信、移动、联通三家的百兆光纤网络,这样就产生一个蛋疼事情。A所使用的网络是电信网络,他是开发的了微信功能的服务的接口项目,给B和C提供所有微信的功能,所有调取微信能力都需要A来实现完成。B所使用的 网络是移动网络,他开发了一个公众号的项目程序,他需要调用A来完成所有微信的能力,但是他和A不在一个局域网,这样他完全没有办法去调用A...

2019-05-28 14:13:37 8156 2

原创 vsftpd服务器的安装和配置

安装FTP服务器vsftpd(very secure ftp daemon,非常安全的FTP守护进程)是一款运行在Linux操作系统上的FTP服务程序,不仅完全开源而且免费,此外,还具有很高的安全性、传输速度,以及支持虚拟用户验证等其他FTP服务程序不具备的特点,下面开始搭建:必须使用root用户进入系统。 使用命令:rpm –qa | grep vsftpd,查看当前系统是否安装了ftp...

2019-04-26 11:06:19 1856 2

原创 zookeeper使用curator框架调用实例

zookeeper的原理分析参考链接:https://blog.csdn.net/gelong_bokewang/article/details/89208234zookeeper的安装步骤参考链接:https://blog.csdn.net/gelong_bokewang/article/details/89157375本文是使用CUrator框架来调用zookeeper客户端,因为zo...

2019-04-12 11:49:49 510

原创 Zookeeper分布式锁的原理

Zookeeper分布式锁的原理问:在什么样的场景下我们需要使用Zookeeper分布式锁呢? 在分布式的项目中,指定的项目我们需要使用到锁的机制,但是在分布式下我们使用的内存锁都是相对独立的,因为每一个项目都有一个自己的JVM,而我们使用java类的锁都是受JVM控制的,这样在两台真实服务器上调用同一把锁的时候是没有办法进行锁操作,这个是我们就需要用到Zookeeper分布式锁了。...

2019-04-11 13:36:54 820

原创 单机上安装分布式的zookeeper

一、安装环境安装Zookeeper需要的环境是jdk1.7或者以上的版本。系统linux和Windows皆可,这里讲解的是在linux系统下安装。二、安装Zookeeper1.下载并安装安装Zookeeper的文件包,在linux下安装需要zookeeper-3.4.14.tar.gz链接地址:http://www.apache.org/dyn/closer.cgi/z...

2019-04-10 11:01:22 1879 2

原创 JAVA实现AES对称加密算法-------加密和解密

package com.gl.test;import javax.crypto.*;import javax.crypto.spec.SecretKeySpec;import java.io.UnsupportedEncodingException;import java.security.InvalidKeyException;import java.security.NoSuch...

2019-03-14 14:26:21 992

原创 Hex编码

Hex编码的编码原理:* Hex编码的原理就是将原来8位的二进制字节打断,分成两个4位的,并且在前面加上4个零,* 进行补位这样一个8位二进制字节就变成了2个8位的二进制字节,在将新得到的2个二进制字符进行16位进制转换* 得到的新的16位字符串就是Hex的值,所以 二进制的[72, 69, 88] 《hex》 484558是相等的。* [72, 69, 88]byte数组的二进制=‭...

2019-03-13 11:01:42 15717

原创 复习Base64编码集的收获

最近因为工作需要对一些文件上传需要进行base64编码操作,于是就自己温习了一下base64编码集的原理,感觉收获良多,在这里和大家分享一下!因为我们都是在互联网上数据的传输最终都会以二进制的方式传输,文件上传的I/O流也不例外,最终都是二进制数组的方式传输,但是二进制保存到数据库中却是不太现实的,因为它是在太长了。例子:我们将一个本地文件同I/O读取出来,并且转换成byte组,...

2019-03-12 14:46:06 203

原创 用java的IO实现网络文件下载到本地路径

最近工作因为需求要做一个小功能,根据客户给的的网路路径进行文件的下载。下面不多说直接上代码:package com.gl;import java.io.*;import java.net.HttpURLConnection;import java.net.URL;public class testIo { /** * 从网络Url中下载文件 * ...

2019-03-08 17:41:24 1803

原创 Docker拉取Oracle的11g版本数据库

1.查询现有镜像命令:docker search oracle2.拉取oracle镜像的命令:docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g注:这可能时间比较长,根据个人网速而定,不好可能几个小时。3.查看拉取的镜像的命令:docker images 4.运行oracle容器镜像...

2019-02-21 16:47:44 1949

原创 使用Docker拉取tomcat镜像和mysql镜像部署实施

拉取tomcat镜像查询现有镜像命令:docker search tomcat注:name表示名称Description:介绍Stars:关注度Official:是不是官方的Automatexd:是不是私有创建的拉取tomcat8.5版本的镜像命令:docker pull tomcat:8.5注:可以使用:x.x的方式选择拉取容器的版本。...

2019-02-20 17:27:15 13133 6

原创 CentoS下安装Docker

介绍:Docker是一个开源的应用引擎,在linux系统进行拉取容器相比于我们传统使用yum或者rpm的方式安装容器都要方便很多,因为原始的yum和rpm方式安装需要解决大量依赖关系,非常复杂和繁琐,但是Docker让开发者可以打包他们的应用以及依赖包到一个可以移植的容器中,进行移植。安装Docker:注:安装Docker在CentoS系统中,需要保证系统的内核要求高于3.10的...

2019-02-20 10:02:47 245

原创 CentOS的开机启动服务的原理

Linux系统在开机启动时,会自动执行/etc/rc.d目录下的初始化程序。所以我们可以把启动任务放到该目录下,而且rc.local是在完成其他所有初始化之后执行的,所以我们在这里做手脚是很合适的。下面的图片就是rc.local的内容:在这里添加程序的开机启动的方式就是:程序名称 程序路径这是一种方式,但是这里不推荐这种方式来配置开机启动服务。Linux系统中/etc...

2018-07-20 15:43:13 1253

原创 CentOS安装Http2.0测试

我测试在Centos6.9的操作系统完成HTTP2.0的安装1查看我们现在系统下的openssl版本       Openssl version2.升级我们openssl为1.0.2版本以上:       a)https://www.openssl.org/source/ 官网可以下载。b)通过ftp上传到电脑上,通过tar解压:tar –zxvf openssl-1.0....

2018-07-18 15:58:35 2086

原创 关于select标签多选功能的select-2样式的清空选中项

今天说的就是select标签的多选功能的 使用,使用select2组件完成多选。下面是我们需要引入的文件JQuery最好大于等9,要不会有一些特效无法使用&lt;link rel="stylesheet" type="text/css" href="select2.min.css"&gt; &lt;script type="text/javascript" src="jquery-11.3.m

2018-06-12 10:35:54 3685 1

原创 配置Nginx负载均衡器

需要一台负载均衡服务器Nginx,两台Tomcat真实服务器Nginx服务器IP 192.168.45.120Tomcat服务器IP:192.168.45.121Tomat服务器IP:192.168.45.122查看nginx的使用命令:/usr/local/nginx/sbin/nginx -h截图:修改配置文件配置nginx服务器配置文件目录:/usr/local/nginx/conf/ngi...

2018-05-25 15:47:56 634

原创 CentOS_6安装Nginx(tengine)

tengine的下载链接:http://tengine.taobao.org/download_cn.html       点击打开链接tengine的使用文档链接:http://tengine.taobao.org/nginx_docs/cn/docs/     点击打开链接我下载的是Tengine-2.2.2.tar.gz,安装Tengine步骤:第一步:解压tengine-2.2.2.tar...

2018-05-25 15:28:10 374

原创 CentOS6.8配置Tomcat使用Https协议

这里我们需要安装jdk与tomcat。系统是CentOS6.8_64位JDK是jdk1.7tomcat是apache-tomcat-7第一步:我们切换到jdk的bin目录下运行keytool生成证书和一对秘钥./keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore "生成文件路径/文件名称" (例如:/home/Tomcat/tom...

2018-05-24 17:29:05 1015

原创 浅谈数字证书原理

数字证书的作用:数字证书就是为了证明服务端的公钥没有被篡改。数字证书的由来:数字证书是由第三方公认机构颁发的,因为颁发机构是世界公认,而且这些第三方的公认机构的根证书,往往都是在浏览器、JDK等中就有的。服务端给公认机构提交自己的申请者的信息,网站的域名,以及自己的公钥等信息,公认机构用Hash算计对这些信息计算得到摘要信息,在对摘要信息和所有信息用公认机构的私钥加密得到的就是数字证书。数字证书如...

2018-05-24 15:03:35 1053

原创 浅谈什么是“数字签名”

我们在Https或者对称加密、非对称加密中常常老会听到“签名”这个词。今天我们就谈谈什么是“签名”。这里要说一下签名既不是对称加密也不是非对称加密。签名就是一种防止信息被篡改的验证方式。签名的应用环境:A要给B写一封信,A把信写好后,通过邮递的方式把信由低到了B的手里,这是B怎么能确认这封信没有被人修改过呢?但是要加上了签名就能确认。签名的原理:签名就是对A的信的内容进行hash计算(这里的has...

2018-05-22 15:54:26 6061

原创 浅谈对称加密与非对称加密

对称加密:假如有Client与Server之间要进行通讯,他们都各有一份A秘钥,Client用A秘钥加密传输信息。Server收到信息用A秘钥解密信息。之后Server对返回数据在用A秘钥加密,Client收到数据使用A秘钥解密。这样的一个通信过程就是对称加密的过程。缺点:对称加密的缺点就在于如果A秘钥要是泄露,这样Client与Server之间的信息传递就不安全了。截图:非对称加密:假如有Cli...

2018-05-22 10:19:23 1876 1

原创 Mybatis数据源和连接池的学习总结

一、数据源DataSource的分类Mybatis的数据实现都在datasource这个包内:即:Mybatis把数据源分为了三类:    JNDI:使用JNDI实现数据源(这里不介绍这种)    UNPOOLED:不使用连接池的数据源()    POOLED:使用连接池的数据源    注:我着重学习的是POOLED和UNPOOLED的两种类型即:Mybatis内部分别定义实现了java.sql....

2018-05-21 13:20:26 886 1

原创 CentOS7 离线安装mysql8数据库

第一步:这里我们需要根据我们的操作系统版本下载数据库:CentOS_6下载:mysql-5.7.22-1.el6.x86_64.rpm-bundle.tarCentOS_7下载:mysql-5.7.17-1.el7.x86_64.rpm-bundle.tar下载地址:https://dev.mysql.com/downloads/mysql/截图:第二步:将下载文件解压,通过ftp上传到服务器下。...

2018-05-18 11:02:26 6692 1

原创 浅谈Https的工作原理以及制作SSl数字证书

1、 安装mod_ssl与opensslyum installmod_ssl openssl1)、OpenSSL整个软件包大概可以分成三个主要的功能部分:SSL协议库、应用程序以及密码算法库。2)、一种以openssl的工具箱为基础 专门为apachewebserver 提供密码保护,ssl(安全套阶层)和tls(传输套件层安全)的 协议。2、制作私钥、CRS、自我签署的金钥 1)、...

2018-05-10 15:24:16 508

原创 FreeMarker的一些常用属性

情景模式为编辑时候判断单位属性是否存在,存在加载时候首选健在存在值,不存在时候正常加载list                                                                          ${lundCard.dw3}                                  

2018-03-06 14:19:32 2595

原创 安装zabbix

安装zabbix-server(我这将zabbix-server和zabbix-server-mysql以及zabbix-server-web安装在同一台虚拟机上,也可以分别安装在不同的虚拟机上。)需要提前安装mysql数据库在官方下载源码包。下载地址:/www.zabbix.com/download下载:zabbix-3.4.4.tar.gz在官网下载rpm安

2018-02-02 14:53:11 432

原创 java的excel的导出

@RequestMapping(params="method=downloadExcel", method=RequestMethod.GET)public ResponseEntity downloadExcel(HttpServletRequest request) throws UnsupportedEncodingException { //设置Http头 HttpHeaders r

2018-01-17 09:38:00 343

空空如也

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

TA关注的人

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