![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java零碎知识点罗列
文章平均质量分 84
jakiechaipush
小白进化中
展开
-
XML文件原理详解
XML(可扩展标记语言)是一种用于编码文档的标准。它是由万维网联盟(W3C)在1998年制定的,目的是让信息能够易于共享、处理和传输。XML 是标记语言,这意味着它用标记(或元素)来描述数据或内容。这些标记是用户定义的,所以 XML 可以用来描述任何类型的数据。比如,你可以创建一个包含“书”和“作者”标记的 XML 文档来描述一个图书库。可扩展性:XML 让用户定义自己的标记。这意味着它可以扩展和适应各种应用和信息模型。自我描述性:因为标记是用户定义的,所以 XML 文档通常能描述其包含的信息。原创 2023-06-11 22:50:59 · 2099 阅读 · 0 评论 -
Java反射与注解
Annotation是JDK5.0开始引入的新技术,Annotation不是程序本身,它可以对程序作出解释(这一点和注释没什么区别),但它可以被其他程序读取。注解(Annotations)是一种用于提供元数据的机制,可以被用于类、方法、变量、参数和包等。这些元数据本身对代码的逻辑没有直接影响,但可以被用来影响编译、运行时行为,或者被用来做代码生成、测试和API文档等。标准注解:Java 提供的标准注解,比如 @Override, @Deprecated, @SuppressWarnings。原创 2023-06-11 07:39:15 · 2051 阅读 · 0 评论 -
代理模式(CGLIB和JDK)
房屋中介代理:客户手里没有房源信息,所以我们需要找一个中介来获得房源商品代购:我们手里没有低成本的商品,所以我们需要找代购者获得低成本商品对于消费者而言,通过代购只需要关心自己的商品,而不需要关注如何获得商品,这样就对消费者进行了增强代理模式是23种设计模式中的一种,属于结构型的模式。指一个对象本身不做实际的操作,而是通过其它对象得到自己想得到的结果,所以目标对象只需要关心自己实现的细节,而通过代理对象来实现功能的增强,可以扩展目标对象的功能。原创 2023-06-07 15:12:06 · 1256 阅读 · 1 评论 -
Lombok快速使用
Lombok项目是一个java库,它可以自动插入到编辑器和构建工具中,增强java的性能。不需要再写getter、setter或equals方法,只要有一个注解,你的类就有一个功能齐全的构建器、自动记录变量等等。从本质上面来讲Lombok的出现就是来减少我们的代码量。原创 2022-10-25 14:08:12 · 437 阅读 · 0 评论 -
Mybatis-plus学习(基于版本3.0.5)
Mybatisplus从字面上面理解时Mybatis的加强版,它可以大大节省我们大量的工作时间,所有的增删改查代码它都可以在mybatisplus中自动的完成,其本质上上Mybatis的一个增强工具,在Mybatis的基础上只做增强不做改变,为简化开发,提高效率而生。原创 2022-10-22 17:23:08 · 2740 阅读 · 0 评论 -
JPA概括
jps原理与使用方法原创 2023-04-13 17:04:16 · 651 阅读 · 0 评论 -
Java多线程编程—wait/notify机制
wait/notify 多线程 消费者生产者模式原创 2023-04-08 10:19:00 · 886 阅读 · 0 评论 -
JUnit
junit测试模块的基本语法原创 2022-10-21 08:46:41 · 240 阅读 · 0 评论 -
java.util.concurrent.atomic
由于AtomicInteger提供了原子操作,因此多个线程可以安全地对其进行自增操作,而不会产生竞态条件或线程冲突。java.util.concurrent.atomic包中的原子类提供了一种简单而高效的方式来处理多线程环境中的共享变量。java.util.concurrent.atomic是Java中的一个包,提供了一组原子操作类,用于在多线程环境下进行原子性操作。这些类可用于实现线程安全的、无锁的操作,保证操作的原子性,避免数据竞争和线程冲突。原子操作是不可中断的,即在执行期间不会被其他线程中断。原创 2023-05-23 16:14:17 · 746 阅读 · 0 评论 -
多线程环境下Java怎么从线程返回信息?
你可以使用该哈希值进行进一步的验证、比对或存储,以确保文件的完整性或进行其他安全相关的操作。该机制是通过调用主类(即启动子线程的类)中的一个方法来做到的。这样依赖,主程序就可以在等待线程结束期间休息,而不会占用运行线程的时间。习惯了传统单线程过程式模型的程序员在转向多线程环境时,最难掌握的一点就是如何从线程返回信息。从结束的线程获得信息,这是多线程编程中最常被误解的方面之一。但上面程序存在一个很大的问题,由于调用了join主线程一直阻塞在这里,这样程序的效率是很不高的,所以我们介绍一种更好的方法,即。原创 2023-05-23 15:06:34 · 913 阅读 · 0 评论 -
java序列化和文件的输入和输出
如果我们只有自己写的java程序会用到这些数据:此时我们就可以用序列化,将被序列化的对象写到文件中,然后就可以让你的程序去文件中读取序列化的对象并把它们展开回到活生生的状态。如果数据需要被其他程序引用:写一个纯文本文件,用其他程序可以解析的特殊字符写到文件中。Java 提供了一种对象序列化的机制,该机制中,一个对象可以被表示为一个字节序列,该字节序列包括该对象的数据、有关对象的类型的信息和存储在对象中数据的类型。原创 2023-05-23 11:30:51 · 1193 阅读 · 0 评论 -
java线程池ThreadPoolExecutor使用
java线程池原创 2023-05-22 16:39:30 · 1858 阅读 · 0 评论 -
Java的并发集合框架
JDK提供了丰富的集合框架工具,Java语言的集合框架的父接口时Iterable,从这个接口向下一一继承可以得到完整的Java集合架构。分段锁机制:ConcurrentHashMap内部使用了分段锁(Segment Locking)的机制,将内部哈希表分割成多个段(Segment)。每个段拥有独立的锁,因此不同的线程可以并发地访问不同的段,减少了锁的竞争范围,提高了并发性能。相比于使用单一锁的全局同步机制,分段锁机制能够提供更好的并发度。原创 2023-05-21 23:28:18 · 876 阅读 · 0 评论 -
Java多线程异常处理
当单线程中初出现异常时,我们可在该线程run()方法的catch语句中进行处理,当有多个线程中出现异常时,我们就得在每个线程run()方法的catch语句中进行处理,这样会造成代码严重冗余。IllegalThreadStateException(非法线程状态异常):当尝试将一个线程添加到已经销毁的线程组或一个线程组已经被终止时,可能会抛出此异常。NullPointerException(空指针异常):在某些情况下,尝试对一个空的线程组对象进行操作(如添加线程、设置线程组名称等)可能会导致此异常。原创 2023-05-21 15:32:57 · 2197 阅读 · 0 评论 -
SimpleDateFormat非线程安全问题
SimpleDateFormat解决线程问题原创 2023-05-21 10:14:44 · 524 阅读 · 0 评论 -
java线程组
java线程组原创 2023-05-19 23:17:29 · 656 阅读 · 0 评论 -
java线程的状态
java线程状态原创 2023-05-19 22:41:12 · 706 阅读 · 1 评论 -
单例模式与多线程
java多线程与单例模式原创 2023-05-19 15:55:55 · 1304 阅读 · 0 评论 -
java多线程之定时器
定时功能在java中主要是通过Timer类实现,因为它在内部还是使用多线程的方式进行处理,所以和多线程技术还是有非常大的管理该方法的作用是在指定的日期执行一次某一任务执行任务的时间晚于当前时间(在未来执行)的效果如果Data time,该参数的时间晚于现在的时间就是未来执行,而该参数的时间早于现在的执行就是立即执行的意思测试代码如下System . out . println("当前时间为:" + nowTime);原创 2023-05-18 21:51:04 · 2006 阅读 · 0 评论 -
XSS攻击以及java应对措施
随着互联网的高速发展,信息安全问题已经成为企业最为关注的焦点之一,而前端又是引发企业安全问题的高危据点。在移动互联网时代,前端人员除了传统的 XSS、CSRF 等安全问题之外,又时常遭遇网络劫持、非法调用 Hybrid API 等新型安全问题。当然,浏览器自身也在不断在进化和发展,不断引入 CSP、Same-Site Cookies 等新技术来增强安全性,但是仍存在很多潜在的威胁,这需要前端技术人员不断进行 “查漏补缺”。XSS 全称 Cross Site Scripting,跨站脚本攻击。原创 2023-05-18 11:49:59 · 5258 阅读 · 1 评论 -
JsonSerializer的使用
JsonSerializer使用原创 2023-05-11 10:04:00 · 3578 阅读 · 0 评论 -
java存储大整数的方法
这里使用了一个 addStrings 方法来实现两个字符串的相加,该方法使用了 StringBuilder 来构造结果字符串,并且按照相加的逻辑进行循环处理,最终返回结果字符串。需要注意的是,在字符串相加时需要将每个字符转换成数字进行运算。:BigInteger 类可以存储任意大小的整数,它提供了大量的方法进行整数运算。是 Java 中用于存储任意大小整数的类,它提供了丰富的方法来进行整数运算。:可以将大整数转换成字符串,然后进行运算。原创 2023-05-10 15:28:16 · 1481 阅读 · 0 评论 -
serialVersionUID的作用?
在Java中,当一个对象被序列化后,如果在序列化和反序列化之间,对该对象的结构进行了修改,那么反序列化就会失败,这时候就需要通过指定 serialVersionUID 来指定兼容版本。如果相同说明是一致的,可以进行反序列化,否则就会出现不兼容版本异常。在序列化和反序列化的时候,JVM会自动识别该值,并进行版本的比较,从而确保只有同一版本的类才能进行反序列化。因此,为了保证序列化和反序列化的兼容性,一般建议在所有需要序列化的类中定义 serialVersionUID 值。原创 2023-05-09 21:42:12 · 687 阅读 · 0 评论