自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(34)
  • 资源 (5)
  • 收藏
  • 关注

原创 java实现模板填充word,word转pdf,pdf转图片

在日常开发中,我们经常需要将文件操作,比如:1. 根据模板填充word2. word文档中插入图片3. Word文档转换为PDF格式4. 将PDF文件转换为图片。

2024-04-28 16:48:44 2287 2

原创 Springboot 批量增加redis中的数据,并批量设置过期时间

一个功能需要一次性解析大量数据放到 Redis 中缓存,并且每个 key 都需要设置过期时间,但是 Redis 本身命令不支持批量设置过期时间,RedisTemplate 中也没有相关的方法。可以看到,普通遍历上传因为每次都需要发起一次请求,造成多次请求消耗,从而占用大量时间,而使用批量上传可以通过。RedisTemplate使用PipeLine管道命令来批量修改过期时间

2024-02-01 15:02:13 1630

原创 Spring Boot + EasyExcel实现Excel文件导入导出

easyexcel重写了poi对07版Excel的解析,一个3M的excel用POI sax解析依然需要100M左右内存,改用easyexcel可以降低到几M,并且再大的excel也不会出现内存溢出;03版依赖POI的sax模式,在上层做了模型转换的封装,让使用者更加简单方便。

2024-01-26 14:45:45 1399

原创 安装阿里云CLI之配置阿里云凭证信息

有时候需要再主机上通过 OpenAPI 的调用访问阿里云,并完成控制,此时就需要在服务器上安装阿里云CLI,并完成账号的设置。

2024-01-05 17:41:07 1031

原创 阿里云服务器 使用Certbot申请免费 HTTPS 证书及自动续期

Certbot是一款免费且开源的自动化安全证书管理工具,由电子前沿基金会(EFF)开发和维护,是在Linux、Apache和Nginx服务器上配置和管理SSL/TLS证书的一种机制。Certbot可以自动完成域名的认证并安装证书。

2024-01-05 15:01:55 5518 1

原创 cocos creator开发、小游戏开发免费素材资源

1、首先熟悉官方的手册和api文档,文档还是比较详细,游戏的方方面面都涉及到了4、音频素材等5、2D,3D原画模型素材6、 可试玩广告(playable)打包工具。

2024-01-04 16:23:11 1044

原创 Spring boot 整合 Okhttp3 并封装请求工具

OkHttp是一个高效、灵活、易于使用的HTTP客户端库,具有高性能,功能强大,使用简单,兼容性好,应用广泛等特点

2023-08-30 11:21:34 6422 2

原创 java 通过注解实现数据动态脱敏

数据脱敏是指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护。在涉及客户安全数据或者一些商业性敏感数据的情况下,在不违反系统规则条件下,对真实数据进行改造并提供测试使用,如身份证号、手机号、卡号、客户号等个人信息都需要进行数据脱敏。

2023-05-19 17:58:24 2947 5

原创 java+springboot 做日志链路追踪

日志链路追踪(Log Path Tracing)是Spring Boot项目的一项关键功能,它通过将日志消息的源头与其对应的请求或响应路径相关联,实现对日志数据的可视化跟踪。

2023-05-19 17:04:48 2198

原创 JAVA 力扣练习题:回文数

给你一个整数 x ,如果 x 是一个回文整数,返回 true;否则,返回 false。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。

2022-08-30 14:52:36 1280

原创 java后端:nacos 实现动态配置

使用nacos动态配置的原因: properties 和 yaml 是写到项目中的,好多时候有些配置需要修改,每次修改就要重新启动项目,不仅增加了系统的不稳定性,也大大提高了维护成本,非常麻烦,且耗费时间。使用动态配置,则可以避免这些麻烦,可以动态的修改配置,不需要重新启动项目。nacos配置中心,可以使得配置标准化、格式统一化,当配置信息发生变动时,修改实时生效,无需要重新重启服务器,就能够自动感知相应的变化,并将新的变化统一发送到相应程序上,快速响应变化。...

2022-08-29 17:00:45 4056

原创 Linux CentOS 操作手册记录

日常简单操作 Linux 指令

2022-06-29 15:51:34 497

原创 JAVA 身份证号码的验证

Java居民身份证号校验规则,获取身份证号码的生日,性别,校验身份证号格式是否正常。

2022-06-22 14:27:24 11248 3

原创 JAVA:获取用户访问ip地址

