自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 itext操作Pdf释放不掉资源导致文件被占用

不能直接把文件路作为参数实例化PdfReader , 就算最后close了PdfReader 还是会被占用。下面这个是正确的, 最后两个都close就行了。

2023-12-18 13:37:31 942 2

原创 隐藏命令框指定jre启动/关闭bat

2022-04-28 09:59:13 298 1

原创 MySql带条件使用count()函数计数

需求:某时间范围内按天分类,统计总数和失败数SELECT DATE_FORMAT(create_date, '%Y-%m-%d') AS `date`, COUNT(id) AS total, COUNT(type=1 OR NULL) AS failTotalFROM table_name WHERE test_date BETWEEN #{startDate} AND #{endDate} GROUP BY `date`注意count(条件表达式

2022-04-26 14:51:49 4914

原创 XML解析,适合XML,JavaBean,数据库之间转换的需求

节点类@Data@AllArgsConstructor@NoArgsConstructorpublic class NodeStructure { /** * 节点id */ int id; /** * 父节点id */ int pid; /** * 节点名 */ String selfname; /** * 节点文本 */ String text;}

2022-01-14 17:36:09 332

原创 Spring Boot启动的时候运行一些特定的代码

ApplicationRunner&CommandLineRunner实现接口ApplicationRunner或者CommandLineRunner,这两个接口实现方式一样,它们都只提供了一个run方法。ApplicationContextAware实现接口ApplicationContextAware,重写setApplicationContext方法...

2022-01-14 11:51:38 270

原创 leadtools将pdf转tif

