自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

记录点滴

心所愿,力必至!

  • 博客(87)
  • 资源 (6)
  • 收藏
  • 关注

原创 spring boot 修复 Spring Framework URL解析不当漏洞(CVE-2024-22243)

一开始我们尝试直接替换spring-web的版本,但是只替换这一个包的话项目启动会报错,通过实践和反复尝试,我们对spring相关的jar包都进行了覆盖,这样可以保持springboot的版本号不变。如果现有项目的大版本是3.x,直接升级即可,但是有些老项目还停留在2.x的版本,官方并没有针对2.x发布新版本,从2.x直接升级到3.x,代价又比较大。其它已经不受官方支持的版本(5.1.x,5.2.x)同样受到影响,更新到受官方支持的安全版本。查看 springboot的版本,只有最新的。

2024-02-28 17:34:32 3597 3

原创 swagger 未授权访问漏洞修复,这可能是你看到的最好的解决方案!

大多数人都是直接禁用swagger,这样一来就给开发人员带来了负担,因为需要解决接口文档的问题,相信大家用惯了swagger文档,都不愿意自己再去手动写接口文档了。swagger未授权访问主要的路径如下,根据版本不同或者自定义的路径,可能会有一定的差异,自定义路径的只需要把自己的路径添加进来即可。通过以上方式,即解决了swagger未授权访问的问题,又解决了通过token授权访问的问题!怎样才能方便的修复未授权访问的漏洞,同时又能通过验证正常访问swagger文档呢?的方式对请求进行验证,

2023-09-26 15:22:13 10160

原创 Spring Boot 入门实战教程

Spring Boot 2.0 入门实战教程开发环境:JDK1.8或以上源码下载:https://pan.baidu.com/s/1Z771VDiuabDBJJV445xLeA欢迎访问我的个人博客:https://blog.csdn.net/ldy1016说明:学习spring boot之前,需要先了解spring mvc。本人菜鸟,有不对的地方欢迎指正,谢谢支持!一、sp...

2018-10-26 16:10:05 1508

原创 springdoc-openapi-用户界面如何将请求设置为HTTPS

当我们的服务接口需要通过HTTPS访问时,通过swagger可视化页面请求接口的时候,发起的是HTTP请求,导致请求无法到达后端,影响测试。列表中选择指定的接口根路径即可,接口根路径会根据你的选择自动变更。SpringDoc的配置类中注入配置信息,并设置服务列表。如图所示,在swagger页面的。1、将服务的地址添加到配置文件中。

2024-04-02 16:05:14 649

原创 springboot3.x集成nacos踩坑,并实现多环境配置

自动集成的org.yaml.snakeyaml依赖包中相关类里面的方法不存在,于是尝试替换该依赖包,经过多个版本尝试,在pom.xml里面添加如下版本的依赖包进行覆盖后,终于能正常启动了!完成前面的工作之后,正常情况下nacos的集成就算成功了,但是,并没有想象的那么顺利,我们启动项目,意外发生了,控制台报错,项目启动失败!nacos2.0版本相比1.X新增了gRPC的通信方式,因此需要增加2个端口。nacos2.x版本用户,请添加下面的依赖。nacos1.x版本用户,请添加如下依赖。

2024-03-07 13:10:45 1298 4

原创 springboot2.x升级到3.x注意事项汇总

随着Spring Framework URL解析不当漏洞(CVE-2024-22243)的发布,springboot升级到3.x迫在眉睫,2.x的版本官方并未提供该漏洞的修复版本,后续应该也不会再发布新的版本。2.x升级到3.x是一次大的跨越,接下来,本人结合实践经验,浅淡一下需要注重的地方。

2024-03-06 16:16:07 740 3

原创 springboot3.x集成SpringDoc Swagger3

近期将springboox2.x升级到了3.x,索性将swagger2也同步升级到swagger3。本人提供的解决方案就是通过过滤器的方式对请求进行验证,请求的时候需要在链接后面加上我们自定义的token参数,通过验证token判断是否是合法的访问,注意,添加过滤器后需要在启动类上加上

2024-03-06 16:09:16 998

原创 easypoi导出excel在苹果端微信内打不开问题解决

出现这种情况,用户可以选择用其他软件打开,但是体验不太好,用户会认为文件有问题,其实用wps等办公软件是能够正常打开的,那么如何解决在微信内打开的问题呢?后端通过easypoi导出的数据在mac或者苹果手机上的微信内打不开,在安卓或者windows端的微信内打开正常。其实很简单,只需要在代码里面。

2024-02-29 15:34:15 365

原创 java Concurrent 线程安全的集合类