获取用户真实IP地址:不使用request.getRemoteAddr();的原因是有可能用户使用了代理软件方式避免真实IP地址;可是,如果通过了多级反向代理的话,X-Forwarded-For的值并不止一个,而是一串IP值,究竟哪个才是真正的用户端的真实IP呢?答案是取X-Forwarded-For中第一个非unknown的有效IP字符串。如:X-Forwarded-For:192.168.1.110, 192.168.1.120, 192.168.1.130,192.168.1.100工具代码

2022-02-15 11:22:48 12395 4

原创 Centos7通过yum源安装Mysql8

Centos7通过yum源安装Mysql8文章目录Centos7通过yum源安装Mysql81、先检查系统是否具有旧mysql,如果有则删除,没有直接进入第2步2、在Centos7中下载Mysql83、 安装Mysql84、设置初始密码5、卸载Yum Repository6、设置远程访问7、常用的Mysql命令1、先检查系统是否具有旧mysql,如果有则删除,没有直接进入第2步rpm -qa | grep mysql# 普通删除模式rpm -e mysql # 强力删除模式,如果使用上面

2022-01-05 14:59:44 1379

原创 Java版本:给你一个整型数组 nums ,在数组中找出由三个数组成的最大乘积,并输出这个乘积

给你一个整型数组 nums ,在数组中找出由三个数组成的最大乘积,并输出这个乘积分析思路解题方法分析三个数组成的最大乘积:则只需要找到绝对值较大的数做乘法,分析得到的结果即可如果数组中全是非负数,则排序后最大的三个数相乘即为最大乘积;如果全是非正数,则最大的三个数相乘同样也为最大乘积。如果数组中有正数有负数,则最大乘积既可能是三个最大正数的乘积,也可能是两个最小负数(即绝对值最大)与最大正数的乘积。思路想要找到符合的数字,则有两种:Java自带的数组排序线性扫描解题方法排序法

2022-01-04 16:40:22 920

原创 JAVA:浅谈自定义注解

Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。Java 语言中的类、方法、变量、参数和包等都可以被标注。和 Javadoc 不同,Java 标注可以通过反射获取标注内容。在编译器生成类文件时,标注可以被嵌入到字节码中。Java 虚拟机可以保留标注内容,在运行时可以获取到标注内容 。 当然它也支持自定义 Java 标注。自定义注解:1.自定义注解需要使用 @interface 来开发,类似于开发一个接口//声明一个名字为Note的注解public

2020-07-02 16:52:57 289 1

原创 JAVA EE比较完整的注册界面,前端实现数据校验篇(第一篇,前端)

JAVA EE比较完整的注册界面,前端实现数据校验项目资料,注册页面完整的代码结合CSS和jQuery实现一个完整的注册前端页面,拥有数据校验功能,先上图看看效果:在没有任何输入的情况下,不允许提交,并且要提示该项不能为空同时也需要校验,用户是否输入了密码,两次密码是否一致,是否输入了正确的邮箱格式代码片段:首先要在HTML中的标签中,引入所需要的文件,就是我们的CSS文件和JQuery文件<!-- 自己编写的CSS文件 --> <link rel="stylesh

2020-06-18 10:56:33 838

原创 JAVA版本:给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。

