
Java
文章平均质量分 60
辛丑年正月十五
这个作者很懒,什么都没留下…
展开
-
Java多线程下使用TransactionTemplate控制事务
本文展示了在Java的多线程环境下使用Spring的TransactionTemplate控制事务的提交与回滚,当任何一个子线程出现异常时,所有子线程都将回滚。原创 2023-11-18 17:07:08 · 2323 阅读 · 2 评论 -
使用XJC将XML转换成JavaBean遇到的坑
最近工作需要将页面导出的及其复杂的xml文件数据存库,所以用到了xjc需要将xml转换成对应的javabean,我在使用idea的这个功能的时候遇到了坑。原创 2023-06-01 17:17:52 · 371 阅读 · 0 评论 -
SAX解析XML返回对应格式的Map对象
最近有一个解析大型xml的需求,xml大小7M,其中xml结构非常复杂,元素各种嵌套不乏有元素下对象,元素下集合,集合下对象,集合下集合,兄弟不同元素节点,元素下对象下集合,同一元素下不同对象和集合...很复杂注意:本方式无法解析递归元素本文使用了SAX解析XML,SAX对内存比较友好,但是对于编码比较复杂,但是本篇代码量不是很多,主要都集中在一个继承了DefaultHandler的处理类,该处理类中主要使用了两个方法,分别是startElement和endElement。阅读必读。原创 2023-06-19 18:01:50 · 1357 阅读 · 0 评论 -
【加强版】SAX解析XML返回对应格式的Map对象(解决元素递归嵌套)
上篇文章实现了xml元素节点的解析并返回了对应格式的Map对象,但是遗留了一个问题,就是当xml中的元素存在递归嵌套时就解析不了,因为qname属性会重复,导致后一个元素会覆盖前一个元素。问题明了了,解决问题的思路也就浮出水面了,要解决这种存在递归嵌套元素的xml只需找到该元素中的唯一属性值即可本文依旧使用了上一篇文章的思路和代码,只是在上一篇文章的基础上增加了一个存储元素唯一标记的Map对象,该Map对象的作用就是用以区分,待解析XML递归嵌套元素的不同之处的。原创 2023-06-21 15:01:23 · 1101 阅读 · 0 评论 -
使用CXF调用WSDL(一)
简介时隔多年,再次遇到需要调用WebService的业务,对方给予的wsdl说明文档还是内网的链接,并且设有基础访问权限,即在浏览器打开wsdl链接时需要输入【用户名+密码】登录后方可查看wsdl文档,这需要设置代理(我使用putty完成了代理),本文只记录使用org.apache.cxf调用wsdl的过程。原创 2023-04-28 16:05:15 · 2181 阅读 · 1 评论 -
使用Apache FTPClient 连接远程服务器上传文件
HTML部分<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="/jquery/jquery-1.12.4.min.js"></script></head><script type="text/javascript">原创 2020-08-03 11:45:57 · 1149 阅读 · 1 评论 -
记录一发javaweb项目升级的血与泪
最近手头有个公司的老项目使用的是tomcat5.5 jdk1.6,使用框架struts2+ibatis由于客户方提出项目存在bug是因为tomcat5.5存在漏洞引发的故项目经理要我对此项目进行升级升级目标:jdk1.7,tomcat8.5(听一个算是公司大牛的同事说他们测试过tomcat8.0也存在漏洞,虽然不知道他们是怎么测试的)在升级的过程中出现了一个问题,问题是...原创 2018-04-28 16:56:24 · 2102 阅读 · 0 评论 -
使用BootStrap上传控件Fileinput实现文件上传压缩包
最近公司有个需求,批量导入企业信息。企业信息存在excel中,企业logo图片存在同级logo文件夹中,目录是这样的(使用规范说明是给业务人员写的说明文档,下载模板时一同生成的)这个上传注定是一个压缩包的方式...原创 2020-10-29 20:41:56 · 3123 阅读 · 0 评论 -
Java多线程简单案例,单例模式+多线程模拟账户存取款
角色介绍:1)夫妻账户 (Account)2)夫 - 存款人 (Husband)3)妻 - 取款人(Wife)思路:由于账户的操作必须是原子性的,所以一定是同一时刻同一账户只能被一个人操纵(即使是两个人同时操作手机,对于账户来说,也是有顺序的)因此把账户写成了一个唯一的单例模式。而对该账户的所有操作,都必须是上了锁的。因此账户是重点以下是代码部分:一、账户package com.cloud.test;import lombok.Data;import java.math原创 2022-01-25 16:57:46 · 1921 阅读 · 0 评论 -
ThreadPoolTaskExecutor线程池使用简单案例
使用案例介绍了Spring封装的ThreadPoolTaskExecutor线程池的使用方式,以多线程并发执行任务为例。原创 2022-11-11 13:34:28 · 1921 阅读 · 0 评论 -
使用CXF调用WSDL(二)
本篇文章主要解决了,上篇文章中遗留的对象嵌套问题,要想全面解析无限极的对象嵌套需要使用递归去解决。原创 2023-11-14 18:48:04 · 869 阅读 · 0 评论 -
WebSocket实现简单聊天功能案例
一、Maven的引入二、后端代码结构图二(2)WebSocket及配置二(3)控制器三、建立HTML四、成功截图原创 2022-10-27 17:55:34 · 1326 阅读 · 0 评论 -
Java快速排序和希尔排序
public static void main(String[] args) { int len = 100; Random random = new Random(); Integer[] arr = new Integer[len]; for (int i = 0; i < len; i++) { arr[i] = random.nextInt(len); } Syst...原创 2022-03-11 13:41:39 · 496 阅读 · 0 评论 -
Java打包ZIP压缩包文件下载
最近项目有需求,需要把管理中的数据,按照ID下载其附件,但由于附件较多,因此需要用压缩包的形式下载。我们的文件都采用相对路径存储在远程FTP服务器。因此需要连接远程FTP服务器(正式环境存储在OSS服务器)代码如下:步骤一:取数,得到文件名 /** * 【下载附件】报价记录/报名记录 * @param id */ @GetMapping("/download/{id}") public void downloadAnnex(@PathVa原创 2022-01-04 13:42:34 · 3656 阅读 · 2 评论 -
Java8计算日期时间差
/** * 计算天数差 * @param deliveryTime * @return */ private Integer getDays(Date deliveryTime){ Calendar calendar = Calendar.getInstance(); calendar.setTime(deliveryTime); int year = calendar.get(Calendar.YEA...原创 2021-02-22 17:02:30 · 711 阅读 · 0 评论