自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (5)
  • 收藏
  • 关注

原创 学习笔记--java里事务失效的场景

4,异常被捕获,在@Transactional或者@DSTransactional的回滚机制都是通过运行时异常触发的回滚,如果方法没有指定回滚的异常类型,那如果代码里有非运行时异常,也不会触发回滚。通过aop的动态代理,在调用该方法时,开启事务,方法处理完,提交事务。5,数据库的引擎不支持事务,这个一般测试都可以测出来,例如MyISAM引擎,不过现在一般都是支持的,这种情况比较少见。2,方法的调用方与注解修饰的方法在同一个类里面,这样也是无法动态代理的,也就无法开启事务。

2024-08-22 10:30:38 287

原创 学习笔记-java事务传播机制

3,SUPPORTS:当前存在事务则加入事务,不存在事务则普通执行。1,REQUIRED:只允许有一个事务存在,在大事务里如果再有小事务,小事务会自动并入到大事务里。5,MANDATORY:如果当前存在事务,则加入事务,不存在则报错。2,REQUIRES_NEW:每次新开一个事务,如果当前存在事务,当前事务挂起。7,NESTED:如果当前存在事务,当前事务挂起,新开事务,新开的事务回滚不影响外部事务的回滚。6,NEVER:有事务报异常。(当前存在事务,则报异常,改端代码必须以非事务方式执行)

2024-08-20 09:11:50 318

原创 学习笔记-锁synchronized

synchronized是一种阻塞锁。其内部使用monitor实现。在调用synchronized修饰的方式时,会先判断对象的ACC_SYNCHRONIZED标志,如果该标志有设置,再去获取监视器锁,监视器会调用monitorenter方法,把对象的锁计数器+1,释放锁时,调用monitorexit,将对象的锁计数器减1,这样下一个调用的人在调用时,通过判断锁计数器的值是否等于0来实现是否允许执行该段代码。如果非0,会等待,所以synchronized是一种阻塞锁。

2024-08-05 21:40:14 123

原创 学习笔记-死锁

2,循环等待,两个线程彼此都不会主动释放自己拥有的锁(即线程只是sleep,而不是wait)3,不可强制夺取,两个线程彼此没有优先级,不会强制夺取他人的锁。4,循环条件,两个线程之间会形成A等待B的锁,B等待A的锁。1,资源的互斥,即同一个资源只允许一个线程拥有。破除方法:是其中一个不成立即可。

2024-08-05 20:38:22 122

原创 SQL优化<个人学习归纳使用>

针对SQL优化,个人总结了一下几个方面。一、业务的优化。二、sql的优化三、索引的优化四、数据库的优化。

2024-05-19 21:09:34 157

原创 org.apache.catalina.core.XXX.filterStart 启动过滤器异常

而对于第二种,我遇到的就是第二种,情景是这样的,我的项目启动一直报找不到 CORSFilter 这个过滤器。后面发现项目里用的这个过滤器是用的javaee 6 里面的过滤器,但是我先添加了tomcat的依赖,导致项目里没有javaee6的依赖,但是项目编译并未报错,启动后确实实实在在的找不到这个过滤器。所以一直报这个问题,但是找不到这个问题的原因。项目先不添加tomcat的依赖,这个时候你编译,项目汇报错,有一个http的包会说找不到,鼠标放上去,会提示自动下载,把他下下来,之后可以在添加tomcat。

2022-12-15 10:39:22 1008

原创 学习笔记-SpringCloud个人理解

我们的项目是一个mvc项目,开始在生产环境下跑起来没啥问题,慢慢的,访问量在曾多,项目有些慢。同时可以预见的是往后的访问量会越来会多,这个时候很明显我们的服务器肯定有一天会扛不住,这个时候有两个选择:1、增加服务器硬件,比如加大内存。2、服务架构更改。分布式或者微服务。如果先择1;优点:效果很明显,我们加了内存,系统短时间会很明显的变快。缺点:长时间来看,这个作用微乎其微,过一段时间,访问量增加,又要增加内存。同时成本会更加的大。如果选择2:优点:可以随着访问量的增加,增加部