题:假设我们的环境只能存储得下 32 位的有符号整数,给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。分析:当数字进行反转的时候,就容易出现数据溢出的可能假如,13145不会出现溢出异常,但是54131就会出现溢出的可能则,需要判断的是,数据是否会溢出。而32位,正好是int数据,则,每次翻转的数据只要在int范围内则可以。 public static void main(

2020-06-08 21:01:06 2722 3

原创 JAVA版本: 实现简单链表,并给定两个非空链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,每个节点只能存储 一位 数字。实现方法将这两个数相加起来,并返回一个新的链

题目:实现简单链表,并给定两个非空链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,每个节点只能存储 一位 数字。实现方法将这两个数相加起来,并返回一个新的链表来表示它们的和。import jdk.nashorn.internal.ir.IndexNode;import java.util.LinkedList;import java.util.List;public class LeetCode_1 { public static void main(Str

2020-06-04 11:12:24 540

原创 JAVA版本:使用二分法查找数组中的数据

使用二分法查找数组中的数据:分析:二分法查找适用于数据量较大时,但是数据需要先排好顺序。主要思想是:(设查找的数组区间为array[low, high])(1)确定该区间的中间位置K(2)将查找的值T与array[k]比较。若相等,查找成功返回此位置;否则确定新的查找区域,继续二分查找。时间复杂度1.最坏情况查找最后一个元素(或者第一个元素)Master定理T(n)=T(n/2)+O(1)所以T(n)=O(log2n)2.最好情况查找中间元素O(1)查找的元素即为中间元素(奇数长度数列的正中间,

2020-06-02 19:59:58 1360

原创 JAVA版本,线程四:线程实现卖票程序(加锁,线程数据有顺序,安全顺序)

PS.名字什么的不重要,改成了糖果,效果是一样的。不考虑顺序的卖票线程程序,线程不安全模式将票改成了糖果:public class CandyDemo { public static void main(String[] args) throws IOException { //读取配置文件:.properties Properties p = new Properties(); //使用配置文件,可以随时修改配置文件从而改变数据传输

2020-05-29 15:37:58 254

原创 JAVA版本,线程三:线程实现卖票程序

PS.名字什么的不重要,改成了糖果,效果是一样的。不考虑顺序的卖票线程程序,线程不安全模式将票改成了糖果:/*线程加强:让四个小朋友跑步抢一百颗糖,一次只能拿一颗,先跑到了就拿到糖,然后重新开始跑。(PS:糖吃多了会长虫牙) */package cn.tedu.thread;public class CandyDemo { public static void main(String[] args) { //将糖的数量定下来,创建代表糖的类 Candy

2020-05-29 14:14:31 356

原创 JAVA版线程基础案例二:实现Runnable完成线程

实现Runnable完成线程,这样的好处是灵活,因为可以继承其他类同时也要重写run()方法来描述线程的任务信息,由新的类的 对象来构建Thread类的对象,调用strat方法来开启线程(这种方式常用)线程竞争关系图:public static void main(String[] args) { RDemo r=new RDemo("111"); //由于没有继承Threa类,所以没有start()方法来启动线程 //所以需要创建线程对

2020-05-29 11:00:15 398

原创 JAVA版,线程初级入门案例一:继承Thread类创建线程

进程:计算机需要执行多个程序,所以需要分成多个小任务,每一个就是一个进程线程:进程可以分为多个可执行的小任务,每一个就是一个线程计算机上的任务是由CPU来执行的,在某个时间点,某个核中只能执行一个进程。而进程是由线程组成,所以同一时刻CPU只能执行某个线程多线程:线程的工作职责分为和CPU交互或者和硬件交互,当线程和硬件交互时,CPU处于空闲状态,多线程则可以提高CPU的利用率(理论上最好状态是100%)创建多线程方式:继承Thread类线程竞争图://main方法是主线程,

2020-05-29 10:36:23 317

原创 JAVA版本:给定一个字符串,返回字符串中小写英文字母的个数、数字个数以及其他字符的个数

给定一个字符串,返回字符串中小写英文字母的个数、数字个数以及其他字符的个数方法分析:使用replaceAll()方法,逐一删除字符串中的相关数据,类型个数=原长度-新长度public static void main(String[] args) { String str ="右上角求关注dkKAHDSFjfoiDSGfdgf356321wsafku"; Coun_St(str); }//给定一个字符串,返回字符串中小写英文字母的个数、数字个数以及其他字符的个数

2020-05-28 17:28:08 1127

原创 JAVA版本:使用字节流完成文件的复制

使用字节流完成文件的复制计算机按照二进制进行存储,无论你存储的是什么数据,底层都是二进制的数据流,一般读取文件可以按照字符流和字节流两种方式读取,读取文件之后通过相应的编码软件进行解码,就能变成不同的文件。我们对数据的操作也只是对底层数据的改变进行操作,使用字节流来拷贝文件,能让我们跟容易理解底层数据的迁移方式。其实我只是觉得自己代码的迁移比系统自带的拷贝更加的快。so,直接看代码: public static void main(String[] args) throws IOException

2020-05-26 20:00:49 833

原创 JAVA版本:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。

题目:求s=a+aa+aaa+aaaa+aa…a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。题目分析:每次累加的都是a的n连,所以要获取每一次相加的数值获取值的方法:m=m+a;a=a*10;public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.println("请输入你要计

2020-05-21 16:09:46 3563

原创 JAVA版本:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数

题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。题目分析:统计某一种类型的数量的时候,只要将特定的类型重字符中取出,用原来的长度-剩下的长度=某个特定类型的数量。而正则表达式能很快的取出其中的指定类型。 public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("请输入需要分类的字符串:"); //获

2020-05-21 15:35:28 5527

原创 JAVA版本:输入两个正整数m和n,求其最大公约数和最小公倍数。

题目:输入两个正整数m和n,求其最大公约数和最小公倍数。题目分析:要求两个数的最大公约数,最方便的逻辑就是辗转相除法1.用两个原数中最大的数,除以最小的数,如果余数不为零,则在两个原数和余数之间选择两个最小的数。2.重复上面的步骤,直到余数为零的时候,最小除数为两个原数的最大公约数求两个数的最小公倍数,两个数的乘积等于这两个数的最大公约数与最小公倍数的积。即(a,b)×[a,b]=a×b。所以,求两个数的最小公倍数,就可以先求出它们的最大公约数,然后用上述公式求出它们的最小公倍数。publi

2020-05-21 10:51:17 3197

原创 java版本:将一个正整数分解质因数。

java版本:将一个正整数分解质因数。题目:将一个正整数分解质因数。题目分析:正整数能分解质因数,则该数不是一个素数,列如:50=2x5x5;程序输出应该为50=255;程序分析:对数字number进行分解质因数,应先分析该数是否是一个质数,如果不是,先找到一个最小的质数:(1)如果这个质数恰等于number,则说明分解质因数的过程已经结束,打印出即可。(2)如果number还能被比它小且大于1的整数整除,则需要寻找下一个最小质数,把number的与最小因数的商作为number,继续寻找。(3

2020-05-21 09:47:34 932

原创 JAVA版本:打印出所有3位数的 水仙花数

题目:打印出所有3位数的"水仙花数"题目分析:所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。 例如:371是一个"水仙花数",因为371=3的三次方+7的三次方+1的三次方。程序分析:只要每次获取一个数,然后依次得到数的个位,十位,百位,然后判断是否符合水仙花数的条件 符合,则为水仙花数,不符合,则不是。public static void main(String[] args) { //声明是三个 变量,用来存放三位数的三个位子上的值 .

2020-05-20 20:34:30 1482

原创 JAVA版本:判断101-200之间有多少个素数,并输出所有素数。

题目:判断101-200之间有多少个素数,并输出所有素数。程序分析:判断素数的方法:用一个数分别去除2到这个数,如果至少有一个数能被整除,则表明此数不是素数,反之是素数。 则只需要取出101-200之间所有的数,分别模2到他自己本身,没有余数为零的结果,则为素数 public static void main(String[] args) { int count=0; //用于统计素数的个数 //一次取数,进行运算 for (int i = 101; i.

2020-05-20 20:16:17 11174 4

原创 java版本,有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一 对兔子,假如兔子都不死,问每个月的兔子总数为多少?

题目:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?题目分析:兔子的规律为数列1,1,2,3,5,8,13,21....看到这个数列,是否想起了斐波那契数列算法,从第三位数开始,遍可以套用公式。公式为:Sn=S(n-1)+S(-2)public static void main(String[] args) { //在main()方法中调用TUzi方法,并传入月份。 Tuzi(10);}

2020-05-20 19:49:40 9924

jdk-11.0.13 压缩包和exe安装 Windows版

jdk太难下载,太慢了,这儿只有Windows版本的jdk,官网下载链接 https://www.oracle.com/java/technologies/downloads/

2021-11-18

后台开发邮箱转发的jar包+后台测试代码.zip

在日常开发工作中,经常涉及到邮件发送的需要,比如注册或者忘记密码,发送后台数据到手机提示的表单等,需要往邮箱里发送验证码或者链接,后台开发需要这些包

2020-08-19

rarfrolinux-3.8.0+安装教程.tar.xz

linux下rar的安装包和教材,亲测可用,linux自己不带rar压缩包的解压,每次使用rar压缩文件都非常的麻烦

2020-07-22

mylitle一个比较完成的注册界面

一个比较完整的web前端注册界面,拥有前端数据验证功能,界面友好型,同时能减轻后台server压力,大众使用化,博客有教程,可以点击头像查看

2020-06-18

Android volley2017 包

volley 2017版本的,不是随便弄的,亲测能用。https://github.com/google/volley这里可以下载,重新生成。生成教程网上可查

2017-11-16

空空如也

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

TA关注的人

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