自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 SpringDataJpa set()方法自动保存失效

问题描述:springdatajpa支持直接操作对象设置属性进行更新数据库记录的方式,正常情况下,get()得到的对象直接进行set后,即使不进行save操作,也将自动更新数据记录,将改动持久化到数据库中,但这里可以看到并没有生效。问题分析:根据问题分析可推测,大概有几种可能导致不生效:对象不属于托管态,所以set后不生效字段设置了@Transient注解设置了readOnly=true,导致不生效未flush缓存,导致不生效对象不属于托管态,所以set后不生效。

2023-01-28 17:18:25 1208 1

原创 【node】npm run dev失败Error: error:0308010C:digital envelope routines::unsupported

方法二:修改package.json,在相关构建命令之前加入set NODE_OPTIONS=–openssl-legacy-provider,这个办法可以一劳永逸,以后直接通过npm执行scripts里面的命令即可。问题原因:node版本过高,因为 node.js V17版本中最近发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成一些影响.方法一:通过命令设置NODE_OPTIONS参数,这个办法的缺点是每次构建前都需要执行一次命令。

2023-01-11 15:46:50 1727

原创 mybatis查询返回的对象不为null,但是属性值为null

<select id="selectUnitExerciseInfo" resultMap="simpleResultMap" parameterClass="Query"> SELECT user_id,book_id,listen_id,type,sum(right_num) as right_num, sum(exercise_num) as exercise_num FROM user_listen_exercise_da.

2022-03-02 15:16:11 1473 1

原创 java.lang.IllegalStateException: zookeeper not connected

项目启动报错,java.lang.IllegalStateException: zookeeper not connected错误提示是连接不上zookeeper,一般这种情况要么是网络问题,要么是权限问题1:首先确认zookeeper是否正常运行,登录服务器查看zookeeper运行状态2:查看电脑系统是Windows还是Linux,查看是否防火墙阻拦,ping一下zk的域名和端口是否可以正常ping通。3:如果上述都没问题,windos系统请检查域名解析是否正确,可以考虑本地host..

2022-02-09 10:54:34 8674

原创 Redis主从复制流程细节

1、复制的完整流程(1)slave node启动,仅仅保存master node的信息,包括master node的host和ip,但是复制流程没开始master host和ip是从哪儿来的,redis.conf里面的slaveof配置的(2)slave node内部有个定时任务,每秒检查是否有新的master node要连接和复制,如果发现,就跟master node建立socket网络连接(3)slave node发送ping命令给master node(4)口令认证,如果master.

2021-08-10 20:13:16 358

原创 Redis主从架构的核心原理

1、主从架构的核心原理当启动一个slave node的时候,它会发送一个PSYNC命令给master node如果这是slave node重新连接master node,那么master node仅仅会复制给slave部分缺少的数据; 否则如果是slave node第一次连接master node,那么会触发一次full resynchronization开始full resynchronization的时候,master会启动一个后台线程,开始生成一份RDB快照文件,同时还会将从客户端收到的所

2021-08-10 19:52:47 355

原创 MYSQL与SYBASE中delete语句级联删除操作

mysql与Sybase都支持级联删除可以在DELETE语句中指定多个表,以根据WHERE子句中的条件从一个或多个表中删除行。Sybase中delete语句可以使用如下语法:delete t1 from table1 t1,table2 t2 where t1.id=t2.id这个操作是表示将t1表与t2表进行联表,并删除t1表中的id等于t2表id的数据。注意这只是删除t1表数据,t2表数据不会删除。这个操作还可以写成如下,以下写法则是删除t1与t2中的数据:delete t1

2021-08-10 19:09:32 1123

原创 MYSQL : query execute failed: java.lang.NullPointException

select '','',no,name from student查询语句中返回的字段如果有多个默认值给的是‘’,则会导致报错可以给他们取别名避免错误select ‘’ as sex, '' as score , name from student

2021-08-04 20:45:53 423

原创 redis单线程模型

关于BIO,NIO,AIOBIO是一个连接一个线程。BIO是同步阻塞NIO是一个请求一个线程。NIO是同步非阻塞AIO是一个有效请求一个线程。AIO是异步非阻塞。redis为什么效率高,查询快?1.C语言实现,执行速度快2.纯内存操作,数据读写在内存中3.基于非阻塞的I/O多路复用机制4.单线程避免了上下文切换redis为什么使用单线程模型?redis的单线程模型指的是文件事件处理器单线程,即单线程的处理请求。它在内存中执行的操作耗时很快,以至于多线程带来的收益小于其