是一个线程安全的哈希表实现,它支持高并发的读写操作。它采用了分段锁的机制,将整个哈希表分成多个段,每个段都有一个独立的锁,不同的线程可以同时访问不同的段,从而提高并发性能。:是一个线程安全的动态数组实现,它通过在修改操作时创建一个新的数组来实现线程安全。它支持高并发的读写操作,并且提供了有序的遍历功能。:是一个线程安全的无界队列实现,它采用了无锁的并发算法,支持高并发的入队和出队操作。:是一个线程安全的双端队列实现,它采用了无锁的并发算法,支持高并发的入队和出队操作。:是一个线程安全的集合实现,它基于。

2023-11-15 15:09:58 129

原创 SpringBoot修复Spring AMQP反序列化漏洞(CVE-2023-34050)

问题描述:2023年10月 Spring官方披露 CVE-2023-34050 Spring AMQP反序列化漏洞漏洞。由于 SimpleMessageConverter 或 SerializerMessageConverter 默认未配置白名单,导致可以反序列化任意类。新版本中在未配置白名单的情况下则不允许反序列化任意类。解决的建议:1.spring-amqp版本低于2.4.17的用户应升级到2.4.172.spring-amqp是3.0.0至3.0.9版本的用户应升级至3.0.10

2023-10-27 18:34:26 3368 14

原创 springboot log4j2远程代码执行漏洞修复

一、影响范围2.0<=Apache log4j2<=2.16.0影响判断方式:用户只需排查Java应用是否引入log4j-api,log4j-core两个jar。若存在应用使用,极大可能会受到影响。二、解决办法1、排除log4j的依赖

2021-12-10 10:27:41 817 3

原创 springboot redis 高并发遇到的坑:io.netty.util.internal.OutOfDirectMemoryError: failed to allocate 901775360

这个是使用了lettuce的原因,lettuce有此bug,解决办法 改为使用jedis,具体操作如下一、在pom.xml中添加排除lettuce包并添加jedis的依赖<!-- redis conf --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</arti

2021-09-23 08:38:53 3009

原创 java随机打乱List中的数据