前言leadtools的依赖是需要买正版之后, 本地仓库安装依赖, 这里的教程pdf转tifprivate void pdf2tif(String pdfPath, String tifPath) { // Load LEADTOOLS libraries if (!loadLibraries()) { return; } // Set the license if (!DemoUtilities.

2022-01-14 11:18:20 251

原创 Java获取文件的MD5值

public class MD5Util { /** * 生成文件的MD5码 * * @param filePath 文件路径 * @return 该文件的MD5码 */ public static String generateMD5(String filePath) { if (!new File(filePath).isFile()) { System.err.println("Error: "

2022-01-14 11:07:44 4978

原创 Java程序调用.net提供的WebService

前言Java调用WebService的相关资料,网上一搜一大把,但我这个遇见的比较特殊,所以记一下正常的调用,推荐一个好用的工具依赖 <!-- hutool工具 --> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <vers

2022-01-14 10:55:03 346

原创 SpringBoot使用注解@PropertySource读取配置文件

步骤一新建一个.properties后缀的文件步骤二在任意类上加上注解, 一般加在启动类上,方便找这个注解写在哪了@PropertySource(value = "classpath:mainbody.properties", encoding = "utf-8")步骤三 例子在mainbody.properties里写上# 是否删除缓存文件delCache=true然后在需要使用的地方 @Value("${delCache}") private String del

2022-01-14 09:57:32 456

原创 算法题-合并连续的数字

题目有一个整型数组, {1, 2, 3, 5, 7, 9, 10, 11, 12, 26, 27}, 将其中连续的数字用 “-” 连接,输出格式如: 1-2,3,5,7,9-10,11-12,26-27代码 private static String mergeContinueNumToStr(int[] nums1) { StringBuffer sb = new StringBuffer(); int length = nums1.length; f

2021-08-25 16:19:47 694

原创 MySql将多张表结构一样的表合并成一个视图

create view viewnameasselect * from table1union allselect * from table2union allselect * from table3union allselect * from table4

2021-08-02 10:49:27 3122

原创 关闭指定端口号进程

2021-07-16 15:46:50 380

原创 利用Java8新特性根据id,pid获取树形结构

实体类@Data@JsonInclude(JsonInclude.Include.NON_NULL)public class SysPermission { private Integer id; private Integer pid; private List<SysPermission> children;}形成树形结构最关键的是id和pid,其他属性不关键,可以自行定义.关键代码 // ...上面是获取List<SysPermission&

2021-06-30 17:45:23 2299 1

原创 简单Maven项目含依赖打包

1、pom<build> <plugins> <!-- 指定启动类,将依赖打成外部jar包 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId&gt

2021-06-07 14:19:39 218

原创 SpringBoot整合Retry实现重试机制

适用场景在项目开发过程中,偶尔会有使用网络的情况, 我们不希望一次网络不通就出错,而是连接了几次不通才算他出错.依赖hutool工具依赖只是使用了它的HttpUtil中的方法,与重试机制无关 <!--重试机制--> <dependency> <groupId>org.springframework.retry</groupId> <artifactId>spring-retr

2021-05-06 09:36:34 1641

原创 java初学模拟斗地主发牌

public class PokerDemo { public static void main(String[] args) { // 一副扑克牌 HashMap<Integer, String> pokerMap = new HashMap<>(); // 用来控制牌的顺序 List<Integer> sortCtrlList = new ArrayList<>();

2021-04-27 15:37:16 88

原创 java 使用itext合并多个pdf文件成一个pdf

maven <!-- https://mvnrepository.com/artifact/com.itextpdf/itextpdf --> <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.5.13.2

2021-04-15 17:34:43 1430 1

原创 java 使用 PDFbox合并多个pdf文件

maven <!-- https://mvnrepository.com/artifact/org.apache.pdfbox/pdfbox --> <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>pdfbox</artifactId> <version>2.

2021-04-15 17:25:35 496

原创 sql没有记录的数据,函数ISNULL失效解决办法

IF EXISTS(SELECT ConvertState FROM BusinessBaseInfo WHERE BusinessID = #{businessID}) BEGIN --如果存在 SELECT ISNULL(ConvertState, -1) ConvertState FROM BusinessB..

2021-04-13 09:00:09 1035

原创 使用POI导出excel教程精简

第一步,导入依赖 <!-- poi --> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>4.0.1</version> </dependency>第二步,

2021-04-08 09:11:33 241

原创 获取一个日期范围里的每一个月

2020-10,2021-04当我们获取到这样一个日期范围, 要怎么获取到所有的月份// 解析月期范围 String[] split = monthRange.split(","); Date d1 = new SimpleDateFormat("yyyy-MM").parse(split[0]);//定义起始日期 Date d2 = new SimpleDateFormat("yyyy-MM").parse(split[1]);//定义结束日期.

2021-04-07 08:53:41 355

原创 手动分页

有时候我们需要对查询出来的集合进行加工处理后在进行分页,所以使用pagehelper工具并不符合使用条件。手动分页 // 上面是你查到的集合 list // 创建一个你真正返回的集合 currentPageList List<User> currentPageList = new ArrayList<>(); if (list.size() > 0) { int currIdx = (pageNo > 1 ? (page

2021-04-02 16:38:51 238 1

原创 @DS轻松解决动态数据源问题

动态切换数据源,无非是继承org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource这个类,重写determineCurrentLookupKey()这个方法,动态变换数据源的key值,有人已经将详细代码封装到框架中,我们只需要使用它的注解@DS就好。引入maven<!-- https://mvnrepository.com/artifact/com.baomidou/dynamic-datasource-spring-

2021-04-02 16:32:11 8782 6

原创 IBM AppScan基本使用教程

AppScan超简单实用

2021-04-01 11:56:49 1111

原创 Jmeter的简单使用

Jmeter的下载与安装Jmeter下载https://jmeter.apache.org/download_jmeter.cgiwindow系统选择zip包即可Jmeter配置环境变量经典两步启动并使用可以使用安装的bin目录下的bat启动,配置了环境变量的也可以使用cmd启动.先将切换语言为中文简体为测试计划添加线程组这里的配置意思是, 每秒30个线程, 一直循环120s就停止为线程组添加要测试的请求如果你需要测试的线程组有多个http请求的话,且基本的ip和

2021-04-01 11:23:38 120

原创 错误No qualifying bean of type

错误[ No qualifying bean of type ‘cn.itcast.service.company.ICompanyService’ available: expected at least 1 bean which qualifies as autowire candidate.]问题描述[容器中没有该bean].首先我的dao层,service层斗没有问题,从web层开始出现这个问题, 那么这个问题肯定是web层出错,而且很大概率是配置文件错误.如何解决.1.首先可以试一下将t

2020-08-18 15:30:21 3508

原创 Java Properties属性集&ResourceBundle工具类

属性集概述java.util.Properties 继承于 Hashtable ,来表示一个持久的属性集。它使用键值结构存储数据,每个键及其对应值都是一个字符串。该类也被许多Java类使用,比如获取系统属性时,System.getProperties 方法就是返回一个Properties对象。Properties类构造方法public Properties() :创建一个空的属性列表基本的存储方法public Object setProperty(String key, String va

2020-05-08 19:35:50 190

原创 JDK7前后对I/O资源的处理对比

JDK7之前的处理之前的入门练习,我们一直把IO异常抛出,实际开发中并不能这样处理,建议使用try…catch…finally 代码块,处理异常部分.案例需求: 将readTest的内容copy到copyTest代码使用演示import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;p...

2020-05-08 17:01:18 129

原创 Java FileReader和FileWriter类

字符流当使用字节流读取文本文件时,可能会有一个小问题。就是遇到中文字符时,可能不会显示完整的字符,那是因为一个中文字符可能占用多个字节存储。所以Java提供一些字符流类,以字符为单位读写数据,专门用于处理文本文件。FileReader和FileWriter类FileReader 和 FileWriter 字符流对应了 FileInputStream和 FIleOutputStream类. 方...

2020-05-08 16:24:54 185

原创 Java中字节流

一切皆为字节一切文件数据(文本、图片、视频等)在存储时,都是以二进制数字的形式保存,都是一个一个的字节,那么传输时一样如此。所以,字节流可以传输任意文件数据。在操作流的时候,我们要时刻明确,无论使用什么样的流对象,底层传输的始终为二进制数据。输入/输出流Java语言定义了许多类专门负责各种方式的输入/输出,这些类都被放到了 java.io 包中。其中,所有输入流类都是抽象类InputStre...

2020-05-07 19:50:54 364

原创 Java中I/O流对文件进行复制粘贴及可能会出现的问题

需求:将E:\电脑桌面壁纸\MisakaMikoto.jpg图片文件复制到D:\某科学的超电磁炮 目录下public class Test { public static void main(String[] args) throws IOException { //创建字节输入流对象,关联数据源文件路径 FileInputStream fis = new...

2020-05-07 19:48:41 408

原创 Java中的I/O流

2020-05-07 17:47:40 90

原创 递归

概述在数学上,关于递归函数的定义如下:对于某一函数f(x),其定义域是集合A,那么若对于A集合中的某一个值X0,其函数值f(x0)由f(f(x0))决定,那么就称f(x)为递归函数。简单来讲就是在当前函数表达式内再使用本身的表达式。在编程语言中,指在当前方法内直接或间接调用自己的这种现象。如:public static void a(){ a();}递归求和请使用递归计算从1–10...

2020-05-07 17:42:42 184

原创 Java中File类及其常用方法

概述File类是 java.io 包中唯一代表磁盘文件本身的对象。一般用于文件的创建、删除、重命名等操作。绝对路径与相对路径绝对路径:从盘符开始的路径,这是一个完整的路径。相对路径:相对于项目目录的路径,这是一个便捷的路径,开发中经常使用。构造方法public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的File实例。publ...

2020-05-07 17:29:55 569

原创 Java中的Stream

前提概要在Java 8中,得益于Lambda所带来的函数式编程,引入了一个全新的Stream概念,用于解决已有集合类库既有的弊端。先看现象传统集合的多步遍历代码几乎所有的集合(如 Collection 接口或 Map 接口等)都支持直接或间接的遍历操作。而当我们需要对集合中的元素进行操作的时候,除了必需的添加、删除、获取外,最典型的就是集合遍历。例如:List<String>...

2020-05-07 14:02:39 191

原创 Java中Stream流综合案例

需求:现在有两个ArrayList集合存储队伍当中的多个成员姓名,要求使用Stream流,依次进行以下若干操作步骤:1. 第一个队伍只要名字为3个字的成员姓名;2. 第一个队伍筛选之后只要前3个人;3. 第二个队伍只要姓张的成员姓名;4. 第二个队伍筛选之后不要前2个人;5. 将两个队伍合并为一个队伍;6. 根据姓名创建Person对象;7. 打印整个队伍的Person对象信息。P...

2020-05-07 13:59:53 1157

原创 Java中的Lambda表达式

函数式编程思想函数在数学中的定义从集合、映射的方向去出发, 从输入量到输出量的计算法则,也就是“拿什么东西做什么事情”。相对而言,面向对象则过分强调“必须通过对象的形式来做事情”,而函数式思想则尽量忽略面向对象的复杂语法——强调做什么,而不是以什么形式做。举个栗子,启动一个线程, 用面向对象的方式,我们会这样写 // 匿名内部类方式创建线程执行任务new Thread(new Runna...

2020-05-07 13:05:15 135

原创 线程的等待与唤醒

线程的生命周期在介绍线程的等待与唤醒之前, 我们先了解一下线程的生命周期。 其中包括6种状态, 分别为 New(新建)、Runnable(可运行)、Blocked(阻塞状态)、Waiting(无限等待)、TimeWaiting(计时等待)和Teminated(死亡状态)。线程周期的各种状态:线程的等待与唤醒当处于运行状态下的线程调用 Thread 类中的 wait() 方法时,该线程便进入...

2020-05-05 19:49:20 635

原创 线程死锁

死锁定义: 在多线程程序中,使用了多把锁,造成线程之间相互等待.程序不往下走了。产生死锁的条件1.有多把锁2.有多个线程3.有同步代码块嵌套死锁代码及现象public class Test21 { public static void main(String[] args) { Object obj1 = new Object(); Obj...

2020-05-05 19:03:22 132

原创 创建线程的方式执行任务与创建线程方式执行任务

线程池思想我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题:如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务?在Java中可以通过线程池来达到这样的效果。今天我们就来详细讲解...

2020-05-05 18:58:40 747

空空如也

空空如也

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

TA关注的人

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