2021-08-03 23:04:16 311

原创 redis过期删除策略

tips:  Redis提供了四个命令来设置过期时间(生存时间)。  ①、EXPIRE <key> <ttl> :表示将键 key 的生存时间设置为 ttl 秒。  ②、PEXPIRE <key> <ttl> :表示将键 key 的生存时间设置为 ttl 毫秒。  ③、EXPIREAT <key> <timestamp> :表示将键 key 的生存时间设置为 timestamp 所指定的秒数时间戳。  ④、PEXPI

2021-08-02 22:52:42 850

原创 MySQL shell文档

https://dev.mysql.com/doc/dev/mysqlsh-api-python/8.0/group___shell_a_p_i.html

2021-07-23 11:24:21 293

原创 shell脚本操作MYSQL

1.创建脚本test.sh!/bin/bash  HOSTNAME="192.168.111.84" #数据库信息PORT="3306"USERNAME="root"PASSWORD="111"DBNAME="test_db_test" #数据库名称TABLENAME="test_table_te

2021-07-19 23:00:28 8033 1

原创 MySQL与sybase生成唯一id方式

MySQLSELECT UUID()//结果如下,生成长度为36位的id,问题:使用不方便,无法在数据库中复制粘贴,180da4bb-b2ed-11e7-beee-54e1ad4321052.SELECT REPLACE(UUID(),’-’,’’);//解决方案:把“-”替换成“”,变成32位,可以相互复制12d34dd62beb11e78e6a28d244647ffc3.SELECT UUID_SHORT()//结果如下:98632657272832011,长度为17SybaseS

2021-06-29 10:47:19 463

原创 Mysql 与Sybase的不同点整理

记录一下,很多网上找不到。获取时间方法 Sybase:getdate() 函数 MySQL:now() 函数 CASE WHEN使用方式 ### sybase 写法select t.a, case when t.a is null then 'xxxx' else t.b end as b from tempTable t#### MySQL写法,有两种使用方式简单函数 CASE [col_

2021-06-23 23:08:06 1303 2

转载 Mysql 存储过程详解

转自:https://www.cnblogs.com/xiaoxi/p/6398347.html

2021-06-23 21:35:22 57

原创 mysql 与sybase小知识

MySQL与Sybase不同点MySQL没有if exists() ,Sybase有if exists() MySQL中无select into语句,sybase中可用select into MySQL查询其他表数据并插入到新表:create table tablename (select * from table2) sybase查询其他表数据插入到新表:select column1,colum2 ... into new_table MYSQL创建临时表:create temporary .

2021-06-22 22:33:24 643

原创 Java使用正则表达式统计字符串中指定字符出现次数

String sqlStr = "select count(*) from table where a = @{1} and b = @{2} and c =@{3}"; String regex = "select\\s+count\\((\\*|[a-zA-z1-9.]+)\\)\\s+from.*"; //判断是否匹配 boolean matches = sqlStr.matches(regex); if (!matches) { .

2021-04-19 22:16:33 4138

原创 Access to XMLHttpRequest at xxx has been blocked by CORS policy:request ....

前端请求接口报错,接口返回:404;前端控制台错误信息提示:Access to XMLHttpRequest at xxx has been blocked by CORS policy:request header field content-type is not allowed byAccess-Control-Allow-Headers is preflight response;原因是前端发送得请求中,header中包括了不被允许的请求头,比如使用JWT时,前端请求在header中..

2021-03-10 22:04:45 5425

原创 python 使用csv模块导出csv文件问题

python3中存csv乱码的问题:with open(filename, 'a', newline='', encoding='utf-8-sig') as f: # 中文需要设置成utf-8格式open()增加encoding得设置即可(python2不支持)python2中中文乱码问题:用记事本打开导出得csv文件,另存为,并且选择编码为utf-8csv导出文件有空行得问题(每隔一行有一行空行)python3的处理方式:with open(filename, 'a'..

2020-06-08 10:02:27 523

原创 Java字符串格式化,{}占位符根据名字替换

import java.beans.PropertyDescriptor;import java.lang.reflect.Method;import java.util.HashMap;import java.util.Map;import java.util.regex.Matcher;import java.util.regex.Pattern;public class St...

2020-03-20 16:38:32 3185

原创 HttpClient java.net.SocketException: Connection reset

