- 博客(76)
- 资源 (3)
- 问答 (2)
- 收藏
- 关注
转载 Nginx配置--区分PC和手机访问不同域名
配置–区分PC和WAP访问不同域名虑到网站在多种设备下的兼容性,有很多网站会有手机版和电脑版两个版本。访问同一个网站URL,当服务器识别出用户使用电脑访问,就打开电脑版的页面,如果使用手机访问,就会得到手机版的页面。要想让网站适配PC和WAP,首先要能做出准确的判断。HTTP请求的Header中的User-Agent可以区分客户端的浏览器类型,可以通过User-Agen来判断客户端的设备。下面举一个PC链接在手机访问的例子:#判断是手机访问还是pc端访问,是手机访问主域名就跳转到二级域
2022-04-23 16:24:28
2194
原创 InvalidKeyException: Illegal key size异常解决方案
目录产生错误原因为什么会产生这样的错误?如何解决AES加密工具抛出InvalidKeyException: Illegal key size异常,根据以往经验初步判断是加密出现问题需要安装JCE相关的包。产生错误原因为了数据代码在传输过程中的安全,很多时候我们都会将要传输的数据进行加密,然后等对方拿到后再解密使用。我们在使用AES加解密的时候,在遇到128位密钥加解密的时候,没有进行什么特殊处理;然而,在使用256位密钥加解密的时候,如果不进行特殊处理的话,往往会出现这个异常
2022-04-06 15:08:58
2596
转载 Java实现RSA+AES+签名进行加解密
介绍RSA+AES混合加密形式并对数据进行加签过程与方法,也会贴上相应的代码。1、RSA密钥RSA密钥很重要,开始加密的起源第一步。1.首先我们通过一些工具可以生成RSA密钥对,Java也有生成密钥对的代码,密钥对顾名思义就是一对钥匙,我自己平台生成RSA时会有公钥和私钥,我们会把自己平台的公钥交给第三方,私钥自己保存,同样第三方按照规则生成RSA公私钥,给我们平台公钥,自己保留私钥, 这样更安全,后续加签加密都是需要RSA操作的。2.第三方会给相应的加密规范,我们生成RSA密钥长度为20
2022-04-06 11:53:29
2375
原创 Callable多线程实现对list数据的处理
1.简单介绍通过实现Callable接口创建线程与Runable相比的区别在于:runable没有返回值,Callable可以用Future<数据类型>接收返回值class TaskWithResult implements Callable<String> { //创建一个线程 private int id; public TaskWithResult(int id) { this.id=id; ...
2022-03-29 11:42:42
687
原创 ubuntu 20.04搭建elasticsearch-7.6.2
ubuntu安装 es7.6.2Ubuntu 18.04.4 jdk (Ubuntu 18.04.4搭建开发环境之 JDK1.8安装,原先安装jdk8,后直接升级为jdk11版本,关于linux配置jdk1.8或者jdk11这里不再细说) elasticsearch-7.6.21.安装步骤下载 ES (官网)在visit our downloads page中找到elasticsearch7.6.2版本,点击下载即可上传至Ubuntu 服务器 这里我存放在 /usr/..
2022-02-25 10:30:52
3465
转载 Redis集群方案探讨
方案1:Redis官方集群方案 Redis ClusterRedis Cluster是一种服务器sharding分片技术。Redis Cluster集群如何搭建请参考我的另一篇博文:Redis Cluster集群搭建与配置 - 秀才坤坤 - 博客园Redis3.0版本开始正式提供,解决了多Redis实例协同服务问题,时间较晚,目前能证明在大规模生产环境下成功的案例还不是很多,需要时间检验。Redis Cluster中,Sharding采用slot(槽)的概念,一共分成16384...
2022-02-23 13:22:47
356
原创 centos7-kafka_2.12-2.3.1集群搭建
目录1、 准备2、 jdk安装配置3、 zookeeper集群搭建4、kafka集群搭建验证:1、 准备环境准备很重要,尤其是版本对应,如果不注意jdk和kafka的版本,kafka和zookeeper的版本,中间会报一些奇奇怪怪的错。对应准备的版本:三台服务器:192.168.20.126,192.168.20.127,192.168.20.128(以下操作均为三台服务器) kafka:kafka_2.12-2.3.1 jdk:jdk-8u241-linu...
2022-02-08 15:53:21
1720
转载 kafka入门原理简要介绍
目录Kafka作为一个分布式的流平台,这到底意味着什么?什么是kafka的优势?它主要应用于2大类应用:首先几个概念:kafka有四个核心API:首先来了解一下Kafka所使用的基本术语:主题和日志 (Topic和Log)分布式(Distribution)Geo-Replication(异地数据同步技术)生产者(Producers)消费者(Consumers)Kafka的保证(Guarantees)kafka作为一个消息系统kafka作为一个存储系统
2022-01-21 16:31:31
224
原创 springboot2 集成kafka
前言本章只介绍springboot微服务集成kafka,跟rabbitmq用法相同,作为一个消息中间件收发消息使用,本章仅介绍集成后的基础用法,研究不深,请各位谅解。环境准备IntelliJ IDEA 前一章中搭建的微服务框架 前一章之后,对目录结构进行了优化,将config相关类都放到demo.config包下开始集成 pom.xml中增加依赖包 <dependency> <groupId>org.springf
2022-01-18 14:53:56
982
原创 记录一次 Liferay 7.X 中弹出窗口的简单使用
Liferay 7.X中已经帮我们封装好了,我们直接调用就行了,这里介绍下一些参数使用(只限于我使用过的肯定不全面)。JS调用 打开窗口使用Liferay.Util.openWindow方法 例子://弹窗直接打开URL,无参数 Liferay.Util.openWindow({uri:'/'}); //弹窗内容使用静态HTML Liferay.Util.openWindow({ dialog: { bodyContent:'html代码' } ...
2021-12-29 10:03:16
686
原创 Swiper参数说明(swiper参数配置)
目录Swiper参数说明(swiper参数配置)1.自由模式与滑块容器(Free Mode and Scroll Container)2.自由模式与滑块容器(Free Mode and Scroll Container)3.块(slides)偏移4.触屏/鼠标事件效应(Touch/mouseinteractions)5.Navigation5.Pagination(分页器)(指示器)6.命名空间namespace7.回调函数(Callbacks)Swiper参..
2021-12-20 17:08:46
3410
原创 ubuntu 更换sources.list源为阿里云源
Ubuntu 的源存放在在 /etc/apt/ 目录下的 sources.list 文件中,修改前我们先做个备份,在终端中执行以下命令:sudo cp /etc/apt/sources.list /etc/apt/sources.list.bcakup然后执行下面的命令打开 sources.list 文件,清空里面的内容,把上面我们编辑好的国内的源复制进去,保存后退出。sudo vim /etc/apt/sources.list更换为:或直接新建sources.list文件替换即可
2021-12-14 17:47:14
3322
转载 记录一次 Liferay7中使用alloy-UI发送ajax请求
首先liferay要发送ajax请求,那么就需要在jsp中定义resourceURL<portlet:resourceURL var="workDeal" id="workDeal" />然后我们如何使用alloy-ui读取数据?这里我们可以借助alloy-ui提供的一个IO功能,发送ajax请求并从结果中读取数据alloyui demo:<!DOCTYPE html><html lang="en"><head> <m
2021-12-06 14:22:44
771
转载 Mybatis-plus批量插入、批量修改数据saveBatch等速度缓慢
[转]Mybatis-plus批量插入、批量修改数据saveBatch等速度缓慢 背景 处理 Arebirth博客园: 原文链接背景使用mysqlPlus. 不管是updateBatch, 还是saveBatch, 800条左右的数据,耗时都超过1s以上尝试更改每次批量处理的数量, 比如:super.updateBatchById(list,1000);1如果不传第二个参数, mysqlPlus默认是1000. 这个根据调整, 发现低于1000, 耗时增加,
2021-11-29 11:41:58
4383
原创 MyBatis-Plus 实体类实现动态表名的保存与查询
目录保存查询:动态表名处理器:保存项目中使用了MyBatis-Plus简化开发,在项目中,对数据库表的操作,可以通过在数据表实体类中添加@TableName("table_name")来指定该实体所对应的表,如下:@Data@TableName("viechle")public class AutoDataTable implements Serializable { private static final long serialVersionUID = ...
2021-11-26 16:59:31
4709
原创 记录一次 Liferay7中MvcPortLet引入外部js第一次不加载的问题解决
创建一个新的liferay module。首先我创建的是MVC Portlet:需要添加标签:javax.portlet.expiration-cache=0修改@Component控制器中标签为如下配置即可:@Component( immediate = true, property = { "com.liferay.portlet.display-category=category.sample", "javax.portlet.expiration-cache=0",
2021-11-23 11:36:32
849
原创 Hadoop学习笔记-MapReduce原理概述
目录MR简介MR实现的操作流程作业提交流程Mapper阶段解读Reducer阶段解读数据流向分析总体处理流程分析Shuffle阶段解读MR简介一个MR作业通常会把输入的数据集切分为若干独立的数据块,先由Map任务并行处理,然后MR框架对Map的输出先进行排序,然后把结果作为Reduce任务的输入。MR框架是一种主从框架,由一个单独的JobTracker节点和多个TaskTracker节点组成。(JobTracker相当于Master,负责作业任务的调度,TaskT
2021-11-13 13:58:55
410
原创 Hadoop学习笔记-MapReduce实现好友推荐记录
一、简介好友推荐功能简单的说是这样一个需求,预测某两个人是否认识,并推荐为好友。二、思路某两个非好友的用户,他们的共同好友越多,那么他们越可能认识。比如,原始数据如下Tom Cat Hello Hadoop SpringCat Hello SpringHello Tom Netty Hadoop Cat Hadoop Tom Hello Netty Spring Spring Tom Cat HadoopNetty Hello Hadoop每一行表示某个用户的好
2021-11-11 15:12:19
854
1
原创 记录一次 CentOS8使用ifconfig没有ens33网卡信息
CentOS8使用ifconfig没有ens33网卡问题截图如下:解决:查看托管状态nmcli n显示 disabled 则和我遇到的问题一样,如果是 enabled 就不是了开启托管nmcli n on重启systemctl restart NetworkManager网卡成功启动:...
2021-10-27 10:31:17
564
转载 springboot-整合多数据源配置
目录简介一、表结构二、多数据源整合1. springboot+mybatis使用分包方式整合2. springboot+druid+mybatisplus使用注解整合简介主要介绍两种整合方式,分别是 springboot+mybatis 使用分包方式整合,和 springboot+druid+mybatisplus 使用注解方式整合。一、表结构在本地新建两个数据库,名称分别为db1和db2,新建一张user表,表结构如下:SQL代码:CREAT..
2021-10-23 15:47:27
404
原创 RabbitMQ的管理端使用说明
1、RabbitMQ的管控台。 1)、RabbitMQ的管控台中概览的Totals。如果有消息进行消费的话,如果我们创建队列的话,这里面显示消费进度和情况,实施进行显示,可以看到一个折线图的表现形式。 RabbitMQ的管控台中概览的Global counts。Connections代表了有多少链接,Channels代表了有多少网络通信信道,Exchanges代表了有多少交换机,Queues代表了有多少队列,Consumers代表了有多少消费者。当你的生产者和消费者启动以后,可以看到
2021-10-23 09:18:15
1416
原创 Spring Bean的生命周期剖析
Spring Bean的生命周期是Spring面试热点问题。这个问题即考察对Spring的微观了解,又考察对Spring的宏观认识,想要答好并不容易!本文希望能够从源码角度入手,帮助面试者彻底搞定Spring Bean的生命周期。四个阶段:是的,Spring Bean的生命周期只有这四个阶段。把这四个阶段和每个阶段对应的扩展点糅合在一起虽然没有问题,但是这样非常凌乱,难以记忆。要彻底搞清楚Spring的生命周期,首先要把这四个阶段牢牢记住。实例化和属性赋值对应构造方法和setter方法的注入,初始化
2021-10-11 10:23:12
188
转载 CAS-01 关于CAS服务端设置自定义返回参数给CAS-CLIENT
目录1.首先要在注册Service的json中配置返回信息的规则2.为什么会只返回用户名给客户端呢3.配置注册service的json文件4.修改表单处理器Handler中添加返回结果效果演示CAS服务端默认是只返回登录的用户名,不会返回用户其他的信息,假如我们还需要用户的id,手机号之类的信息怎么办? 可以修改cas服务端,返回更多的信息给客户端。参考官网https://apereo.github.io/cas/development/integration/Attribu.
2021-09-30 10:27:59
1727
转载 Python:数据可视化pyecharts的使用
什么是pyecharts? # pyecharts 是一个用于生成 Echarts 图表的类库。 echarts是百度开源的一个数据可视化 JS 库,主要用于数据可视化。pyecharts 是一个用于生成 Echarts 图表的类库。实际上就是 Echarts 与 Python 的对接。 使用 pyecharts可以生成独立的网页,也可以在 flask , Django中集成使用。pyecharts包含的图表# Bar(柱状图/条形图) Bar3D(3D 柱...
2021-09-06 09:06:58
2191
原创 记录一次 Mybatis plus使用baseMapper插入一条数据并返回id
实体类代码:@Data@TableName("T_***")public class Flow*** implements Serializable { private static final long serialVersionUID = 1L; @TableId(value = "id", type = IdType.AUTO) private int id; @LengthForUtf8(max = 50) private String nam
2021-09-02 15:21:36
2137
转载 数据库的4种隔离级别
数据库事务的隔离级别有4种,由低到高分别为Read uncommitted 、Read committed 、Repeatable read 、Serializable 。而且,在事务的并发操作中可能会出现脏读,不可重复读,幻读。下面通过事例一一阐述它们的概念与联系。 脏读、不可重复读、幻象读概念说明: 脏读:指当一个事务正在访问数据,并且对数据进行了修改,而这种数据还没有提交到数据库中,这时,另外一个事务也访问这个数据,然后使用了这个数据。因为这个数据还没有提交那么另外一个事务读取到的这个
2021-08-28 17:02:29
406
转载 flowable中动态显示节点的审批人信息
1、上面的流程图当任务还没有到的节点,用户想看看节点的人的信息,如果我们常规的是不能实现的。2、思路就是我们取出节点的表达式,然后用我们流程实例的变量来给他翻译出来即可,如何做呢?2.1、通过流程实例id查出历史表中的所有的变量列表 1 2 List<HistoricVariableInstance> hvis = historyService.createHistoricVariableInstanceQuery() ...
2021-08-26 10:52:02
2220
原创 flowable6.0-用户任务说明
用户任务描述“用户任务”用于对需要人工完成的工作进行建模。当流程执行到达此类用户任务时,会在分配给该任务的任何用户或组的任务列表中创建一个新任务。图形符号用户任务可视化为典型任务(圆角矩形),左上角有一个小用户图标。XML 表示用户任务在 XML 中定义如下。该ID是必需的属性,在名称属性是可选的。<userTask id="theTask" name="Important task" />用户任务也可以有描述。事实上,任何 BPMN 2.0 元素都.
2021-08-02 16:51:54
1252
转载 记录一次SpringBoot整合Netty提供websocket服务
Netty是一个非常优秀的Socket框架。如果需要在SpringBoot开发的app中,提供Socket服务,那么Netty是不错的选择。Netty与SpringBoot的整合,我想无非就是要整合几个地方让netty跟springboot生命周期保持一致,同生共死 让netty能用上ioc中的Bean 让netty能读取到全局的配置整合Netty,提供WebSocket服务这里演示一个案例,在SpringBoot中使用Netty提供一个Websocket服务。servlet容器本身
2021-07-21 17:51:48
778
原创 Flowable-任务集成Docs
本内容参考官网:官网文档1 活动事件用于模拟在流程生命周期中发生的事情。事件总是可视化为圆圈。在BPMN 2.0中,存在两个主要事件类别:捕获和抛出事件。**捕获:**当流程执行到达事件时,它将等待触发发生。触发器的类型由XML中的内部图标或类型声明定义。通过未填充的内部图标(它只是白色)在视觉上区分捕捉事件。 **投掷:**当进程执行到达事件时,触发器被触发。触发器的类型由XML中的内部图标或类型声明定义。通过填充黑色的内部图标在视觉上区分投掷事件。1.1.1 事件定义事件定义定义事件
2021-07-06 17:32:28
1047
转载 flowable 任务多实例
*业务场景:收集每个员工的绩效考核信息;收集一次组织活动的信息;一个合同需要三个经理审批,可以是顺序的也可以是并行的;一个合同计划审批有30个人审批,只需要其中70%的人审批通过即可。等等 *1、任务多实例四个内置变量属性 解释 nrOfInstances 一共有多少个实例 nrOfCompletedInstances 已经完成的实例个数 nrOfActiveInstances 未完成的实例个数 2、配置多实例2.1、配置参数2.2、配置候选人
2021-07-05 17:13:40
1045
原创 Flowable6.5 之 springboot集成flowable modeler设计器
源码githup上下载老版本源码https://github.com/flowable/flowable-engine/releases龟速下载的情况可以在https://github.com/flowable/flowable-engine直接clone一个版本的源码,依然龟速还是通过码云导入仓库吧,再去下载了有需要的情况可以使用maven命令 mvn clean package -DskipTests -Pdeploy -Dmaven.javadoc.skip=true 自行编译源码,网络差的
2021-07-02 16:46:56
1761
5
原创 Flowable REST API入门
前序这次使用Flowable API而不是Java API设置REST应用程序从flowable.org网站下载.zip文件时 需要一个servlet容器来运行WAR文件 INFO [main] org.apache.catalina.startup.Catalina.start服务器启动xyz ms表示服务器已准备好接收请求 默认情况下使用内存中的H2数据库实例,这意味着数据将无法在服务器重新启动后继续存在 curl --user rest-admin:test http:/
2021-07-02 11:28:27
838
转载 大数据技术之Hadoop(入门)概述、运行环境搭建、运行模式
1 Hadoop 概述1.1 Hadoop 是什么(1)Hadoop是一个由Apache基金会所开发的分布式系统基础架构(2)主要解决海量数据的存储和海量数据的分析计算问题(3)广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈1.2 Hadoop 优势(1)高可靠性:Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或存储出现故障,也不会导致数据的丢失。(2)高扩展性:在集群间分配任务数据,可方便的扩展数以千计的节点。(3)高效性:在MapReduce
2021-06-29 09:55:37
893
原创 Mysql 通过父节点ID获取所有子节点数据函数
BEGINDECLARE sTemp text;DECLARE sTempChd text;SET sTemp = '$';SET sTempChd =cast(rootId as CHAR);WHILE sTempChd is not null DOSET sTemp = concat(sTemp,',',sTempChd);SELECT group_concat(deptId) INTO sTempChd FROM ch_class where FIND_IN_SET(deptParI
2021-06-03 16:22:13
552
1
转载 批量上传文件之Java MultipartHttpServletRequest.getFileMap方法
本文整理匯總了Java中org.springframework.web.multipart.MultipartHttpServletRequest.getFileMap方法的典型用法代碼示例。如果您正苦於以下問題:Java MultipartHttpServletRequest.getFileMap方法的具體用法?Java MultipartHttpServletRequest.getFileMap怎麽用?Java MultipartHttpServletRequest.getFileMap...
2021-05-11 14:41:38
4463
原创 Jep 解析字符串数学公式
由于项目需要从服务器端传来一个计算公式,客户端根据公式计算得到值,故而学习了一下Jep。如果是一般公式,使用Jep很容易实现计算得到结果。[java]view plaincopyStringstr="6+7+8-9"; Jepjep=newJep(); jep.parse(str); System.out.println(jep.evaluate());默认情况下,Jep支持的符号列表如下: ...
2021-04-30 08:42:57
612
转载 BitMap简介
目录1. BitMap2. Bitmap有什么用3. BitSet1. BitMapBit-map的基本思想就是用一个bit位来标记某个元素对应的Value,而Key即是该元素。由于采用了Bit为单位来存储数据,因此在存储空间方面,可以大大节省。(PS:划重点节省存储空间)假设有这样一个需求:在20亿个随机整数中找出某个数m是否存在其中,并假设32位操作系统,4G内存在Java中,int占4字节,1字节=8位(1 byte = 8 bit)如果每个数字用int...
2021-04-26 10:24:21
3056
1
转载 Spring Cloud Gateway-全局过滤器(Global Filters)
TIPS本文基于Spring Cloud Gateway SR2,理论适配Spring Cloud Gateway SR1以及更高版本。本文详细探讨Spring Cloud Gateway内置的全局过滤器。包括:1 Combined Global Filter and GatewayFilter Ordering2 Forward Routing Filter3 LoadBalancerClient Filter4 Netty Routing Filter5 Netty Writ...
2021-03-30 13:23:31
1339
后台接收不到页面ajax请求,报500错误,麻烦帮我看下html和js写的有错吗
2016-10-11
TA创建的收藏夹 TA关注的收藏夹
TA关注的人