- 博客(47)
- 收藏
- 关注
原创 JAVA读取从WPS在Excel中嵌入的图片资源
在本文中,我将展示如何从 WPS Excel 文件中读取嵌入的图片,并提供代码示例。在该方法中,我们使用 processZipEntries 和 processPictures 方法来处理 Zip 文件中的条目和图片数据。然后,通过遍历 Excel 文件中的所有工作表,获取浮动图片。在这个函数中,我们创建了一个 PicturesUtils 实例,并从文件路径中获取文件数据。然后,我们调用 getPictures 方法来提取图片资源,并遍历结果将图片写入本地文件。
2024-04-28 10:04:23 2597 4
原创 Java中的wait()方法与sleep()方法的区别
本文详细讨论了Java多线程编程中常用的wait()和sleep()方法的差异。首先,我们指出wait()是Object类的方法,用于让当前线程等待,而sleep()是Thread类的静态方法,用于暂停当前线程一段指定的时间。其次,调用wait()方法的线程会释放持有的对象锁,而sleep()方法则不会。最后,线程在调用wait()后需要被其他线程唤醒,而sleep()方法会在指定的时间后自动醒来。文章还通过一个示例程序展示了这两个方法在实际使用中的行为。
2023-07-28 17:33:42 759
转载 JAVA 更优雅的使用IO流读取文件,拒绝代码瘫肿
JAVA 更优雅的使用IO流读取文件,拒绝代码瘫肿 JAVA的一大特性就是JVM会对内部资源实现自动回收,即自动GC,给开发者带来了极大的便利。但是JVM对外部资源的引用却无法自动回收,例如数据库连接,网络连接以及输入输出IO流等,这些连接就需要我们手动去关闭,不然会导致外部资源泄露,连接池溢出以及文件被异常占用等。 传统的手动释放外部资源一般放在一般放在try{}catch(){}finally{}机制的fin
2023-07-12 15:36:24 232
原创 【深入浅出Apache Jackrabbit】第五章 Apache Jackrabbit 版本管理
Jackrabbit 是一种符合 Java Content Repository (JCR) 2.0 规范的开源内容库。版本管理是 JCR 2.0 规范的一部分,Apache Jackrabbit 完全支持版本管理。
2023-07-12 14:59:58 525
原创 【深入浅出Apache Jackrabbit】第四章 Apache Jackrabbit 文件存储
Jackrabbit是一个开源的Java内容库,符合Java Content Repository (JCR)规范。JCR是一个用于存储和获取结构化和非结构化内容的Java API。Jackrabbit允许你在它的库中存储和检索各种类型的数据,包括文件。
2023-07-12 14:51:52 626
原创 【深入浅出Apache Jackrabbit】第三章 Repository 配置文件
Apache Jackrabbit 是一个完全符合 Java 内容库 API (JCR) 的开源内容库。它可以作为一个持久化的仓库来存储和检索数据。下面讲解如何自定义Repository 配置文件配置 Apache Jackrabbit 作为持久化仓库,并且可指向仓库的存储位置。
2023-07-12 14:45:00 448
原创 【深入浅出Apache Jackrabbit】第二章 Apache Jackrabbit 入门
欢迎第一次进入 Jackrabbit 的世界!本介绍让您亲身体验 Jackrabbit 和 JCR API。
2023-07-12 14:33:13 771
原创 【深入浅出Apache Jackrabbit】第一章 初见 Apache Jackrabbit
Apache Jackrabbit是一个强大的开源内容存储库,实现了Java的内容存储库规范(JSR-170和JSR-283)。它具有分层内容模型、全文搜索、ACID事务、版本控制和事件通知等特性,支持多种存储选项。由于其对结构化和半结构化数据的强大处理能力,Jackrabbit在内容管理系统、文档管理系统、数字资产管理、知识管理系统和集成的数据平台等场景中展现出显著优势。如果你正在寻找一个能够灵活处理各种类型数据的解决方案,Apache Jackrabbit无疑是一个值得考虑的选项。
2023-07-12 13:59:51 1013
原创 Java 集合深度解析
Java 集合框架提供了一套丰富的数据结构和接口,包括 List、Set、Queue、Deque 和 Map 等。它们的实现基于数组、链表、哈希表等底层数据结构,具有不同的性能特性和使用场景。ArrayList 和 HashMap 在扩容时会进行数组复制和数据迁移。多数集合类不是线程安全的,但可以通过 Collections.synchronized* 方法或使用 java.util.concurrent 包中的并发集合获取线程安全版本。深入理解这些集合对于 Java 编程非常重要。
2023-06-25 11:51:07 320
原创 List集合new ArrayList<>()和new ArrayList<String>()以及new ArrayList<Object>()的区别
本文详解了Java中new ArrayList()、new ArrayList()和new ArrayList()的区别。new ArrayList()可以接受任何类型,但需进行类型转换。new ArrayList()只存字符串,无需类型转换。new ArrayList()存任何类型,但可能需类型转换。指定ArrayList类型能提供类型安全,避免运行时错误。
2023-06-25 11:24:43 7918 2
原创 Java 垃圾回收的工作原理与理解内存泄漏
Java的内存管理是由垃圾回收器(Garbage Collector,GC)自动进行的。这个自动管理的过程能够极大地减轻开发者的负担,让我们能够更专注于业务逻辑的开发。然而,作为Java开发者,我们还是需要理解垃圾回收的基本原理,以更好地优化代码,避免可能出现的内存泄漏等问题。所以,今天我们就来详细解读Java垃圾回收的工作原理以及如何理解和防止内存泄漏。
2023-06-13 14:26:13 1156
原创 java实现控制台输出任何数据类型内容、对象转字符串操作
之前经常做数据加工,加工的对象也是各种类型,数组、集合、XML、JSON等等,想要写日志可是个麻烦事,各种转换,然后花了点时间写了个通用方法,可能不是最优,但是在项目中使用已经足够了,已经用了三年了,今天决定和大家分享一下,如果有更好的方法欢迎评论指点。
2023-06-13 08:38:37 243
原创 使用pagehelper 实现 mybatis 分页查询
PageHelper是一款优秀的MyBatis分页插件。通过物理分页方式直接在数据库层面进行分页,优化了大数据量的处理。使用时只需在查询前调用startPage方法即可实现分页。支持多种流行数据库,且能提供丰富的分页信息如总记录数、总页数等。同时,其配置灵活,与MyBatis、Spring Boot等框架兼容性良好,大大简化了分页操作。通过PageHelper即可实现在mybatis中分页查询操作
2023-06-06 17:55:21 948
原创 Mybatis 检查记录是否存在并返回布尔值
@Select("SELECT EXISTS(SELECT 1 FROM user WHERE NAME=#{name})") boolean checkUserExists(@Param("name") String name);
2021-09-23 11:07:10 4984 2
原创 IntelliJ IDEA 的 Win 和 Mac 快捷键大全
IntelliJ IDEA 的 Win 和 Mac 快捷键大全一、Win 版一、Ctrl 快捷键快捷键说明常用Ctrl + F在当前文件进行文本查找√Ctrl + R在当前文件进行文本替换√Ctrl + Z撤销√Ctrl + Y删除光标所在行 或 删除选中的行√Ctrl + X剪切光标所在行 或 剪切选择内容Ctrl + C复制光标所在行 或 复制选择内容Ctrl + D复制光标所在行 或 复制选择内容,并把复制内容插
2021-09-23 10:34:16 681
原创 JAVA 方法返回不同类型的参数
java 的方法返回不同类型的参数解决办法:返回类型为Object,接受返回参数后,强制转换成相应的类型。使用泛型标注返回类型。示例:/** * @ClassName: Test * @Author: bianhailong * @Description: * @Date: 7/11/2021 2:36 PM */public class Test { public static void main(String[] args) { Integer
2021-07-11 15:00:55 10171
原创 springboot自带MD5加密
springboot自带MD5加密import org.springframework.util.DigestUtils;/** * @ProjectName: PlatfromServiceCenter * @Package: com.ge.start * @ClassName: Test * @Author: bianhailong * @Description: * @Date: 6/17/2021 2:32 PM */public class Test { publi
2021-06-17 14:35:51 556
原创 发送HTTP请求中文参数乱码的问题,空格变加号(+)的问题
在请求头参数或者返回参数存在中文时,出现乱码的问题。可以使用URLEncoder.encode()方法来解决,但是URLEncoder.encode()方法会将空格转换成+,解码后会发现+没有转换回来,这要特殊处理一下,将空格直接转换成%20private String formate(String str) throws UnsupportedEncodingException { String sign = "QAQ我是一只小芋头";//自己定义,确保参数中不会存在该字符串就可以,越
2021-06-01 09:58:01 1813
原创 Spring Boot new出来的对象中 使用@autowired进行对象bean注入 值为null
在程序运行时,新new出来的类 使用了@autowired注入, 发现没有注入成功,对象的值是null例如下面有个websocket服务,当前端有新的连接是,会new一个通道,也就是new一个MyServer对象,当我使用ActuatorOperation操作类时,actuatorOperation对象的值为nullActuatorOperation 类import com.ge.code.actuator.domain.Actuator;import com.ge.code.actuator.do
2021-04-26 16:17:42 2846
原创 Spring Boot Actuator 参数说明
基本监控指标Endpoint IDDescriptionauditevents显示应用暴露的审计事件 (比如认证进入、订单失败)info显示应用的基本信息health显示应用的健康状态metrics显示应用多样的度量信息loggers显示和修改配置的loggerslogfile返回log file中的内容(如果logging.file或者logging.path被设置)httptrace显示HTTP足迹,最近100个HTTP reques
2021-04-26 13:48:44 1507
原创 spring boot 集成 websocket服务
pom.xml<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId></dependency>WebSocketConfig通过这个配置 spring boot 才能去扫描后面的关于 websocket 的注解import org.springfram
2021-04-26 13:23:44 253
原创 Spring Boot Actuator没有httptrace 端点的问题
在使用Spring Boot Actuator时,发现其它端点都是可以访问的,唯独httptrace 不可以访问。初步判断是Spring Boot的版本问题,在版本为“2.0.6.RELEASE”时是可以正常访问的,在“2.4.3版本中无法访问”解决办法:在不更改版本的情况下,需要自定义HttpTraceRepositoryConfiguration类@Configuration@ConditionalOnWebApplication@ConditionalOnProperty(prefix
2021-04-20 18:05:16 949 3
原创 MySql批量更新语句(UPDATE)
CREATE TABLE IF NOT EXISTS test_user(id INT UNSIGNED AUTO_INCREMENT,name VARCHAR(255) NOT NULL,age INT(11) NOT NULL,sex VARCHAR(16),PRIMARY KEY ( id ))ENGINE=InnoDB DEFAULT CHARSET=utf8;INSERT INTO test_user(name, age, sex)VALUES(‘张三’, 18, ‘男’)..
2021-04-14 20:56:47 5053 2
原创 MySql批量插入语句(INSERT)
这里写自定义目录标题欢迎使用Markdown编辑器创建数据库新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何
2021-03-18 22:08:08 75946 6
原创 C/C++ 调用外部exe执行程序不弹出黑框
C/C++ 调用外部exe执行程序不弹出黑框方法WinExec("D://a.exe", SW_SHOWNORMAL);第二个参数说明: ----SW_HIDE 隐藏 ----SW_MAXIMIZE 最大化 ----SW_MINIMIZE 最小化,并把Z order顺序在此窗口之后(即窗口下一层)的窗口激活 ----SW_RESTORE 激活窗口并还原为初始化大小 SW_SHOW 以当前大小和状态激活窗口 ----SW_SHOW 用当前的大小和位置显示一个窗口,同时令其进入活动
2021-01-07 10:49:57 3540
原创 Servlet 网页跳转
Servlet 网页跳转 @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { req.getRequestDispatcher("/index.jsp").forward(req, resp); }
2021-01-02 16:27:00 103
原创 Servlet web.xml模板
Servlet web.xml模板<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/java
2021-01-02 16:24:03 174
原创 SWT设置CTabFolder右上角控件 设置ToolBar
SWT 中CTabFolder选项卡设置右上角的控件 CTabFolder tabFolder = new CTabFolder(parent, SWT.BORDER); tabFolder.setSelectionBackground(Display.getCurrent().getSystemColor(SWT.COLOR_TITLE_INACTIVE_BACKGROUND_GRADIENT)); CTabItem tabItem = new CTabItem(tabFolder, S
2020-12-28 17:49:09 395 1
原创 SWT中组件的子类化(继承)时,通过空实现checkSubclass方法关闭子类化检查避免出现无法子类化的问题
在开发SWT界面时,经常会在SWT原有的组件中增加一些个性化的方法,就会用到子类化,也就是继承组件的类,保持原有的方法或重载原有的方法,再加一些个性化的方法。在子类化过程中,常常遇到这个错误:org.eclipse.swt.SWTException: Subclassing not allowed at org.eclipse.swt.SWT.error(SWT.java:4595) at org.eclipse.swt.SWT.error(SWT.java:4510) at org.eclips
2020-12-09 21:27:35 183
原创 Matlab java调用.m脚本文件读取同目录下文件的方法(相对路径)
Matlab java调用.m脚本文件读取同目录下文件的方法引言JDK的下载解压文件设置环境变量验证是否成功引言今天遇到这样的一个需求,使用java调用.m文件,但是调用的时候没有参数,.m文件中的脚本使用的参数是以数据文件的形式传递的,并且这个.m调用的父层文件夹的位置是根据客户安装软件的位置来设定的,在.m脚本文件中是无法得到父层目录文件的绝对路径位置的,所以只能用相对路径进行读取。例如在...
2020-03-23 20:25:41 789
原创 Matlab获取当前.m文件的位置以及文件名称
Matlab获取当前.m文件的位置以及文件名称Matlab获取当前.m文件的位置以及文件名称Matlab获取当前.m文件的位置以及文件名称获取当前的位置以及名称fullpath = mfilename('fullpath'); [path,name]=fileparts(fullpath);得到的path变量就是当前.m文件所在的目录,name是.m文件的名称(不带.m后缀)。...
2020-03-23 10:05:23 10538 3
若依框架VUE前端界面,登录后默认跳转至动态路由第一路由(第一个子菜单)
2023-02-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人