2021-11-09 09:22:12 270

原创 CAP原则-个人理解

为什么说zookeper实现的是CP(一致)原则,而eureka实现的是AP(可用)原则zookeperzookeper的一致原则是在于,他在数据同步的时候,是不允许外部进行读写的,由此实现的强一致性。而分区容错性是必须要保证的,同时由于zookeeper有master节点的存在,在master节点down掉后,集群会进行选举,这个过程会消耗相当长的一段时间,这个时间集集群对外是不可用的,即所有服务都无法访问,所以说zookeeper牺牲掉了可用性,所以zookeper实现的是CP原则。eureka

2021-07-26 23:23:34 204

原创 浅显易懂讲Dubbo

首先祭出结构图我们知道有服务消费者,服务提供者,他们的身份其实可以互换的。可能每个服务消费者也是服务的提供者。这都要看你如何注册服务。这里必须要知道一个东西叫注册中心。服务都会注册在这里面。那我们如何注册服务呢。其实很简单,导入dubbo,zookeper的包,把你的实现类用Dubbo的service注解标注下,在用component注解标注。配置文件写了zookeeper的地址,这样启动后该服务就会注册到注册中心里。如何使用呢。消费者要有同样的实现类的接口。包括路径都要一致,为什么,因为invo

2021-05-11 16:55:06 172

原创 js调用委托注册事件

既然是委托事件,该事件必然是注册在父元素上,这里可以使用父元素.fristElementChild.click()来调用该元素的委托事件。委托事件注册在父元素上

2021-05-11 15:02:41 140

原创 /var/tmp/rpm-tmp.Xl518K: line 47: ./configure: No such file or directory制作rpm包过程中遇到的问题

这是在制作redis的rpm包时候遇到的问题,我的解决办法是删除掉spec文件中的%configure

2021-03-16 09:53:49 1241

原创 Linux系统redis的deb包打包制作

Ubuntu里Redis的deb制作1、下载好redis的源码上传到ubuntu里。并解压。2、进入到解压后的redis包里对源码进行编译。3、修改这里面的control文件,4、修改copyright文件5、删除掉debian/source/format文件6、修改好之后制作deb包最近在搞国产化,用到的服务器无法直接安装软件,需要打成包,走人家保密系统的口子进行安装。这里记录下自己的deb制作流程。首先介绍下deb包:deb包是为基于ubuntu系统的系统准备的,在你的系统里使用这两个命令:yu

2021-03-15 16:38:43 1480 2

原创 Linux(中科方德服务器版4.0)springboot启动多个服务脚本开机自启

1、在/etc/init.d/目录下创建shell启动脚本autojar.shvim /etc/init.d/autojar.sh#!/bin/sh#chkconfig: 2345 80 90#description:auto_run #程序名RUN_NAME="AutoStart"#JDK所在路径JAVA_HOME="/usr/local/openJdk/jdk-14"#jar包位置JAVA_PORTAL=/usr/local/java/portal.jarJAVA_OE=/usr

2021-02-03 16:29:52 1789 2

