java
文章平均质量分 52
不死鸟.亚历山大.狼崽子
太极计算机股份有限公司系统架构师,从事ios、.net、flex、java等开发
展开
-
Java:给Date加上23时59分59秒
在Java编程中,处理日期和时间是一个常见的任务。有时候我们需要将日期设置为一个特定的时间,比如将时间设置为当天的23时59分59秒。原创 2024-08-23 10:48:16 · 353 阅读 · 0 评论 -
java:File与MultipartFile互转
当我们在处理文件上传的功能时,通常会使用MultipartFile对象来表示上传的文件数据。然而,有时候我们可能已经有了一个File对象,而不是MultipartFile对象,需要将File对象转换为MultipartFile对象进行进一步处理。在Java中,File对象表示文件在本地文件系统中的引用,而MultipartFile对象是Spring框架提供的用于处理文件上传的接口。MultipartFile接口提供了许多有用的方法,例如获取文件名、获取文件内容、获取文件大小等。原创 2024-08-04 17:56:28 · 1103 阅读 · 0 评论 -
java:The field multiFile exceeds its maximum permitted size of 1048576 bytes.
这个错误表明你尝试上传的文件大小超过了设定的最大允许值。在这个例子中,错误指出imageFile字段的大小超过了1MB(1048576字节)。原创 2024-08-04 17:13:14 · 358 阅读 · 0 评论 -
Java:实现RSA加密与验证的方法详解
RSA加密是一种非对称加密。可以在不直接传递密钥的情况下,完成解密。这能够确保信息的安全性,避免了直接传递密钥所造成的被破解的风险。是由一对密钥来进行加解密的过程,分别称为公钥和私钥。两者之间有数学相关,该加密算法的原理就是对一极大整数做因数分解的困难性来保证安全性。通常个人保存私钥,公钥是公开的(可能同时多人持有)。非对称加密: RSA是一种非对称加密算法,意味着它使用不同的密钥进行加密和解密。公钥用于加密数据,只有拥有相应私钥的用户才能解密它。原创 2024-07-25 11:27:30 · 2557 阅读 · 1 评论 -
基于SSM高并发秒杀API实现(1):业务分析与数据库设计
高并发秒杀API实现(1):业务分析与数据库设计原创 2020-09-07 12:35:56 · 169 阅读 · 0 评论 -
基于SSM高并发秒杀API实现(2):DAO层设计与开发
高并发秒杀API实现(2):DAO层原创 2020-09-07 13:00:34 · 212 阅读 · 0 评论 -
SSM(一):IntelliJ IDEA整合SSM框架
1.基本概念 使用SSM(Spring,SpringMVC和Mybatis)1.1、Spring Spring是一个开源框架,Spring是于2003年兴起的一个轻量级的Java开发框架,由RodJohnson在其著作ExpertOne-On-OneJ2EEDevelopmentandDesign中阐述的部分理念和原型衍生而来。它是为了解决...原创 2020-01-24 00:22:39 · 298 阅读 · 0 评论 -
解决maven 引用JDK内部类编译错误 程序包:com.sun.xml.internal.bind.marshaller.CharacterEscapeHandler不存在
程序包:com.sun.xml.internal.bind.marshaller.CharacterEscapeHandler不存在。添加maven-compiler-plugin插件,并且配置compilerArguments。转载 2024-03-27 10:22:36 · 260 阅读 · 0 评论 -
ThreadLocal(5):ThreadLocalMap源码分析
在分析ThreadLocal方法的时候,我们了解到ThreadLocal的操作实际上是围绕ThreadLocalMap展开的。ThreadLocalMap的源码相对比较复杂, 我们从以下三个方面进行讨论。原创 2024-02-20 23:04:48 · 1011 阅读 · 0 评论 -
ThreadLocal(4):ThreadLocal的核心方法源码
基于ThreadLocal的内部结构,我们继续分析它的核心方法源码,更深入的了解其操作原理。 以下是这4个方法的详细源码分析(为了保证思路清晰, ThreadLocalMap部分暂时不展开,下一个知识点详解)原创 2024-02-20 12:50:04 · 646 阅读 · 0 评论 -
ThreadLocal(3):ThreadLocal的内部结构
下面介绍ThreadLocal的内部结构,探究它能够实现线程数据隔离的原理。原创 2024-02-19 23:32:24 · 457 阅读 · 0 评论 -
ThreadLocal(2):运用场景
通过上一章介绍,我们已经基本了解ThreadLocal的特点。但是它具体是运用在什么场景中呢?接下来让我们看一个案例: 事务操作。原创 2024-02-19 17:53:54 · 1018 阅读 · 0 评论 -
org.apache.xmlbeans.XmlOptions.setEntityExpansionLimit(I)Lorg/apache/xmlbeans/XmlOptions;
剔除方法: 只需加 exclusions 的内容就可以。POI引起的报错,分析后发现为xmlbeans引起。原创 2024-02-06 09:59:14 · 2047 阅读 · 0 评论 -
java:java反编译工具--jd-gui
JD-GUI是一款反编译软件,JD分为JD-GUI、JD-Eclipse两种运行方式,JD-GUI是以单独的程序的方式运行,JD-Eclipse则是以一个Eclipse插件的方式运行。上图中进行反编译完左侧会有反编译后的源代码,我们可以通过Save All Sources进行指定磁盘路径进行保存。这个时候我们可以把自己的字节码文件或者已经打包好的jar包直接拖入上图所示界面,会进行自动反编译的。反编译完毕后可能部分代码会有出入,所以需要自己进行一下修改。原创 2024-01-31 09:40:10 · 623 阅读 · 0 评论 -
HttpSession的使用
在 Java Servlet API 中引入 session 机制来跟踪客户的状态。session 指的是在一段时间内,单个客户与 Web 服务器的一连串相关的交互过程。在一个 session 中,客户可能会多次请求访问同一个网页,也有可能请求访问各种不同的服务器资源。在 Servlet API 中定义了 javax.servlet.http.HttpSession 接口,Servlet 容器必须实现这个接口。原创 2024-01-04 22:25:12 · 1063 阅读 · 0 评论 -
ThreadLocal(1):ThreadLocal介绍
}* }* */...从Java官方文档中的描述:ThreadLocal类用来提供线程内部的局部变量。这种变量在多线程环境下访问(通过get和set方法访问)时能保证各个线程的变量相对独立于其他线程内的变量。ThreadLocal实例通常来说都是private static类型的,用于关联线程和线程上下文。原创 2023-09-13 14:51:38 · 84 阅读 · 0 评论 -
Java限流及常见方案
在系统架构中,Nginx的代理与路由转发是其作为网关层的一个很重要的功能,由于Nginx天生的轻量级和优秀的设计,让它成为众多公司的首选,Nginx从网关这一层面考虑,可以作为最前置的网关,抵挡大部分的网络流量,因此使用Nginx进行限流也是一个很好的选择,在Nginx中,也提供了常用的基于限流相关的策略配置.如果我们的接口设置了时间窗口内访问上限是20,那么当时间到第六秒的时候,这个时间窗口内的计数总和就变成了10,因为1秒的格子已经退出了时间窗口,因此在第六秒内可以接收的访问量就是20-10=10个。转载 2023-02-11 17:27:41 · 607 阅读 · 0 评论 -
java:如何保证controller的并发安全?
根据Tomcat官网中的介绍,对于一个浏览器请求,tomcat会指定一个处理线程,或是在线程池中选取空闲的,或者新建一个线程。如果用SpringMVC 的 Controller时,尽量不在 Controller中使用实例变量,否则会出现线程不安全性的情况,导致数据逻辑混乱。单例模式容易出现的问题是:在Controller中定义的实例变量,在多个请求并发时会出现竞争访问,Controller中的实例变量不是线程安全的。两次访问得到的结果不同,num已经被修改,并不是我希望的结果,接口的幂等性被破坏。转载 2023-01-24 21:55:10 · 726 阅读 · 0 评论 -
java:Zip压缩工具类
该版本存在问题:压缩时如果目录或文件名含有中文,压缩后会变成乱码。原创 2023-01-19 22:47:23 · 524 阅读 · 0 评论 -
java导入数据库转成excel文件上传到服务器下载
(1)先通过POI将数据写入EXCEL。(3)从服务器将EXCEL下载到本地。(2)将EXCEL保存到服务器。原创 2023-01-19 13:02:55 · 1340 阅读 · 0 评论 -
java:文件分片上传
web端有沙箱问题,无法直接通过web端进行下载时的断点续传,续传需要通过客户端进行,下一章会进行讲解。查看上传文件的目录,发现文件被分片上传。原创 2023-01-02 15:52:31 · 712 阅读 · 0 评论 -
java多线程(11):线程协作
如果仓库中没有产品 , 则生产者将产品放入仓库 , 否则停止生产并等待 , 直到仓库中的产品被消费者取走为止。如果仓库中放有产品 , 则消费者可以将产品取走消费 , 否则停止消费并等待 , 直到仓库中再次放入产品为止。对于生产者 , 没有生产产品之前 , 要通知消费者等待 ,而生产了产品之后 , 又需要马上通知消费者消费。假设仓库中只能存放一件产品 , 生产者将生产出来的产品放入仓库 , 消费者将仓库中产品取走消费。对于消费者 , 在消费之后 , 要通知生产者已经结束消费 , 需要生产新的产品以供消费。原创 2022-12-30 21:53:53 · 857 阅读 · 0 评论 -
java多线程(10):线程同步
并发 : 同一个对象被多个线程同时操作。原创 2022-12-29 20:25:49 · 120 阅读 · 0 评论 -
java多线程(9):线程状态
模拟网络延时:放大问题的发生性。原创 2022-12-28 18:39:25 · 565 阅读 · 0 评论 -
java多线程(8):Lamda表达式
任何接口,如果只包含唯一一个抽象方法,那么它就是一个函数式接口。对于函数式接口,我们可以通过lambda表达式来创建该接口的对象。也许你会说,我看了Lambda表达式,不但不觉得简洁,反而觉得更乱,看不懂了。那是因为我们还没有习惯,用的多了,看习惯了,就好了。理解Functional Interface(函数式接口)是学习Java8 lambda表达式的关键所在。为什么要使用lambda表达式。原创 2022-12-28 18:14:59 · 407 阅读 · 0 评论 -
java多线程(7):静态代理
【代码】java多线程(7):静态代理。原创 2022-12-27 21:36:49 · 80 阅读 · 0 评论 -
java多线程(6):案例龟兔赛跑
【代码】java多线程(6):案例龟兔赛跑。原创 2022-12-27 17:22:09 · 116 阅读 · 0 评论 -
java多线程(5):实现Callable接口
4、创建执行服务:ExecutorService ser = Executor.newFixedThreadPool(1);5、提交执行:Future result1 = ser.submit(t1);6、获取结果:boolean r1 = result1.get()7、关闭服务:ser.shutdownNow();1、实现Callable接口,需要返回值类型。2、重写call方法,需要抛出异常。原创 2022-12-27 16:55:46 · 743 阅读 · 0 评论 -
java多线程(4):实现Runnable接口案例下载图片
【代码】java多线程(4):实现Runnable接口案例下载图片。原创 2022-12-27 15:35:22 · 161 阅读 · 0 评论 -
java多线程(3):三种创建方式之实现Runnable接口
【代码】java多线程(3):三种创建方式之实现Runnable接口。原创 2022-12-27 15:32:27 · 290 阅读 · 0 评论 -
java多线程(2):Thread案例之下载图片
验证了结论:在一个进程中,如果开辟了多个线程,线程的运行由调度器安排调度,调度器是与操作系统紧密相关的,先后顺序是不能认为的干预的。我们开启了三个线程,这三个线程并不是按序执行的,谁先抢夺到了时间,谁先执行。原创 2022-12-27 14:16:56 · 314 阅读 · 0 评论 -
java多线程(1):三种创建方式之Thread
【代码】java多线程(1):三种创建方式之Thread。原创 2022-12-27 13:49:21 · 90 阅读 · 0 评论 -
你只会用 split?试试 StringTokenizer,性能可以快 4 倍!!
虽然 JDK 不鼓励使用 StringTokenizer 了,但并不说明它不能用了,相反,如果你的系统对性能有非常严格的要求,又不是很复杂的字符串分割,好好使用它反而可以带来高效。但话又说回来,一般的应用程序用 split 也就够了,因为它够简单、又支持正则表达式,在一般的应用中也不会存在像文中测试的大批量的字符串循环分割,另外,StringTokenizer 在单次分割的性能上也没有性能优势。转载 2022-11-22 20:07:26 · 219 阅读 · 0 评论 -
Apache Openoffice(2):Java实现word、excel、ppt、txt等办公文件在线预览功能
项目文件结构如下: 传入文件的URL 弹出文件下载框,如果实在浏览器则会弹出页面原创 2022-11-13 15:26:20 · 1747 阅读 · 0 评论 -
Apache Openoffice(1):安装Apache Openoffice及使用Java进行word转pdf
项目中需要使用在线预览Word的功能,可借助Apache OpenOffice服务然先将word转换成pdf,然后在通过在线pdf在线预览的迂回方式实现,以下记录此过程。原创 2022-11-13 00:44:39 · 1360 阅读 · 0 评论 -
String长度有限制吗?是多少?
是的有,而且在JVM编译中还有规范,而且有的家人们在面试的时候也遇到了,本人就遇到过面试的时候问这个的,而且在之前开发的中也真实地遇到过这个String长度限制的场景(将某固定文件转码成Base64的形式用字符串存储,在运行时需要的时候在转回来,当时文件比较大),那这个规范限制到底是怎么样的,咱们话不多说先䁖䁖去。这里定义的 u2 string_index 表示的是常量池的有效索引,其类型是CONSTANT_Utf8_info 结构体表示的,这里我们需要注意的是其中定义的length我们看下面这张图。转载 2022-10-03 16:31:05 · 503 阅读 · 0 评论 -
java:时间戳和Date相互转换
时间戳和Date相互转换转载 2022-07-27 15:12:40 · 11201 阅读 · 0 评论 -
Java:String和List互转
Java String和List互转。转载 2022-07-27 15:07:38 · 2938 阅读 · 0 评论 -
用ajax传递json,返回前台的中文乱码问题
首先看一下没有解决前的状态: 我用的框架是ssm,在springMVC中我配置了编码格式为utf-8,每个jsp页面也用了utf-8,在利用ajax向后台提交的时候也定义了dataType: applicaption / json,但返回到前台依旧是问号,后台显示没有问题 后来找资料,才发现了问题的所在: 因为在controller中返回json用了@ResponseBody,而spring源码中@ResponseBody 的实现类发现其默认的编码是 iso-8859-1,而项目用的编码为ut转载 2022-07-07 13:44:23 · 483 阅读 · 0 评论 -
java实现pdf添加水印功能
1.引入pom文件 <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.5.8</version> </dependency> <!-- https://mvnrepository.com/artifact/com.itextpdf/itext-a原创 2022-04-18 16:25:13 · 8434 阅读 · 8 评论