自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MAC OS关闭SIP(navicat 无法保存密码)

3、等修改完成后,退出,继续选择终端,执行输入csrutil disable、y确认、输入用户名和密码、等一小会会提示成功。2、点击左上角实用工具、启动安全性实用工具、安全策略、选择降低安全性、勾上下面两个、我是都勾了,只勾上面的应该也可以。因为用的破解版,一开始是打不开的,用自带的修复软件修复后就可以打开了,但是保存密码就会报错,按照网上的一些操作。4、输入csrutil disable、y确认、输入用户名和密码、等一小会会提示成功。2、选择设置、下一步、输入密码。3、左上角实用工具、终端。

2024-04-12 11:40:30 531

原创 ConcurrentHashMap线程安全机制

遍历链表或红黑树,如果找到与给定键相等的节点,则更新节点的值,并在onlyIfAbsent为false时返回旧值。7、如果当前位置的节点不为空且为链表或红黑树节点,则通过synchronized锁住头Node进行进一步的操作。8、如果插入操作成功,则根据binCount(桶计数)的值决定是否需要将链表转换为红黑树,并返回旧值。如果未找到相等的节点,则在链表尾部或红黑树中插入新节点。5、如果当前位置的节点为空,则使用CAS操作将新节点插入到空的位置。2、计算键的哈希值并进行扩散(spread)操作。

2024-04-02 10:21:20 249

原创 springboot集成easy-exel 简单使用

【代码】springboot集成easy-exel。

2024-03-20 15:13:30 239 1

原创 Stream流Collectors.toMap的坑

tnnd,这能报NPE?我前面不是做了空判断CollectionUtils.isNotEmpty(DBVOS)么?1、构建map的key不能重复,如果重复,必须传入key重复时的操作。OK,结束,浪费了👴半天时间,欺负👴不怎么看源码,算👴活该。工作了两年多了才知道的坑,今天一定要披露一下这个坑。2、构建map的key和value都不能为null。错误行就是23行,没错就是这行。

2023-12-21 14:25:22 397

转载 java使用Exchange协议发送邮件

网上介绍利用spring boot通过POP3、IMAP、SMTP等协议来发送电子邮件的资料非常多,然而介绍利用Exchange邮件服务器来发邮件的资料却极少。下面来看看,如何在spring boot中用Exchange服务器来发邮件,以及需要注意的问题。首先,你需要知道邮件服 务器的地址,例如我下面的例子中服务器地址是https://webmail.XXXXX.com/EWS/Exchange.asmx(XXXX是公司域名,不便公开)。

2023-06-28 16:44:41 962

原创 Mac上idea关闭但项目还在运行

今天遇到了个问题 用idea启动springboot项目时发类似"找不到端口/端口已被占用"的问题,我这边大概"port not found"这种字眼,很纳闷为什么会找不到呢,于是开始排查问题。4、第四步于是想看任务管理器,强制退出任务,但是我用的mac,不知道哪里有任务管理器,只能点击左上角的苹果标志->强制退出,然后找不到项目。2、第二步发现我本地项目在web端也可以正常使用,怀疑是之前的项目未正常关闭导致。3、第三步彻底关闭idea,重启idea,再次重启项目,无效。

2023-06-14 10:46:39 843

原创 ant design里Form表单遇到的一些问题

Input>标签没有自动换行,可以使用文本域标签1、对于文本框输入,想要自动换行并随行数自动增加行数。

2023-06-14 10:18:59 344

原创 mysql语句关键字执行顺序

2023-05-11 15:29:31 65 1

原创 json和接口对象的格式问题

在代码中可以使用setExpiredTime(Date date)等方法设置user的expiredTime,但是如果是通过json传递可能会有些时间方面的问题,比如启动服务后使用postman工具测试接口。一般来说我们在创建对象时会有一些时间方面的属性,比如以下对象。例如:2023年4月21日15点31分42秒000毫秒。3、在对象的属性上添加注解@JsonFormat。1、json里的时间属性用格式化的日期时间。2、json里的时间属性用时间戳。

2023-04-24 15:43:55 100

原创 Springboot读取非application.xml的其他xml配置文件

