java
文章平均质量分 82
z晨晨
这个作者很懒,什么都没留下…
展开
-
从源码级别了解java双亲委派
双亲委派 双亲委派的机制是在Java1.2后引入的,其工作原理就是java在加载某个类(.class)文件时会先去委托父加载器去寻找并加载目标类,递归这个操作,如果所有的父加载器在自己的加载类路径下都找不到目标类,自己才会去加载这个类。 类加载器的类别 引导类加载器(Bootstrap ClassLoader) 引导类加载器(启动类加载器):c++编写,负责将JAVA_HOME/lib下面的核心类库或-Xbootclasspath选项指定的jar包等虚拟机识别的类库加载到内存中,构造ExtClassLoad原创 2021-07-28 20:49:00 · 145 阅读 · 1 评论 -
Spirng的Controller是单例还是多例?怎么保证并发安全
所谓单例就是所有的请求都用一个对象来处理,比如我们常用的service和dao层的对象通常都是单例的,而多例则指每个请求用一个新的对象来处理,比如action; 讲解 controller默认是单例的,不要使用非静态的成员变量,否则会发生数据逻辑混乱。正因为单例所以不是线程安全的。 下面我们来简单的验证一下: package com.kafka.demo.controller; import org.springframework.web.bind.annotation.RequestMapping;.原创 2020-09-01 10:24:09 · 214 阅读 · 0 评论 -
SSM 利用AES 进行JS和Java互通加解密
最近新项目上线,被客户扫描出【已解密的登录请求】,原因是我们在登录请求时没有对用户名或密码进行加密请求(悲催,以前的项目没有进行加密也没出啥问题),本着客户至上的原则,我们在下次投产时把这个功能给加上。 在网上关于JS和java互通加解密的算法有很多,比如DES、RSA、base64和AES等。权衡之下选择了AES加解密算法。 废话不多说,开始我们的代码之旅吧。 ...原创 2020-07-23 22:13:06 · 225 阅读 · 0 评论 -
Object类中equals方法和hashcode方法
equals():用来判断两个对象是否相同,在Object类中是通过判断对象间的内存地址来决定是否相同 hashCode():获取哈希码,也称为散列码,返回一个int整数。这个哈希码的作用是通过该对象在哈希表中的索引位置。 由于同为Object类中的方法,所以基本上所有java类都会继承这两个方法,所以通过阅读hashCode方法的注释发现了: /** * Returns a h...原创 2020-02-09 09:30:35 · 448 阅读 · 0 评论 -
Java 最常见 200+ 面试题全解析:面试必备
1、java创建对象时会做哪些操作? 创建java对象的前提是必须是类要加载之后才能创建对象,java的类加载使用类加载器(ClassLoder)加载类的,那么类加载器是如何工作的?类的加载是通过jvm加载的,分为三个步骤:装载(Load),链接(link)和初始化(initializa),链接又分为三个步骤如下图所示 装载:查找并加载类的二进制数据; 链接: 验证:确保被加载类的正确性; 准...原创 2020-01-29 17:24:59 · 193 阅读 · 0 评论 -
Java对象克隆
java中对象克隆有两种方法: 1)实现Cloneable接口并重写Object类中的clone()方法; 2)实现Serializable接口,通过对象的序列化和反序列化实现克隆,可以实现真正的深度克隆。 ...原创 2019-09-04 22:04:08 · 255 阅读 · 0 评论