目录1、string和stringbuffer和stringbuilder的区别2、MyBatis防止SQL注入的方法3、JDK动态代理和CGLIB动态代理的区别?4、动态代理和静态代理的区别5、Spring中的动态代理是通过什么方式实现的?6、Lombok的原理7、spring循环依赖以及解决办法8、spring在哪些情况下无法解决循环依赖问题?9、java中的锁有哪些? 10、mys
转载
2023-07-18 16:06:59
57阅读
(1)配置文件中指定需要扫描的包路径
(2)定义一些注解,分别表示访问控制层、业务服务层、数据持久层、依赖注入注解、获取配置文件注解
(3)从配置文件中获取需要扫描的包路径,获取到当前路径下的文件信息及文件夹信息,我们将当前路径下所有以.class结尾的文件添加到一个Set集合中进行存储
转载
2023-07-25 18:34:36
61阅读
本文主要对一些常见的Java后端面试题做一些收集。答案可能来自于各个博客与网站,仅做参考使用。Java基础部分java基础知识索引1、==和equals的区别equals和==的区别2、基本类型和包装器类怎么比较的基本数据类型和包装类进行比较3、面向对象四个特性。(抽象、继承、封装、多态)4、重载和重写的区别Java—重写与重载的区别5、String、StringBuffer、StringBuil
转载
2023-10-29 19:31:29
41阅读
1、什么是索引回表,如何避免?关于这个问题,这里以 MySQL InnoDB 来说,先简单介绍下 MySQL InnoDB 的 B+ 树索引。B+ 树索引主要可以分为两种索引,聚集索引和非聚集索引。聚集索引:也就是平常我们说的主键索引,在 B+ 树中叶子节点存的是整行数据。非聚集索引:也叫二级索引那我们应该如何避免回表,因为如果用到了回表,就需要二次查询的过程,效率肯定更慢,很简单,回表是因为要查
转载
2023-08-08 07:20:27
66阅读
前言:如果你还在到处找面试题!那么!看看这个!适宜阅读人群待面试的 初/中/高级 Java 程序员查漏补缺的人想要不断完善和扩充自己 Java 技术栈的人Java 面试官这些面试题包含哪些内容?这份面试题包含了 19 个模块:Java 基础、容器、多线程、反射、对象拷贝、Java Web、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、H
转载
2023-08-21 16:15:47
44阅读
1.Arrays.sort实现原理和Collection实现原理 Collection.sort()底层会调用Arrays.sort(),Arrays.sort()底层实现是TimeSort,TimeSort的算法就是先找到已经排好序数据的子序列,然后对剩余部分数据进行排序,然后在合并起来。2.foreach和while的区别(编译之后) while会读一行输入,把它存入某个变
转载
2024-07-24 12:57:19
285阅读
我们学习java知识,除了要做基础的程序运行外,不可避免的要在面试中遇到一些理论的考察。有些小伙伴程序做的不错,但是理论上面有所欠缺。这里小编整理了一些常见的后端面试题,希望能对小伙伴们有所帮助,下面一起看看吧。一、八种基本数据类型的大小,以及他们的封装类。byte(Byte) 1 ,short(Short) 2 ,int(Integer) 4 ,long(Long) 8 ,float(Float
转载
2023-09-08 12:42:42
77阅读
Java集合框架为Java编程语言的基础,也是Java面试中很重要的一个知识点。这里,我列出了一些关于Java集合的重要问题和答案。 每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。随着集合的广泛使用,Java1.2提出了囊括所有集合接口、实现和算法的集合框架。在保证线程安全的情况下使用泛型和并发集合类,Java已经经历了很久。
转载
2023-09-08 16:20:52
77阅读
MySQL 3 种text类型的最大长度如下:覆盖索引是指一个索引包含了查询所需的所有列,因此不需要访问表中的数据行就能完成查询
1.public class Test {
public static void main(String[] args) {
User u = new User("fff");
Test.setUsers(u);
System.out.println(u.get
原创
2014-11-06 20:58:53
762阅读
1.抽象和封装的不同点抽象和封装是互补的概念。一方面,抽象关注对象的行为。另一方面,封装关注对象行为的细节。一般是通过隐藏对象内部状态信息做到封装,因此,封装可以看成是用来提供抽象的一种策略。2.重载和重写的区别重载: 发生在同一个类中,方法名必须相同,参数类型不同、个数不同、顺序不同,方法返回值和
转载
2020-02-19 14:48:00
131阅读
2评论
Java基础方面: 1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly √ √ × × private √ ×
原创
2021-07-14 15:03:08
105阅读
1用过jdk8吗?了解函数式编程吗?NIO了解吗?2CopyOnWrite应用场景?3如何java实现互斥锁?zk实现分布式队列?4数据库优化方式?数据库索引有哪些,区别。5如何保证一个类是线程安全的?servlet是线程安全的吗?6线程池拒绝策略?7策略模式和状态模式的区别?单利如何保证线程安全?jdk动态代理原理?【动静区别】8jvm的运行时数据结构?调试时候用的哪里最多?9搭建过集群,如何保
原创
2017-12-13 21:35:07
1549阅读
【面试题】Java基础简述JDK和JRE的区别 JDK是Java开发人员在开发过程中使用的软件开发包,它提供了Java的开发环境和运行环境。 JRE是Java Runtime Enviroment,Java的运行环境。 如果你只想跑Java程序,只需要安装jre就够了,如果要从事开发就得安装jdk。简述path和classpath的区别 path是系统
原创
2022-01-21 10:31:44
61阅读
# Java后端加密面试题实现流程
## 1. 理解需求
首先,我们需要明确需求是什么,以便能够更好地设计和实现加密功能。在这个场景中,我们需要实现一个Java后端加密面试题。具体来说,我们需要实现以下功能:
- 加密面试题内容
- 解密已加密的面试题内容
## 2. 设计加密算法
接下来,我们需要设计一个加密算法来实现加密和解密的功能。在这里,我们选择使用对称加密算法AES(Advance
原创
2023-10-20 04:19:08
110阅读
1. 如何用数组实现队列?用数组实现队列时要注意 溢出 现象,这时我们可以采用循环数组的方式来解决,即将数组收尾相接。使用front指针指向队列首位,tail指针指向队列末位。2. 内部类访问局部变量的时候,为什么变量必须加上final修饰?因为生命周期不同。局部变量在方法结束后就会被销毁,但内部类对象并不一定,这样就会导致内部类引用了一个不存在的变量。所以编译器会在内部类中生成一个局部变量的拷贝
转载
2023-09-25 08:54:21
88阅读
ArrayList 扩容机制步骤1.检查 检查之前的元素数量+1 是否 大于元素存储容量,如果大于 则进行扩容2.创建一个新的数组,新的数组是原先的1.5倍 采用 N+N>>1,把就得元素Copy 到新的元素3.如果是插入 先扩容,再把下标及之后的元素copy 到+1下标,再进行当前下标赋值 关注公众号 [龗孖] 或搜索公众号[lingmaW] , 获得更多新干货!!!
原创
2022-09-14 17:44:48
150阅读
讲一下hashmap的数据结构使用过哪些设计模式
原创
2024-03-02 21:01:08
0阅读
1、面向对象的特征一般来讲有三大特征,封装、继承、多态,可以再加一个抽象。其中多态是最重要的多态是指允许不同子类型的对象对同一消息作出不同的响应。多态包括编译时多态和运行时多态。方法重载(overload)实现的是编译时的多态性(也称为前绑定),而方法重写(override)实现的是运行时的多态性(也称为后绑定)。运行时多态是面向对象最精髓的东西,要实现运行时多态需要:方法...
原创
2021-06-02 11:32:49
207阅读