![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Code
Cierlly
继续搞啊!
展开
-
CodeNote_1.1.2_自定义序列化中,实现对int类型数据的加密和解密操作
每一个类都继承自Object类。其中的writeObject和readObject函数可以进行序列化和反序列化,重写的话,可以对数据进行加密。原创 2023-05-24 17:18:33 · 114 阅读 · 0 评论 -
CodeNote_1.1.1_Java序列化读取过程
Java自带序列化函数,其优点是安全可靠,兼容性好,缺点是无法跨语言,序列化后的流太大,性能很差。原创 2023-05-24 14:41:41 · 579 阅读 · 0 评论 -
CodeNode_1.1.0_Java序列化接口
Java中的序列化是指将一个Java对象“转换”为一串连续的byte字节(字节数组或者流),以便写入文件或者通过socket(套接字)发送出去。这一串字节码包括了对象的数据,以及其成员变量的类型信息(元信息)等。反序列化:将文件或者socket中读取字节,还原回Java对象。// 将指定对象序列化为字节数组 byte [ ] serialize(Object obj) throws IOException;原创 2023-05-24 13:39:02 · 51 阅读 · 0 评论 -
CodeNote_1.2.0_spring中bean的基本配置
在上述配置中,myFactoryBean 是 FactoryBean 的实例,通过 class 属性指定了实现类 com.example.MyFactoryBean。myProduct 是由 myFactoryBean 创建的产品对象,通过 factory-bean 属性指定了工厂 bean 的 ID,通过 factory-method 属性指定了工厂方法名 getObject。需要注意的是,FactoryBean 本身也是一个 Bean,因此需要给它定义一个唯一的 ID,并在其他地方引用它。原创 2023-05-21 07:20:58 · 451 阅读 · 0 评论 -
CodeNode_1.0.9_单例模式
单例模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一对象的方式,可以直接访问,不需要实例化该类对象。原创 2023-05-20 17:33:13 · 73 阅读 · 0 评论 -
CodeNote_1.0.8_观察者模式相关代码
观察者模式(Observer Pattern)是一种行为型设计模式,用于在对象之间建立一种一对多的依赖关系,当一个对象的状态发生变化时,其依赖的其他对象会自动收到通知并进行相应的更新。:也称为被观察者或可观察对象,它维护一组观察者对象并提供注册、删除和通知观察者的方法。主题通常包含一个状态,当状态发生变化时会通知观察者。:也称为订阅者或监听者,它定义了一个接口或抽象类,用于接收主题的通知,并执行相应的操作。观察者通过订阅主题来表达对主题状态变化的兴趣。原创 2023-05-20 17:09:33 · 574 阅读 · 0 评论 -
CodeNote_1.0.7_SpringBean的三种注册方法
通过bean元素来配置Bean,其中id属性指定了Bean的唯一标识符,class属性指定了Bean的类名。在上述示例中,我们通过AnnotationConfigApplicationContext类加载了AppConfig配置类,并通过getBean()方法从容器中获取了MyBean的实例。在实际使用中,你可以根据自己的项目和类的结构来配置beans.xml文件,并根据需要定义更多的Bean和配置。使用@Bean注解来定义Bean的方法,方法名即为Bean的名称,方法返回值为Bean的实例。原创 2023-05-20 15:22:04 · 537 阅读 · 0 评论 -
CodeNote_1.0.6_反射用法实例
接着,使用get()方法获取了属性的值,并打印输出。然后,我们使用反射获取该类的构造函数Constructor对象,通过构造函数的newInstance()方法创建了MyClass类的实例。然后,我们创建了MyClass类的实例,并使用invoke()方法动态执行了printMessage()方法。此外,反射动态执行方法通常在需要动态地调用方法时使用,但在普通的编程场景中,直接调用方法更为常见和简单。请注意,使用反射可以动态地操作类的成员和方法,但要谨慎使用,因为它增加了复杂性并可能影响性能。原创 2023-05-18 21:33:30 · 44 阅读 · 0 评论 -
CodeNote_1.0.5_动态代理
最后,在DynamicProxyExample类中,我们使用Proxy.newProxyInstance()方法创建了动态代理对象,并将目标对象和代理对象绑定在一起。动态代理的好处之一是它可以在不修改原始类代码的情况下,为原始类添加额外的功能。在上述示例中,我们通过动态代理在方法执行前后添加了日志,而无需修改原始的CalculatorImpl类。此外,动态代理还可以实现面向切面编程(AOP),通过将一些通用的横切关注点(如日志、事务、安全等)从业务逻辑中分离出来,提供了更好的代码组织和维护性。原创 2023-05-18 20:29:23 · 55 阅读 · 0 评论 -
CodeNote_1.0.3_使用Exchanger中的exchange进行交换
名字上来说就是交换。Exchanger用于在两个线程之间进行数据交换,线程会阻塞在exchanger上,直到另一个线程也进入了Exchanger中的exchange方法。原创 2023-05-18 19:59:42 · 57 阅读 · 0 评论 -
CodeNote_1.0.2_使用循环屏障CyclicBarrier进行线程阻截,实现多核排序功能
循环屏障,可以协同多个线程,让多个线程在屏障前等待。直到所有线程都达到这个屏障的时候,再一起执行后面的动作。原创 2023-05-18 19:35:04 · 51 阅读 · 0 评论 -
CodeNote_1.0.1_使用CountDownLatch对多核机器上的数据进行排序
CountDownLatch方法可以等待所有的线程全部countDown,执行完变成0,然后再执行其他程序。原创 2023-05-18 19:21:12 · 45 阅读 · 0 评论