最近使用httpclient发送get请求时一直报错总所周知http1.1(http1.0不是标准,依服务器而定)是支持长连接的,长连接能够保证服务器和客户端的socket能够高效利用,减少握手等额外的开销。httpClient在正常情况下会带上Connection: keep-alive表示我是支持长连接的,当完成一个请求后,视情况决定是否关闭连接。但是如果服务器端连接次数计数达到指...

2020-02-27 18:52:34 8062 2

转载 MySql使用索引和不使用索引的几种情况

索引是优化sql查询速度的重要优化方式,但是在存在索引时,有一些情况会使用索引,有一些情况下不会使用索引。使用索引的情况如下:1.对索引进行全值匹配,例如一个组合索引包括3列,当查询语句中出现indexA=A and indexB=B and indexC=C这样的语句时,会使用索引。2.对B-Tree索引进行范围匹配,当索引类型为B—Tree索引时,类似于indexA > A and...

2019-11-14 17:36:22 526

原创 python base64 decode出现incorrect padding错误

最近从网上抓到一批图片,但是base64编码的格式,需要转成图片文件,解码的时候一直报错:TypeError: Incorrect padding网上查了一下,了解了下,大部分都说是因为base64编码时会增加=号处理,解决方法要么是拼上缺失的=号,要么是去掉多余的=号,都试了,不好使。。。后来debug发现,数据末尾有\x3d,打印了下数据长度,发现长度不能被4整除,数据明显不对。将...

2019-11-14 16:23:17 4074

原创 正则表达式

当我们使用正则表达式对字符串做处理的时候可能会有这样的需求:需要从一大串字符串中找出所有符合我们匹配规则的字符。我们可能会写”*“,”+“这样的,但这样会匹配很多字符,甚至匹配到最后,把好几个符合条件的做成一个结果输出,我们需要对其做限制,比如第一次遇到某个字符时停止匹配。这里就要用到非贪婪限制字符?例如下面这段字符,我要匹配s='xxxxxx';这样的,我需要从这段字符中找出所有的格式为s=...

2019-11-08 15:34:56 222

原创 python csv文件使用excel打开数字丢失精度

最近用脚本生成了一个csv文件,用text打开csv文件数据是正常的。但是用wps打开时,文件中的数据不对,例如我有一个数据在csv中对应的一列时一个长整型,例如值为:10106491971116205,当用excel打开时,会被自动转换成科学记数法,值也会发送变化,变成10106491971116200,自动转换时精度丢失。通常在Excel中输入数值时,如果超过11位(12位及以上),Exc...

2019-10-25 17:08:10 6701 2

原创 python 带时区的日期格式化方式

Wed, 23 Oct 2019 21:12:01 +0800Wed, 23 Oct 2019 06:08:37 +0000 (GMT)Fri, 11 Oct 2019 12:42:07 +0800 (CST)Wed, 23 Oct 2019 06:08:37 +0000 (UTC)几种不同的日期格式化方式,不同的时区时间转换成北京时间,也就是东八区的时间,注意的是后面的时区表示方...

2019-10-24 15:56:30 6067

原创 python 登陆邮箱下载邮件附件

参考帖子:https://blog.csdn.net/u012209894/article/details/82384987最近有一个比较特殊的需求,有一个业务每日会产生大量报表,该业务并未给出拿取报表数据的接口,每天报表会发送到一个邮箱中以附件发送,但每日的邮件过多,需要自己登陆邮箱一个一个附件下载下来比较繁琐,现在要写个脚本去拿这些附件,然后再分析里面的数据。 def deco...

2019-10-23 14:17:25 4021 1

原创 Google翻译接口调用

最近有个需求要批量调用Google翻译进行翻译,由于数据量过大,使用selenium模拟显然是不现实的。。。。要是能调用他的接口就好了,但接口是收费的。。。没办法,哎,只能自己搞,看看能不能破解。看了下Google翻译的接口,对浏览器右键检查,可用发现翻译是有接口的:https://translate.google.com/translate_a/single?client=w...

2019-10-22 18:35:53 4117

原创 Java 字符串格式化

String类的format()方法用于创建格式化的字符串以及连接多个字符串对象。主要用于将字符串中某些占位符替换成指定的值,类似c中的sprintf(),python中也有类似的format方法,Java中format有两个重载方法,调用方式都是:String.format()format(String format, Object... args) 新字符串使用本地语言环境,制定...

2019-10-22 18:30:47 341

原创 AtomicInteger 关键字保证线程共享变量线程安全