public static void main(String[] args) { List<String> list = new ArrayList<String>(); list.add("张三"); list.add("李四"); list.add("王五"); list.add("赵六"); //把随机排序的数据存储在 listRandom 中 .

2021-01-28 10:37:25 816

原创 解决idea的.gitignore有时不起作用的问题

进入到你的项目目录,依次执行下面的命令git rm -r --cached .git add .git commit -m 'update .gitignore'

2020-10-19 11:31:16 184

原创 gin 设置允许跨域请求

话不多说,直接上代码1、编写跨域处理中间件/** * @Author: ldy * @Description: 跨域访问处理 * @File: CrosHandler * @Version: 1.0.0 * @Date: 2020/4/28 09:39 */package handlerimport ( "activity/common/result" "github.com/gin-gonic/gin" "net/http")//跨域访问:cross origi

2020-06-11 16:40:24 5277

原创 mac os 解决 unsafe use of relative rpath libpq.5.dylib

sudo mv /usr/lib/libpq.5.dylib /usr/lib/libpq.5.dylib.old sudo ln -s /Library/PostgreSQL/你的版本/lib/libpq.5.dylib /usr/lib

2020-05-19 10:48:52 751

原创 go xorm 优雅方式实现动态条件查询

关键代码如下 var persons []domain.Person session := engine.Where("1=1") if param.ActivityId != nil { session = session.And("activity_id = ?", param.ActivityId) } if param.Sex != nil { sess...

2020-05-06 11:08:13 3704 6

原创 访问swagger页面控制台抛异常问题解决

当我们访问swagger页面的时候,有时候会报类型转换的异常,但是不影响项目正常运行,有强迫症的人肯定觉得很难受!出现这种问题,是由于你的参数列表中包含数字类型的参数(Long、Integer、long、int),我们只需要给这些参数的swagger说明加上默认值即可,即给example属性设置默认值,例如: 1、参数直接在controller层的方法里面 ...

2019-11-23 12:32:48 1695

转载 mysql 与 java 类型对照表

类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) VARCHAR L+N VARCHAR java.lang.String 12 CHAR N CHAR java.lang.String 1 BLOB L+N BLOB java.lang.byte[] -4 TE...

2019-09-24 14:44:21 757

原创 java RestTemplate put和delete请求无返回值问题解决

最近的项目中涉及到使用RestTemplate 调用请求方式为delete和put的接口,但是RestTemplate提供的delete()和put()方法都没有返回值,但是我要调用的接口是有返回值的,网上的资料很多都是写的调用exchange()方法来实现,但是基本上都没有给出完整实例,导致我在参考他们的代码的时候会出现参数无法传递的问题,目前我已经解决该问题,现将我的解决方法分享...

2019-08-28 16:21:20 7469 2

原创 java快速搞定excel导出(easypoi)

一、在pom.xml中添加easypoi的maven依赖 <dependency> <groupId>cn.afterturn</groupId> <artifactId>easypoi-base</artifactId> <version&g...

2019-07-08 11:37:50 2121 1

原创 mysql 常用备份命令

1、备份db1数据库中所有表(包括表结构和数据,不包括创建db1数据库的语句)mysqldump -h192.168.1.10 -uroot -p db1 > xxx.sql2、备份db1数据库中所有表(包括表结构和数据,包括创建db1数据库的语句)mysqldump -h192.168.1.10 -uroot -p --databases db1 > xxx.sql...

2019-07-05 10:16:13 21307 1

原创 Java Redis缓存操作(哨兵模式)

一、添加jedis的maven依赖<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version></dependency>二、在...

2019-06-21 15:54:52 1568

原创 Java Redis缓存操作(集群模式)

一、添加jedis的maven依赖<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version></dependency>二、在...

2019-06-21 15:51:14 1122

原创 Java Redis缓存操作(单机模式)

一、添加jedis的maven依赖<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version></dependency>二、在...

2019-06-21 15:13:28 460

原创 @NotEmpty、@NotNull、@NotBlank 的区别

1. @NotEmpty:用于 String、集合、Map、数组Asserts that the annotated string, collection, map or array is not {@code null} or empty.加了@NotEmpty的String类,Collection、Map、数组,是不能为null或者长度为0的(String、Collection、Map...

2019-06-19 09:14:55 1206

原创 Http工具类 HttpUtils

import java.io.IOException;import java.nio.charset.Charset;import java.security.KeyManagementException;import java.security.KeyStore;import java.security.KeyStoreException;import java.security.N...

2019-05-09 17:08:51 17087 4

原创 spring boot mybatis 打印sql语句

在application.properties文件中添加mapper层的日志配置即可打印sql语句,如:#显示sqllogging.level.com.ldy.bootv2.demo.mapper=debugcom.ldy.bootv2.demo.mapper是我的xxxMapper.java文件所在的目录...

2019-04-26 16:48:54 727

原创 spring boot 多数据源实现

1、在application.properties文件中配置多个数据源#主数据源spring.datasource.core.driver-class-name=com.mysql.jdbc.Driverspring.datasource.core.jdbc-url=jdbc:mysql://127.0.0.1:3306/boot_v2?useUnicode=true&chara...

2019-04-19 16:20:15 593

原创 spring boot cache 整合 redis

关于 Spring Cache 注解请查看:Spring Cache 注解详解Redis的安装教程:https://blog.csdn.net/LDY1016/article/details/76083162下面进入正题。。。1、在pom.xml中添加redis的依赖<dependency> <groupId>org.springframework....

2019-04-17 15:39:44 1968

原创 Spring Cache 注解详解

@CacheConfig:在类上面统一定义缓存的名字,方法上面就不用标注了,表示该类所有的方法都是支持缓存的,我们一般不使用该注解,直接通过@Cacheable自己配置缓存集的名字来定义。@Cacheable:配置了getOne函数的返回值将被加入缓存。同时在查询时,会先从缓存中获取,若不存在才再发起对数据库的访问。该注解主要有下面几个参数:@Cacheable(value = "use...

2019-04-17 15:21:17 1464

原创 java面试题回顾

1、 重载(overload)和重写(override)的区别?重载的方法能否根据返回类型 进行区分?方法的重载和重写都是实现多态的方式,区别在于前者实现的是编译时的多态性,而后者实现的是运行时的多态 性。重载发生在一个类中,同名的方法如果有不同的参数列表(参数类型不同、参数个数不同或者二者都不同)则视为 重载;重写发生在子类与父类之间,重写要求子类被重写方法与父类被重写方法有相同的返回类型,...

2019-03-20 16:42:59 430 1

原创 Spring Cloud 服务注册之 consul

一、consul安装部署下载地址:https://www.consul.io/downloads.html1、解压,我这里放在 E:\dev\consul-1.4.3目录下2、配置环境变量3、执行命令 consul agent -dev 启动consul4、打开网址:http://localhost:8500 查看consul管理界面二、spring clo...

2019-03-20 15:57:25 662

原创 java实现四个常见的排序算法

package com.example.demo;import java.util.Arrays;public class SortTest { /** * 冒泡法排序<br/> * <li>比较相邻的元素。如果第一个比第二个大,就交换他们两个。</li> * <li>对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一...

2019-02-20 14:26:33 424

原创 看了又记不住的JAVA知识整理

一、JAVA基础1.1 、JAVA中的数据类型(1) 基本数据类型数据类型 大小 位置范围 默认值 备注 byte 8位 -128(-2^7)~127(2^7-1) 0   short 16位 -32768(-2^15)~32768(2^15-1) 0   int 32位 -2^31~2^3...

2019-01-23 15:27:02 2040

原创 java递归生成树形结构菜单

一、mysql表,数据自行准备CREATE TABLE `sys_menu` ( `id` int(11) NOT NULL AUTO_INCREMENT, `pid` bigint(20) DEFAULT NULL, `title` varchar(255) CHARACTER SET utf8 DEFAULT NULL, `path` varchar(255) CHARA...

2019-01-04 16:59:01 16814 27

原创 spring boot 设置允许跨域访问遇到的问题解决

        前后端分离的项目中会涉及到跨域访问的问题,我这里后端采用的是spring boot框架,可以在过滤器中添加允许跨域的设置//设置允许跨域访问response.setHeader("Access-Control-Allow-Origin", "*");response.setHeader("Access-Control-Allow-Methods", "*");respo...

2019-01-03 18:38:35 5569 1

原创 js字符串字母大小写互转

  需求:把一个字符串中的大写字母转为小写,小写字母转大写function parseStr (str){ var result = ''; for(var i= 0;i&lt;str.length;i++){ var temp = str.charAt(i); var code = temp.charCodeAt(); if(...

2019-01-02 17:57:33 3375

原创 maven打war包配置

在pom.xml文件中添加如下配置&lt;build&gt; &lt;finalName&gt;test&lt;/finalName&gt; &lt;plugins&gt; &lt;plugin&gt; &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;

2018-12-24 16:55:59 2063

原创 通俗易懂的RESTful API实践详解(含代码)

一、什么是RESTful        REST 是面向资源的,这个概念非常重要,而资源是通过 URI 进行暴露,URI 的设计只要负责把资源通过合理方式暴露出来就可以了,对资源的操作与它无关,操作是通过 HTTP动词来体现。所以REST 通过 URI 暴露资源时,会强调不要在 URI 中出现动词,而是对一类资源只提供一个url,通过GET、POST、PUT、DELETE请求来指定要执行的操作...

2018-12-20 11:51:34 6199 1

Easy UI图标扩展

最近做的项目中,前台框架都是用的Easy UI,在使用的过程中发现Easy UI本身提供的图标不够用,所以我自己在icon.css文件中新添加了一些常用的图标,图标源文件放在themes/icons/custom文件夹下,其实很简单,只需要将custom文件夹拷到你的icons文件夹下,将icon.css拷过去覆盖你的icon.css文件即可,各图标的使用下载后里面有文档说明,也有Easy UI原本的图标使用说明,会Easy UI的朋友们一看就懂了,这里不多解释。

2014-11-13

easyui datagrid插件 datagrid-detailview.js

支持datagrid扩展,在一条记录下面可以嵌套一个子datagrid,切记要在页面中引入该js

2014-07-09

jquery.easyui前台框架

一个独立的jquery easyui 前台框架,包你满意,可以整合到任何开发语言搭建的后台中

2014-07-09

创建存储过程与触发器实验

存储过程可以使得程序执行效率更高、安全性更好,因为过程建立之后 已经编译并且储存到数据库,直接写sql就需要先分析再执行因此过程效率更高,直接写sql语句会带来安全性问题,如:sql注入 建立过程不会很耗系统资源,因为过程只是在调用才执行

2013-06-01

网络工程师入门教程2

网络工程师是通过学习和训练,掌握网络技术的理论知识和操作技能的网络技术人员。网络工程师能够从事计算机信息系统的设计、建设、运行和维护工作。 和软件工程师是不一样的。 网络工程师的就业范围相当宽广,几乎所有的IT企业都需要网络工程师帮助用户设计和建设计算机信息系统;几乎所有拥有计算机信息系统的IT客户都需要网络工程师负责运行

2013-06-01

网络工程师入门教程1

网络工程师是通过学习和训练,掌握网络技术的理论知识和操作技能的网络技术人员。网络工程师能够从事计算机信息系统的设计、建设、运行和维护工作。 和软件工程师是不一样的。 网络工程师的就业范围相当宽广,几乎所有的IT企业都需要网络工程师帮助用户设计和建设计算机信息系统;几乎所有拥有计算机信息系统的IT客户都需要网络工程师负责运行

2013-06-01

空空如也

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

TA关注的人

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