这表示了除了application.yml外还有application-jdbc.yml和application-es.yml两个配置文件,这样我们就可以在application-jdbc.ym里配置专门的jdbc配置属性,在application-es.yml里专门配置es的配置属性。例如:application-jdbc.yml。

2023-04-10 16:35:28 327

原创 前端点击按钮开启新页面(Ant Design)

组件中添加了三个ContactView的网格布局组件,每个ContactView展示不同的新组件内容。2、组件文件里(ContactDetail.tsx)创建组件内容。4、在数据对象文件里(data.ts)创建第三步里的VO对象。5、在需要添加点击开启新页面的按钮里设置跳转的路由网址。1、路由文件里(route.tsx)创建好路由。3、编写ContactView.tsx组件。

2023-04-03 14:56:28 1543

原创 SpringBoot启动时:Process finished with exit code 0

ps:博主项目pom文件里没看见配置,但是项目里已经引入了这个依赖的,所以重新加入进去后刷新maven重启项目起来了,然后不信邪把配置拿掉再次重启又可以了,无语,没搞懂为什么,可能是之前没刷新maven成功。启动项目遇到此问题时表明项目在启动完毕后退出了,并不是报错,如果想要让项目一直启动以用来debug测试等可以加上以下依赖。

2023-03-13 19:58:42 472

转载 shell变量$#,$@,$0,$1,$2的含义解释/Shell中的${}、##和%%使用范例

shell特殊符号

2022-12-14 11:53:44 2393

原创 quartz框架基础构建

Quartz框架简单使用

2022-11-18 16:05:57 481

原创 Shell的重定向符号>,>&

>,>&

2022-11-15 17:34:08 4919

原创 java实现重定向(springboot)

java重定向和参数获取

2022-11-15 17:23:01 10638

原创 zookeeper开启SASL,并且设置kafka如何连接

zookeeper开启sasl认证

2022-09-02 12:01:46 4663 1

原创 Couldn‘t store trigger ‘‘ for ‘‘ job:Couldn‘t retrieve job because the BLOB couldn‘t be deserialized

Couldn't store trigger 'A' for 'B' job:Couldn't retrieve job because the BLOB couldn't be deserialized: com.demo.TaskClass,local class incompatible: stream classdesc serialVersionUID = 12345, local class serialVersionUID = 6789

2022-06-17 10:48:44 4223

转载 Mybatis ResultMap和ResultType

ResultMap和ResultType: 两者都是表示查询结果集与java对象之间的一种关系,处理查询结果集,映射到java对象。resultMap:表示将查询结果集中的列一一映射到bean对象的各个属性。 <resultMap id="userResultMap" type="com.xxx.User"> <id column="id" property="id"/> <result column="user_id" propert

2021-12-28 11:36:02 827

原创 Java执行Linux命令

主要使用到两个类Runtime和Process//获取Runtime实例Runtime rt = Runtime.getRuntime();//command是字符串类型,为需要执行的linux命令Process p = rt.exec(command);// 查看硬盘空间//初始化缓冲阅读器BufferedReader in = null;//获取命令所得的缓冲流结果in = new BufferedReader(new InputStreamReader(p.getInputStre

2021-12-21 18:15:01 9422

转载 shell编程if的参数

1、shell 编程中使用到得if语句内判断参数–b 当file存在并且是块文件时返回真 -c 当file存在并且是字符文件时返回真 -d 当pathname存在并且是一个目录时返回真 -e 当pathname指定的文件或目录存在时返回真 -f 当file存在并且是正规文件时返回真 -g 当由pathname指定的文件或目录存在并且设置了SGID位时返回为真 -h 当file存在并且是符号链接文件时返回真,该选项在一些老系统上无效 -

2021-12-19 16:12:58 261

原创 Mysql 循环插入10000条数据

最近写app需要用到一些测试数据,大概一万条以上,就发现直接用insert 太慢了,不现实,于是查阅资料,可以使用存储过程去循环构建一万条,速度很快,大概20s左右,如下:DROP PROCEDURE IF EXISTS proc_initData;-- 如果存在此存储过程则删掉DELIMITER $ -- 将结束符改成$CREATE PROCEDURE proc_initData()BEGIN DECLARE i INT DEFAULT 1; WHILE i<=100

2021-12-08 12:03:44 6388

原创 Linux sed命令