线程安全:当多个线程访问一个类时,如果不用考虑这些线程在运行时环境下的调度和交替执行,并且不需要额外的同步及在调用代码代码不必作其他的协调,这个类的行为仍然是正确的,那么称这个类是线程安全的。线程共享:当某个资源需要被多个线程同时访问时,该资源就是一个线程共享的资源,这时就需要注意这个变量是否线程安全,会不会因为多个线程的访问而导致值发送不符合预期的改变。synchronized(...

2019-08-28 16:10:02 555

原创 @SpringBootTest注解无法加载src/main/resources目录下资源文件

springboot做单元测试时,启动报错:明明resource下有该文件,并且通过springboot启动器启动项目时是可以加载的,但使用junit启动则报错。排查了一下,忽然反应过来,这是一个坑,springboot使用@SpringBootTest时,@SpringBootTest注解,只会加载test路径下的资源文件(即xml配置),并不会加载main路径下的资源文件,...

2019-08-21 15:38:44 8063 1

原创 python使用requests时报错requests.exceptions.SSLError: HTTPSConnectionPool

错误信息如下:requests.exceptions.SSLError: HTTPSConnectionPool(host='www.baidu.com', port=443): Max retries exceeded with url: / (Caused by SSLError(SSLError(1, u'[SSL: CERTIFICATE_VERIFY_FAILED] certifi...

2019-08-08 15:03:51 8591 2

原创 【Python 解决错误】selenium.common.exception.WebDriverException

最近准备对一个网站爬取时需要模拟点击,准备用selenium来做,安装好chromedriver后启动报错,错误提示如下:selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH.运行代码如下:from selenium import we...

2019-08-06 15:21:42 1372

原创 python执行安装第三方依赖失败:error: Unable to find vcvarsall.bat

当导入第三方库时没执行setup失败,报错error: Unable to find vcvarsall.bat,网上对这个错误大部分都说安装vs,但有人安装完后依旧报错,其实不一的是么有安装,而是安装了找不到vcvarsall.bat所在的路径。解决办法,首先确定是否真的没有vcvarsall.bat,查看电脑是否有Visual Studio,或者 Microsoft Visual C+...

2019-07-04 21:28:14 6398 3

原创 python包管理工具pip无法下载包的问题

pip下载包执行install时失败,错误信息:Retrying (Retry(total=2, connect=None, read=None, redirect=None)) after connection broken by ‘ReadTimeoutError(“HTTPSConnectionPool(host=’pypi.python.org’, port=443): Read ti...

2019-07-04 21:11:50 3461

转载 Java虚拟机内存模型及垃圾回收

原文地址:https://blog.csdn.net/anjoyandroid/article/details/78609971

2019-06-20 17:22:06 116

原创 Mybatis-plus全局配置主键生成策略

mybatis可以配置全局的主键生成策略也可以通过bean的属性加注解的方式设置,主键上使用@TableId注解,注解的type属性有6种选值,对应6中主键生成策略当然还可以在数据库中设置该表字段的生成策略,mybatis plus默认使用全局唯一的数字类型三种设置的优先级:注解 > 全局 > 默认当IdType的类型为ID_WORKER、ID_WORKER...

2019-05-08 11:39:49 25422 3

原创 Mybatis手动读取配置文件,SqlSessionFactory原生方式使用

不整合spring,原生的mybatis方式进行查询的测试。首先创建POJO书写对应的Mapper接口书写mybatis的配置文件<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" ...

2019-04-30 16:03:01 3032

原创 Mybatis查询方法selectById()主键不一致问题

Mybatis-plus的通用mapper为我们封装了很多方法,我们只需要将interface集成BaseMapper就可以。在BaseMapper中分装了一个方法=》selectById()selectById 这个方法是根据主键id进行查询记录的。返回一条记录。测试如下,最终调用的是这个方法userDiamondMapper这个接口集成了BaseMapper。...

2019-04-30 11:18:58 11038 4

原创 PropertySourcesPlaceholderConfigurer读取配置文件的坑

spring中读取属性配置文件一般会使用PropertySourcesPlaceholderConfigurer,成功读取后,可以将配置文件中的属性在XML中使用${xxx}的写法引入。在做Junit单元测试时,启动报错:无法cms.master.url这个属性,这说明property-placeholder并未成功读取到该属性所在的配置文件。检查下配置文件:xml中使用的是这...

2019-04-29 12:18:35 7807

空空如也

空空如也

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

TA关注的人

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