原创 syntax error near unexpected token `$‘\302\240‘‘

把脚本中的空格都删掉,无用的换行也删掉

2021-02-03 16:01:23 263

原创 linux虚拟机无法访问宿主机mysql数据库Access denied for user ‘root‘@‘XXX‘ (using password: YES)

给账号开权限进入到mysql表update user set host = '%' where user = 'root'; (使mysql root用户可以连接上任意的ip地址)FLUSH PRIVILEGES

2021-02-03 15:14:30 294

原创 Linux(中科方德服务器版4.0)安装达梦数据库V8

最近在转国产化,用到了中科方德的服务器,以及需要安装达梦的数据库。这里记录下教程。在网上找到的其他教程,自己对着试了不行,最后集齐了三家的教程,综合之后,安装完成。达梦简介:国产化的数据库,安装包里面自带服务端与客户端。安装可选择只安装客户端。本次安装全在root用户下安装,并未新加用户组。首先按照达梦的教程需要查看系统资源。主要是查看系统资源有没有设定限制ulimit -a1.data seg sizedata seg size (kbytes, -d)建议用户设置为 1048576

2021-01-27 14:33:03 5154 6

原创 Docker离线安装部署RabbitMQ

一、首先确保系统环境有docker docker -version查看如果没有可以看我的另一篇离线安装docker的文章离线安装docker二、在有外网的地方下载好docker镜像1、拉取docker镜像docker pull rabbitmq:management2、查看下载好的镜像docker images3、开始创建rabbitmq容器docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq rabbitmq:manage

2021-01-13 09:45:28 1430 1

转载 linux系统下离线安装docker

一、环境说明:在某些部署环境下,因为网络或者其他原因,不能在线部署,这时候就需要以离线的方式安装docker;二、安装步骤:1、获取docker安装文件,官方地址如下:https://download.docker.com/linux/static/stable/x86_64/docker-19.03.9.tgz2、将下载的安装文件进行解压,命令如下:tar zxvf docker-19.03.9.tgz3、将上述解压后文件(docker文件夹)全部移动至/usr/bin目录下(必须),命令如下

2021-01-12 14:57:27 954

原创 MySQL数据库定时备份

需求:对测试数据库的指定库每天早上备份一次,中午备份一次。防止队友对数据库的误删除操作。实现方式:通过MySQL自带的musqldump实现数据库的备份功能,同时通过编写脚本实现将备份的sql保存到制定的目录。最后通过windoms自带的定时任务,实现每天的定时备份。实现过程:首先是编写的脚本@echo off@setlocal enabledelayedexpansionl set dbType=inpo set dbname="glzc_%dbType%_uflo glzc_%dbType%

2021-01-05 09:56:10 246

原创 ElasticSearch查询实现全字段搜索

需求:对导入到ES数据库的数据字段实现全字段的搜索。对于电商或者互联网,ES的查询可能更注重速度,不过我所在的是传统IT,对于ES更想实现全文搜索这个功能,也是在官网文档看到有这个功能。方法一、QueryStringQueryBuilder queryStringQueryBuilder = QueryBuilders.queryStringQuery(keyWord);这个查询构造器转换成的查询语句查询时,会将对应索引的所有字段添加到一个字段里,最后查询这个字段。方法二、当然,还有一种方法,

2020-12-23 09:26:17 7091

原创 “no-unused-vars“: ‘off‘,无效

最近在独立一个前端项目,就是将某部分的功能页面独立出来,使用的vue框架,项目搭好之后,启动老是给我报定义了变量未使用的错误,.eslintrc这东西虽然规范了代码,但是有些规范实在苛刻。所以有的规范还是需要自己配置下的。然后就看网上的说在.eslintrc.js这个配置文件里加 no-unused-vars": 'off’module.exports = { root: true, env: { node: true }, 'extends': [ 'plugin:vu

2020-12-21 16:28:59 12743 6

原创 Mysql分割字符串并对分割后的数据进行查询翻译

最近在处理ElasticSearch的数据同步。有一个需求要在sql里对字符串进行分割并对其进行翻译。需要同步的表里的数据结构是这样子的,而mysql的函数是没有split的,只有SubString。这里重点就是通过SubString函数得到split的效果。'103,105,106,107'翻译的表结构是这样子的需要通过dic_kind和dic_code两个数据找到对应的翻译字段。可以看到翻译字典表里的数据只支持一个一个数据的翻译。系统里是在java后台通过分割字符串进行翻译,这里由于是用l

2020-12-18 15:34:07 2943

原创 ElasticSearch搜索字段不需要计入得分

ElasticSearch的索引同步对物理删除的数据需要做一些对应的操作才能同步,一般都是采用状态判断是否删除,所以数据同步到es索引中,我么在查询时需要对数据的状态进行判断,同时这个条件我们不希望他会影响最终查询记录的得分,这个时候就需要用到ConstantScoreQueryBuilder构造器了。这里写的全是后台的查询的代码。如果说想看具体的es查询语句,可以在后台打印出来对应的查询语句。在使用ConstantScoreQueryBuilder时,我们肯定会有其他的查询条件,所以还会用到BoolQ

2020-12-10 09:44:35 1655

翻译 antdVue表格Ellipsis溢出高亮

ant desigin vue的表格有一个属性Ellipsis是可以支持溢出自动省略,然后鼠标移到字体上可以显示省略的内容。不过由于该属性暴露的可修改内容太少,即该表格是什么内容,显示的就是什么内容,这样如果表格内的内容是有html的标签,显示省略的内容也会有html标签。而不会进行html渲染。本问的效果图vue插件内容<template> <a-tooltip :overlayClassName='overlayClassName' trigger='hover'>

2020-12-07 15:54:43 1940

原创 项目添加ElasticSearch搜索服务的流程

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、框架分析二、环境搭建1.ElasticSearch的下载安装2.Logstash的下载安装2.数据的同步三、查询总结前言这里对项目中添加ES服务做一个总结,从0到添加ES到项目中。一、框架分析使用ES做查询的话,他最好的地方就是不再走数据库,这样减少了数据库访问资源,同时有倒排索引的存在,查询会非常的快。图例解析二、环境搭建1.ElasticSearch的下载安装传送门2.Logstash的下载安

2020-12-07 14:56:01 742

原创 ElasticSearch对查询的分数进行缩放

最近的这个es的一个小需求是前端要展示查询的相似度,然后用了andtVue的进度条。然后这个进度条能接收的参数是一个0-100以内的数值,但是es自身查询出来的分数是一个0-无穷大的数值,这里需要对其进行缩放,即小的要放大,大的要缩小,让他在前端展示的更加的平缓。归一化公式归一化之后,一组数据都在0-1之间。方便后续计算主要算法代码 /** * 对数据进行缩放处理 * * @param: orgData 源数据 minSection 区间最小值 maxSect

2020-12-07 14:08:18 1043

原创 win10使用logstash-input-jdbc同步数据到es

logstash-input-jdbc是logstash的一个插件,logstash和ElasticSearch还有kibana简称ELK,logtash作为数据的收集以及过滤的一环,其可以作为数据同步的一个中间件。首先是下载,这里在5.x的版本后,logstash-input-jdbc已经被集合在了lofstash中,再下载了lofstash之后,便可使用。这里给出lofstash的下载地址,找到自己需要的版本。我是用的是7.7.1.logstash下载地址下载解压到本地。1.在bin的同级目录中创

2020-11-26 09:22:03 475

原创 Elasticsearch安装整合。

1、下载安装官网太慢了,就不给链接了。这里我在华为云镜像里下载的。下载这里说明下 我的是win10系统。下载完成后解压到本地。首先进入到bin目录,双击elasticsearch.bat文件看能不能运行。正常运行后的界面这里第一个坑,我是双击这个又没黑框一闪就没了。折腾了好久,这里如果也是这种情况,在bin目录里打开cmd执行elasticsearch.bat它,看看是什么报错,我的是could not find java; set JAVA_HOME or ensure java is i

2020-11-11 16:24:56 443

转载 jar中没有主清单属性【解决办法】

在pom文件中,添加如下即可 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <sour

2020-11-04 14:11:56 2436

原创 动态添加bean到spring

动态添加bean交给spring管理最新项目整合uflo,前端有个选项是根据后端的一个实现类的个数以及属性生成的。这样如果后期要调整选项的个数,就得改代码,添加实现类,这样比较麻烦。然后就想着写一个通用实现类,属性由配置信息赋值,生成的个数也由配置信息决定。话不多说,上代码:@Datapublic class GlzcProviderImpl extends GlzcProcessProviderImpl { private String processFileType; pr

2020-09-25 15:52:38 1182

原创 Cannot start compilation:the output path is not specified for module spcify the output path记录一个idea的

这里记录一个自己遇到的Idea编译器的问题,本人从eclipse转的IDEA,这几天把项目从gitlab上down下来在本地跑,一直给我报输出路径的错误,上csdn上查,别人的都说什么Complier output的路径替换成第一个,好多人都说可以了,但不知道自己的为啥不行,是那种run按钮都变灰了。而且下次进来还是会自动跳成第二个。然后说下自己的解决办法。这里我的办法是这里还是选择第二个。然后重点来了,这里的路径,记得输出路径选择该项目的target目录下的classes目录,测试选择对应的ta

2020-06-07 23:15:32 328

原创 AOP的动态代理

说到动态代理,就要先说说这个静态代理,静态代理的意思就是说,对于没一个接口,我都需要写一个代理实现类去实现它,同时在代理类里面编写自己需要扩展的功能,同时代理类里面还需要有真正的实现类的方法,这样,自己的扩展功能在执行完之后,在去执行目标方法,通过这样的方式去完成功能扩展,可以看的出来,这样的方式非常的繁琐,毕竟对于每一个方法都需要去编写一个静态代理类。异常的繁琐。然后就出现了动态代理。我们知道...

2020-03-17 16:34:34 166

原创 htnl页面分header、footer块

最近在写自己的项目,这里将自己遇到的问题记录一下,首先是页面,用的是html纯净态页面,分为header、body、footer等,使用的是Jquery的load函数。 <div class="header"></div> <script> $(".header").load("header.html"); </scrip...

2020-01-29 15:27:54 775

原创 HttpClient的使用

HttpClient的作用:现在的互联网大型项目采用的都是分布式部署,各个模块都有各个模块的服务器,这些资源之间的相互访问就需要借助http协议,HttpClient就是用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包.首先导包<dependency> <groupId>org.apache.httpcomponents</grou...

2019-12-16 21:03:43 210

原创 ngnix负载均衡配置

之前说到了ngnix入门,配置了图片回显功能,这篇记录ngnix配置负载均衡.假设现在有三台tomcat服务器,我们需要将请求均匀的发送到三台,当然,可以更多.假设三台tomcat都在本机上.server{ listen 80; server_name manage.jt.com; location / { proxy_pass http://jtWindoms; }...

2019-12-06 20:52:28 189

原创 nginx简单入门

nginx是一个高性能的HTTP和反向代理web服务器,优点:轻量级,并发能力强,一台ngnix服务器每秒可以处理5万的浏览请求,实际在3万左右,且占用内存在2M左右.反向代理: 浏览器发出的请求会先经过nginx服务器,经过nginx服务器处理后在发送给服务器.作用: 可以对浏览器的请求做负载均衡的处理,即使用多个tomcat服务器,请求经过ngnix之后,可以均匀的将请求分配给多个...

2019-12-06 20:08:55 206 1

原创 Spring的底层ioc实现原理

Spring的底层ioc实现原理学了这么久的java,对IOC一直是只闻其名,不见其理,一直以为ioc是一种功能的实现,看了这么多博客,**才理解IOC只是一种模式,一种思想**,他没有固定的使用方法,spring的底层大量使用了ioc的思想.ioc是控制反转.简单说就是将原先需要new出来的对象,我先把它实例化,同时把它放到一个容器里,这样后面需要这个对象的时候,直接通过注入的方式拿到,为什么...

2019-12-05 21:21:16 1487 3

开机自启.rar-redis,docker,java开机自启脚本

开机自启.rar-redis,docker,java开机自启脚本

2021-03-12

nginx.tar-Nginx镜像,导入docker直接使用

nginx.tar-Nginx镜像,导入docker直接使用

2021-03-12

rabbitmq.tar-rabbitmq镜像,可直接导入docker使用

rabbitmq.tar-rabbitmq镜像,可直接导入docker使用

2021-03-12

redis.tar-redis镜像,可直接导入系统使用

redis.tar-redis镜像,可直接导入系统使用

2021-03-12

中科方德服务器环境搭建.docx

个人编写的环境搭建文档

2021-03-12

空空如也

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

TA关注的人

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