本文梳理一下平时用到过的sed命令1、在某一行前或某一行后添加内容#在内容行的后一行添加新增内容sed -i '/新增内容/a\文件内容' test.txt#在内容行的前一行添加新增内容sed -i '/新增内容/i\文件内容' test.txta:append(附加),在某行后附加上一行i:insert(插入),在某行前插入一行例子:#查看test.sh内容[root@localhost ~]# cat test.shqweasdfzxcasdf#在包含'qw

2021-11-19 11:33:55 960

原创 错误:类 xxx 是公共的, 应在名为 xxx.java 的文件中声明

此错误是因为类名和类文件名不一致造成的,我之前遇到是因为类名书写没有遵循驼峰规则,于是改了一下类名,但是类文件名没有改,启动项目时报错。

2021-11-12 11:17:20 12423 1

原创 关于git冲突解决

目前遇到过两种冲突解决1、git cherry-pick commitId操作步骤:先手动解决冲突,解决完之后执行命令"git add .",然后执行"git cherry-pick --continue"2、git rebase branchName操作步骤:先手动解决冲突,解决完之后执行命令"git add .",然后执行"git rebase--continue"总结:解决完冲突,在continue之前先git add .一下,以前都是直接continue的,也没出现过问题,网上.

2021-11-04 11:39:27 360

原创 关于springboot注解@MapperScan和@ComponentScan

