- 博客(46)
- 资源 (3)
- 收藏
- 关注
原创 性能优化:redis缓存、redis池、jvm优化、tomcat优化
平台考试的时候,可能有大量考生访问认证中心进行登录操作,目前说是要抗住万级并发量,所以这几天对认证中心进行性能方面的优化。
2023-02-10 17:44:20 244
原创 canal使用说明:MySQL、Redis实时数据同步
canal是阿里开源的数据同步工具,基于bin log可以将数据库同步到其他各类数据库中,目标数据库支持mysql,postgresql,oracle,redis,MQ,ES等canal分成服务端deployer和客户端adapter,我们可以部署多个,同时为了方便管理还提供了一个管理端admincanal的数据同步流程如下图所示因为目前canal还不能直接通过配置就实现对redis的数据同步,因此我们需要自定义一下canal客户端,通过服务端将数据同步到客户端后,由客户端自定义操作同步到redis。
2023-02-10 17:28:41 4543 15
原创 关于shiro报The security manager does not implement the WebSecurityManager interface
这个错误的造成原因是当前项目是web项目,shiro对web/非web项目进行了区分,所以对web项目,需要用到DefaultWebSecurityManager@Bean public DefaultWebSecurityManager securityManager(ShiroRealm shiroRealm){ DefaultWebSecurityManager defaultSecurityManager = new DefaultWebSecurityManager();
2022-05-27 13:41:44 247
原创 【mybatis对map集合数据的处理】
mybatis对map集合的处理项目中遇到批量删除,但是又需要附带其他参数,不想新增VO类可以通过map的方式来进行删除操作例如:对考生进行批量删除,但是考生也需要分班级,所以要带上orgCode进行过滤//批量删除 @Transactional public Result batchStatusDeletePlus(String[] examineeIds) { //批量删除考生 empExamineeMapper.batchStatusDelet
2022-05-17 11:39:17 412
原创 身份验证错误,出现的函数不受支持
利用远程连接桌面查看远程nginx服务的过程中出现以下情况解决办法如下:搜索:gpedit.msc 并运行操作如下:引用:https://www.cnblogs.com/raswin/p/9018388.html
2022-03-03 15:30:41 163
原创 centOS上安装RabbitMQ及踩坑记录
因为公司在使用RabbitMQ,所以这几天在学习它,在安装初期遇到了个别问题,现在记录一下。我是通过centOS8来进行安装的,所以下载的文件格式是rpm后缀的文件,需要下载哪种文件格式可以进入官网进行查看,然后也是通过查看版本来避免坑爹的版本冲突,从官网上截下来的,可以参考:版本下载完毕,一共有三个:socat-1.7.3.3-2.el8.x86_64,rabbitmq-server-3.8.19-1.el8.noarch,erlang-24.0.4-1.el8.x86_64。亲测无冲突,可以放心食
2021-07-26 16:41:08 590
原创 centos进入root,通过cecureCRT传文件至Linux上
学习中遇到的一点点问题,做个记录。centOS进入Root模式:su -i通过cecureCRT传文件至Linux上::首先连接上远程Linux上后,需要下载一个插件,使用这个命令:**yum install -y lrzsz**尔后运行 rz 命令,跳出窗口,就可以直接添加需要的文件到Linux上(首先进入自己想要上传到的目录哦)示例图:...
2021-07-26 11:56:49 341
原创 Stream流:生成操作,中间操作,终结操作,收集操作以及它们的常用方法
Stream流作为函数式编程风格的体现,它将这种风格真正的引入到Java当中,我们可以通过直接阅读字面的意思来完美理解代码中的意思而无关逻辑,下面跟着示例一起练习学习,轻松搞定Stream流!第一步:生成操作Stream流生成的方式有以下几种,它是后续操作的基石。Collection体系集合使用默认方法stream()生成流, default Stream stream()Map体系集合把Map转成Set集合,间接的生成流数组通过Stream接口的静态方法of(T… values)生成流p
2021-06-24 11:17:19 2200 2
原创 Java接口组成(jdk8,jdk9)
接口在我们之前的印象中,它是所有方法都没有方法体的这么一个形式出现,接口中可以有抽象方法(public abstract修饰)和常量(public static final修饰),但是到了jdk8版本的时候,接口中可以有方法体的方法,它们分别是默认方法和静态方法,之后到了jdk9的时候又出现了私有方法。默认方法:主要解决的问题:当接口中有多个方法的时候,有的业务可能不需要接口中的全部方法,而只是需要部分方法,但是jdk8之前的版本是必须将所有的方法进行一个实现,这样就显得非常不友好,于是乎就出现了默认方
2021-06-23 10:21:04 536
原创 Lambda表达式的基本使用
lambda表达式:在学习lambda表达式之前,我们可以了解一下函数式编程思想:对于函数时思想:它会尽量忽略面向对象的语法:强调做什么,而不是以什么形式去做,现在学习的lambda表达式就是函数式编程思想的集中体现。格式()->():左边括号中是形参,右边的括号中则是代码块,☞具体需要做的事,中间的则是指向动作形参:1,形参是多个,参数之间需要使用逗号隔开,参数类型可以省略,但是不要只省略一个,要省略都得省略;2,如果没有参数则只留个空括号就行;3,如果只有一个参数,可以将左边的括号
2021-06-22 17:39:14 270
原创 Invalid packaging for parent POM com.csf:SpringBootAlibabaDemo:0.0.1-SNAPSHOT, must be “pom“ but is
子模块在继承父类pom的时候,project标红,并报Invalid packaging for parent POM com.csf:SpringBootAlibabaDemo:0.0.1-SNAPSHOT, must be “pom” but is "jar"根据翻译可知,“无效的打包父POM com.csf:SpringBootAlibabaDemo:0.0.1-SNAPSHOT,必须是’ POM ‘但目前是’jar‘ ”。这说明父POM的打包方式不对,所以我改成了POM,报错标识消失。记录一
2021-06-16 11:49:39 3442 2
原创 POI:利用apache对Excel文件进行存取操作
项目中需要对数据库中的数据以office中的格式进行导出,所以就在炮站学了一下POI,这个包专门提供了对Microsoft office格式档案读和写的功能,由apache公司提供。下面是相应的介绍需要使用到的对象的解释:现在记录一下他的相关api和使用方法,以备下次需要使用。引入jar包及依赖:<!-- https://mvnrepository.com/artifact/org.apache.poi/poi --><dependency> <grou
2021-06-15 17:21:12 360 4
原创 项目相关知识点复习与纪要(二)
@EqualsAndHashCode:这个注解是lombok里面的,表示如果需要重写Equals等方法的话就需要在实体类上面添加这个注解。@ApiResponse和@ApiResponses:这两个注解是属于swagger的,主要是对响应的信息进行一个标识。https://www.5axxw.com/wiki/content/q9eywdBeanUtils.copyProperties(,):属于BeanUtils工具类中的一个方法,主要作用是对两个属性方法差不多的类进行一个复制操作,逗号左边的
2021-06-11 17:30:19 102
原创 序列化之serialVersionUID的作用
这个问题的引出是因为我在公司项目中,实体类都是实现了序列化接口,我知道这样做是将对象的状态信息转换为可存储或传输的形式的过程。但是有一个疑问就是,为什么每个实体类实现了序列化接口后,总要设置serialVersionUID。如:public class Brand implements Serializable { private static final long serialVersionUID = 1L;通过搜索网上的大佬所总结知道了,serialVersionUID的作用主要是控制版
2021-06-11 14:03:14 1486
原创 mybatis-plus自动生成工具
学了一下mybatis-plus,整体上比mybatis简化很多,也方便很多,懒人福利,哈哈,记录一下代码生成的代码,以后就用它了!方式一:通过mybatis-plus-generator引入依赖:<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plusgenerator</artifactId> <version>3.3.1.tmp<
2021-06-11 11:13:32 2385 2
原创 mybatis-plus乐观锁报错:Parameter ‘MP_OPTLOCK_VERSION_ORIGINAL‘ not found
通过配置实体类(添加@version注解) @Version //充当乐观锁的角色,在多线程条件下,利用添加版本号的方式避免线程问题,需要创建一个配置类 private Integer version;和创建config类后,@Configurationpublic class HappyLockConfig { @Bean public OptimisticLockerInnerInterceptor optimisticLockerInnerInterceptor
2021-06-10 16:07:23 2829
原创 项目相关知识点纪要(一)
pom.xml文件:groupid和artifactId:定位项目(相当于经纬度一样)modules:模块,就跟汉译名一个意思,在项目中采用分布式的方式,加载一个父工程,其他子模块同步启动distributionManagement:本地Maven仓库的构件只能供当前用户使用,在分发到远程Maven仓库之后,所有能访问该仓库的用户都能使用你的构件。我们需要配置POM的distributionManagement来指定Maven分发构件的位置,如下: <distributionManag
2021-06-08 16:49:01 122
原创 Git:拉取,本地远程关联
以ssh为例:简单拉取:git clone进入项目分支:cd 项目名查看所有分支:git branch -al本地分支和远程分支进行关联:git pull origin master(以主分支为例)当项目中有多个分支的情况下:如既有master分支,也有develop分支拉取分支方法:git clone -b develop git@…/…git(以develop分支为例)如果需要将develop分支与远程分支进行关联,操作如下:首先还是进入项目:cd 项目名,默认是master分支切
2021-06-07 11:40:56 187
原创 关于spring-boot-maven-plugin找不到的解决方法
**关于spring-boot-maven-plugin找不到的解决方法**在构建spring-boot项目过程中,pom文件中的其他依赖全部引入正常,就最后的一个spring-boot-maven-plugin引入不正确,网上有很多解决方法,比如不添加版本号(针对之前引入过的有效,我之前引入过,),或者将本地仓库中的依赖全部删除等等,我是利用其中的一个解决的,因为我之前引入过,不添加还是找不到,索性直接进入Maven仓库查版本号,然后准备一个一个的引着试一试,果不其然,试了一个成功了。...
2021-06-03 10:32:26 4882 2
转载 Go语言出现:CreateProcess error=216, 该版本的 %1 与你运行的 Windows 版本不兼容。请查看计算机的系统信息,然后联系软件发布者
问题:原因及解决方法在go语言编译的时候,如果只是单单编译一个文件的话,package必须是main,意味着是可以单独编译的,在我写代码的时候,根据goland的提示,然后运行就出现了这个问题使用package main原文链接...
2021-02-22 08:23:07 2028 1
原创 会话:HTTP,Cookie,Session
关于会话管理的笔记。HTTPHTTP是简单的,是可扩展的,是无状态的, 有会话的HTTP是无状态的:在同一个连接中 两个执行成功的求之间是没有关系的。这就带来了一个问题。用户没有办法在同一个网站中讲行连续的交互。比如在一个电商网站里. 用户吧某个商品 加入购物车, 切换一个页面后再次添加了商品,这两次添加商品请求之间没有关联, 浏览器 无法知道用户终选择了哪些商品。而使用HTTP的头部圹展, HTTP Cookies就可以解决这个问 题。把Cookies 添加到头部中, 创建 一个会话让每
2020-12-09 19:47:05 101
原创 CSRF攻击的原理和spring security对CSRF攻击的解决方法
对于CSRF攻击的原理,直接上图然后解释一下一个用户通过浏览器成功登录一个网站,登陆成功后,服务器会返回一个该用户的唯一标识放入浏览器Cookie中,以此作为用户之后操作的唯一凭证。假设此时该用户在此网站中请求一个表单类的网页,这时候用户又打开了另外的一个网站,而这个网站是一个病毒网站,它直接窃取了Cookie信息,当然也包括唯一身份凭证(所以为什么说cookie不推荐保存重要信息,是有原因的),通过唯一身份凭证,病毒网站直接进行用户所做的表单提交,而服务器是通过这个凭证来匹配用户信息的,服务器这时候无
2020-11-27 17:38:39 5009 14
原创 EL1008E: Property or field ‘lastMessage‘ cannot be found on object of type ‘java.util.HashMap‘
Caused by: org.springframework.expression.spel.SpelEvaluationException: EL1008E: Property or field 'lastMessage' cannot be found on object of type 'java.util.HashMap' - maybe not public or not valid? at org.springframework.expression.spel.ast.PropertyOrFi
2020-11-27 00:02:08 4404 11
原创 Kafka的问题:另一个程序正在使用此文件,进程无法访问
我的Kafka版本是2.12-2.20,刚开始用的时候还没啥问题,项目新增功能时也没有涉及到它,但是启动它的时候,就在黑窗口报了以下错误,FileSystemException: D:\Maven\data\kafka-logs__consumer_offsets-28\00000000000000000000.timeindex: 另一个程序正在使用此文件,进程无法访问。网上的说法是:kafka试图清理超出保留策略的数据文件,从而引起了服务崩溃。–>https://blog.csdn.net/
2020-11-26 23:34:27 3066 3
原创 事务管理(常见并发异常)
学了又忘忘了还学!什么是事务- 事务是由N步数据库操作序列组成的逻辑执行单元,这系列操作要么全执行,要么全放弃执行。事务的特性(ACID)- 原子性(Atomicity):事务是应用中不可再分的最小执行体。- 一致性(Consistency):事务执行的结果,须使数据从一个一致性状态,变为另一个一致性状态。- 隔离性(Isolation):各个事务的执行互不干扰,任何事务的内部操作对其他的事务都是隔离的。- 持久性(Durability):事务一旦提交,对数据所做的任何改变都要记录到永久存储器
2020-11-05 23:37:59 876
原创 敏感字过滤方法(前缀树)
过滤敏感词的两种方法:** 第一种:当然利用replace直接进行替换,虽然这种方法可行,但是当遇到大量的用户输入时,就会相当消耗资源,在开发中并不可取**** 第二种:前缀树过滤敏感词**** 这种方式查找效率非常的高,但有一个弊端,就是消耗内存,因为使用前缀树的方法,首先是要将敏感词写入树的一个个节点当中,这些敏感词从哪里来呢?要么是将敏感词放入数据库中,要么就是将敏感词以文本形式放入MAVEN项目中的resource路径下,当然敏感词是有很多的,显然直接占用了内存资源
2020-11-04 16:32:04 1234 10
原创 小记:验证码操作
关于kaptcha,随机验证码的操作首先需要导入工具包,直接在maven仓库搜索(注意是这个头像,不要引错了,有几个名字重复的):<!--验证码--> <dependency> <groupId>com.github.penggle</groupId> <artifactId>kaptcha</artifactId> <version&g
2020-10-27 17:37:19 258
原创 利用spring boot练习的小项目记录:分页操作
利用spring boot练习小项目,里面用到了thymeleaf,记录一下其中的一个小段,分页操作,遇到了个别小细节需要注意,也在此记录巩固一下。mapper层:@Mapperpublic interface DiscussPostMapper {// (根据用户)查找所有文章 List<DiscussPost> findDiscussPost(int userId,int offset, int limit); //总条数 int DiscussPo
2020-10-22 16:59:56 278 2
原创 Consider defining a bean of type ‘com.csf.mapper.UserMapper‘ in your configuration
SpringBoot整合mybatis时,启动报错:**Field userMapper in com.csf.controller.UserController required a bean of type ‘com.csf.mapper.UserMapper’ that could not be found.The injection point has the following annotations:- @org.springframework.beans.factory.annotati
2020-10-18 17:30:42 958 4
原创 Spring Boot:application/x-www-form-urlencoded;charset=UTF-8‘ not supported
Spring -Boot:Resolved [org.springframework.web.HttpMediaTypeNotSupportedException: Content type ‘application/x-www-form-urlencoded;charset=UTF-8’ not supported]问题的出现是这样的,我从前端界面提交数据信息,然后在controller层以对象的形式接收数据前端界面: <form action="/user/saveuser" meth
2020-10-18 11:55:59 7843 12
原创 database相关的优化
一:从JDBC编程的角度讲,用preparedStatement一般来说比Statement性能高,因为在使用时,PreparedStatement会将SQL语句进行预编译,每次执行的时候只需要将参数设置给相应的占位符就可以运行。而使用Statement时,SQL语句时每次都要进行编译,所以PreparedStatement的效率相对较高二:有外键约束时会影响到插入和删除性能,如果程序能够保证数据的完整性,那么我们在设计数据库时可以去掉外键(就比如免检产品,就是为了提高效率,选择充分相信产品的制造商)三
2020-10-03 14:25:03 1180 5
原创 关于:com.github.pagehelper.PageHelper cannot be cast to org.apache.ibatis.plugin.Interceptor的解决办法
Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: java.lang.ClassCastException: com.github.pagehelper.PageHelper cannot be cast to org.apache.ibatis.plugin.Interceptor at org.apache.ibatis.exceptions.Excepti
2020-10-02 17:29:56 1447
Restlet Client 接口测试工具
2023-02-23
rabbitmq-server-3.8.19-1.el8.noarch.rpm
2021-07-26
socat-1.7.3.3-2.el8.x86_64.rpm
2021-07-26
erlang-24.0.4-1.el8.x86_64.rpm
2021-07-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人