最近自己构建项目时,遇到了一个问题,在工作中可以使用注解@AutoWired来自动装配接口类进行调用,但是在自己构建的项目里使用不了会报错,于是经过各种查阅和项目阅读,知道了需要在启动类上加@MapperScan和@ComponentScan来将包注入到spring容器中,将其托管给spring容器。1、使用方法:在启动类上加,如下@MapperScan(basePackages = "com.example.demo.Repository")@ComponentScan(base...

2021-10-26 18:41:13 1815

原创 Springboot+Mybatis控制台打印sql语句

在application.yml文件中加入以下配置:#打印sql语句logging: level: com.iacp.dao : debugcom.iacp.dao:是你的dao包路径,也就是连接xml文件的Repository接口类所在的包路径如下图:这里可以写成com.example.demo.Repository,也可以写成com.example.demo。...

2021-10-26 17:50:39 118

原创 Spring boot项目Controller层返回实体过滤为null的属性

在写项目时,有时候会希望在接口层返回的字段中过滤掉为null值的字段,可以在返回的对象类上加上注解@JsonInclude(JsonInclude.Include.NON_NULL)举例如下:1、自定义返回方法体:import com.fasterxml.jackson.annotation.JsonInclude;import com.fasterxml.jackson.annotation.JsonInclude.Include;@JsonInclude(Include.NON_EM

2021-10-26 15:58:18 1507

原创 Mybatis中特殊符号>,<等写法

1、使用<![CDATA[ ... ]]>,被包含在<![CDATA[ ... ]]>中的sql会被分析器忽略,相当于直接写死,因此写mybatis的映射文件的时候最好只把特殊字符写在<![CDATA[ ... ]]>里,这样可以让分析器忽略的内容更少,防止分析器会忽略需要解析的标签。 < <![CDATA[ < ]]> <= ...

2021-10-24 17:39:06 7722

原创 对象和对象属性的转换

自定义对象Get类:/** *自定义对象Get */public class Get { private int id; private String name; private Status status; public Status getStatus() { return status; } public void setStatus(Status status) { this.status = statu

2021-10-24 17:17:27 248

原创 自定义java Pageable分页对象

前两天写service层的方法中需要对数据库中的数据进行分页查询,本来都是在接口层由前端传过来一个Pageable对象,在接口中对Pageable对象用注解进行定义,所以一时间不知道怎么写,后来得知,其实可以这样写:可以使用Pageable的实现类AbstractPageRequest的子类PageRequest.of定义/** * Creates a new {@link PageRequest} with sort direction and properties applied. *

2021-10-22 11:44:56 1922

转载 JAVA注解:@Pageable以及前端传参

Pageable 是Spring Data库中定义的一个接口,该接口是所有分页相关信息的一个抽象,通过该接口,我们可以得到和分页相关所有信息(例如pageNumber、pageSize等)。Pageable定义了很多方法,但其核心的信息只有两个:一是分页的信息(page、size),二是排序的信息。在请求中只需要在方法的参数中直接定义一个pageable类型的参数,当Spring发现这个参数时,Spring会自动的根据request的参数来组装该pageable对象。Spring支持的reques

2021-08-25 18:28:20 4512

原创 Mybatis中的#和$的区别

简单说#{}是经过预编译的,是安全的。而${}是未经过预编译的,仅仅是取变量的值,是非安全的,存在SQL注入。1、#{} 这种取值是编译好SQL语句再取值(预编译)例如:select * from stu where name = #{name or age = 17}编译过程:1、第一步:select * from stu where name = "?" 2、第二步:将#{}里的值代入到? 3、第三步:编译语句 编译后结果:selct *

2021-08-16 16:59:46 56

转载 MySQL中的排序(ORDER BY)

当使用 SELECT FROM 时,如果不排序,数据一般将以它在底层表中出现的顺序显示。这可以是数据最初添加到表中的顺序。但是,如果数据后来进行过更新或删除,则此顺序将会受到MySQL重用回收存储空间的影响。因此,如果不明确控制的话,不能(也不应该)依赖该排序顺序。关系数据库设计理论认为,如果不明确规定排序顺序,则不应该假定检索出的数据的顺序有意义。 ...

2021-08-16 15:25:32 6187

转载 fastjson序列化时与反序列化时常用特征值的中文注解

一、SerializerFeature(序列化)QuoteFieldNames,//输出key时是否使用双引号,默认为true UseSingleQuotes,//使用单引号而不是双引号,默认为falseWriteMapNullValue,//是否输出值为null的字段,默认为false WriteEnumUsingToString,//Enum输出name()或者original,默认为falseUseISO8601DateFormat,//Date使用ISO8601格式输出,默认为

2021-08-04 17:30:41 1991 1

原创 注解@RequestParam和@PathVariable

一、@RequestParamRequestParam的意思是请求参数,顾名思义,这是需要传入url的参数,在百度上搜索淘宝后,网址可能会跳转到https://www.baidu.com/?xxx=百度&xxx=nnn,在这里,问号之后的xxx=百度&xxx=nnn便是我们输入的请求参数,参数之间用&分隔,参数形如key=value。这里的请求参数可以当做用户自定义输入的,所以根据不同的用户输入,网页会有不同的处理输出。在代码中的书写格式如下: @Reques

2021-08-04 16:56:32 671 1

原创 SpringBoot-URL路由:@Controller和@RequestMapping

一、@Controller标注的类表示的是一个处理HTTP请求的控制器(即MVC中的C),该类中所有被@RequestMapping标注的方法都会用来处理对应URL的请求。该类也可以被@RequestMapping标注,此时该类中所有方法的url路径都在该目录下。在SpringMVC框架中,使用@RequsetMapping标注可以将URL与处理方法绑定起来,例如:@RestController//控制器@RequestMapping("/index")//绑定接口url:localhost:8

2021-08-04 15:48:13 1159

原创 Linux安装sh服务

一、如果Windows里有安装包的话,将sh文件传输到linux系统里# rz // 打开客户端文件选择器# sh xxxx.sh // 安装传入的sh服务选择要上传的文件 点击确定如果提示没有rz命令的话 需要安装命令 # yum install lrzsz //安装命令 ps:# sz filename //从服务端将filename文件传入客户端之后再传文件。二、使用wget命令安装wget https://xxx //https://xxx为下载地

2021-07-16 18:59:11 1959

原创 Linux修改时间

# date -s "2021-10-10 00:00:00" ======> ""内为设置时间设置完相关服务器需要重启

2021-07-16 18:48:33 33

原创 Git命令--合并提交

git log --oneline =========> 查看提交日志git rebase -i head~n ======> 修改提交 n:从Head起往前数几条此时进入了vi模式:set nu ======> 设置行数:m,ns/pick/s/ ======> 从第m行到第n行 修改pick为s退出保存,自动跳出提交信息的修改:set nu ======> 设置行数:m,n d =======> 删除从第m行到第n行 退出保存g..

2021-07-16 18:45:40 86

空空如也

空空如也

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

TA关注的人

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