- 博客(51)
- 收藏
- 关注
原创 Java面试常背Mybatis面试题以及答案整理
MyBatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。程序员直接编写原生态SQL,可以严格控制SQL执行性能,灵活度高。
2024-10-27 20:12:55
1031
原创 换汤不换药的Spring常见面试题
Spring是一个轻量级的Java开发框架,旨在解决企业级应用开发中的业务逻辑层和其他各层的耦合问题。它提供了全面的基础设施支持,包括依赖注入、事务管理、AOP、数据访问、Web开发表现和安全性等方面。
2024-10-27 20:08:04
652
原创 2024年Java面试:必备的易错面试题及答案整理
为枚举类型添加自定义方法,使其能够执行特定的操作。这使得枚举不仅仅是一个简单的常量集合,而是一个可以执行复杂操作的对象。
2024-10-27 19:55:45
788
原创 从校园到职场:Java实习生面试常见问题
首先,需要准确理解问题的需求和限制条件。这一步是解决问题的基础,确保你完全明白需要解决的问题是什么。
2024-10-24 21:42:37
1238
1
原创 面试官视角:如何评估Java开发者的1-3年工作经验
Redis的持久化机制是其重要的特性之一,主要用于将数据从内存中保存到磁盘上,以实现数据的持久性。Redis的持久化机制主要有三种:RDB(Redis Database)、AOF(Append Only File)和混合持久化。RDB持久化原理:RDB持久化通过定期生成数据快照来实现持久化。它会将内存中的数据进行二进制序列化,并保存到一个文件中。优点:RDB持久化具有快速恢复和更小的存储空间占用,适合需要频繁备份和恢复的场景。缺点:RDB持久化在生成快照时会暂停数据库的操作,可能会对性能产生影响。
2024-10-24 21:38:01
669
原创 面经之一:Synchronized与ReentrantLock区别
Synchronized与ReentrantLock是Java中用于实现线程同步的两种主要机制,它们各有特点和适用场景。lock()unlock()lock()unlock()选择使用Synchronized还是ReentrantLock取决于具体的应用场景和需求。对于简单的同步需求,Synchronized是首选;对于需要高级同步功能的复杂场景,ReentrantLock可能更为合适。
2024-10-24 21:15:42
746
原创 你对MySQL的having关键字了解多少?
在MySQL中,HAVING子句用于在数据分组并计算聚合函数之后,对结果进行进一步的过滤。它通常与GROUP BY子句一起使用,以根据指定的条件过滤分组。HAVING子句的作用类似于WHERE子句,但WHERE子句是在数据被聚合之前进行过滤,而HAVING子句是在数据被聚合之后进行过滤。HAVING。
2024-10-24 21:12:54
1374
原创 面试官:`interrupted()` 和 `isInterrupted()` 你真的用懂了吗?
在Java中,和是用于检查线程中断状态的方法,但它们之间有一些关键的区别。ThreadThreadfalsetruefalsetrue和的主要区别在于前者会清除中断状态,而后者不会。选择使用哪个方法取决于是否需要在检查中断状态后重置中断标志。
2024-10-21 20:58:39
740
原创 面试官:并发时,故意不加锁会怎么样?
多个线程同时访问和修改共享资源时,如果没有加锁,可能会导致数据竞争,即一个线程在读取数据的同时,另一个线程修改了数据,从而导致最终的数据状态与预期不符。例如,在多线程环境下,多个线程同时对同一个账户余额进行操作,可能会导致余额计算错误。:不当使用加锁可能导致程序陷入死锁或活锁,严重影响程序的稳定性和性能。死锁是指两个或多个线程互相等待对方释放资源,导致所有线程都无法继续执行;活锁则是指线程虽然在运行,但由于条件不满足而无法完成任务。
2024-10-21 20:49:33
1614
原创 LinkedList作者:我虽然开发了LinkedList,但是我更爱用ArrayList
LinkedList作为双端队列使用时,其主要优势在于插入和删除操作的高效性,特别是在头部或尾部进行这些操作时。然而,其不支持随机访问和较高的内存开销是其主要的性能限制。
2024-10-21 20:38:25
850
原创 面试题:MySQL你用过WITH吗?领免费激活码
使用WITH子句可以定义一个临时表,该表只在当前查询中有效。在这个例子中,temp_table是一个临时表,它包含了从中筛选出的数据。总的来说,WITH子句在处理复杂查询时提供了更高的可读性和性能优势,而临时表则在需要持久化存储和跨查询复用时更为适用。
2024-09-28 20:57:46
1028
原创 如何回答:count(*) 和 count(1)的区别
在SQL查询中,count(*)和count(1)都是用于统计表中行数的聚合函数,它们的主要区别在于语法和执行效率上。count(*)NULLcount(1)1NULLcount(*)count(1)count(*)count(1)count(*)count(*)和count(1)在功能上是等价的,都可以用来统计表中的行数。在实际使用中,可以根据个人偏好选择使用count(*)或count(1),但需要注意的是,它们的性能差异可以忽略不计。
2024-09-28 20:42:02
986
原创 Java面试教程:花样面试MySQL锁
大家好,作为一名Java工程师,MySQL是最常用的数据库了,关于MySQL的索引的面试题也是非常多的。这次,由我带着大家一起摸索一下关于MySQL索引方面的面试题,以及可能拓展的问题。
2024-09-25 21:12:07
1069
原创 玩转Java IO流:轻松读写文件、网络
在Java中,IO(输入输出)操作涉及字符流和字节流。它们是两种不同的抽象类,用于处理不同类型的数据。
2023-08-02 22:41:26
1200
原创 Java枚举解析:掌握枚举的绝佳指南!
枚举是Java中一种非常有用和强大的特性,它使得常量的定义更加明确、安全,提高了代码的可读性和可维护性。使用枚举可以避免魔法数值,增强代码的可靠性,并在多个地方使用相同的常量。同时,枚举还可以用于实现单例模式、状态模式等设计模式,使得代码更加简洁和可扩展。
2023-08-02 22:31:10
547
原创 一文复习Java基础面试知识
总体来说,将链表转换为红黑树的阈值设置为8在大多数场景中表现较好,能够在提高查找性能的同时,不引入过多的额外开销。不过,具体的阈值设置也可以根据实际应用场景进行调整。HashMap在JDK 8中的这一改进使其在大规模数据和高并发场景下的性能得到显著提升。
2023-07-27 22:24:55
282
原创 <Java物联网> 从主动到被动:Java中的BACnet设备属性查询
BACnet(Building Automation and Control Network)是一种常用于楼宇自动化和控制系统的通信协议,它允许设备在楼宇管理系统中进行相互通信和控制。在Java中进行BACnet物联网操作,我们可以使用BACnet4J库,它是一个用于BACnet通信的Java库。
2023-07-23 19:00:29
3432
5
原创 docker容器内使用容器外的shell脚本
使用场景:需要使用java来执行某个脚本,对容器外的某个文件进行操作,把这个文件发送到另外一个服务器上面去为什么写这篇博客呢?因为在优快云上看了很多博客,发现大部分都是容器外使用容器内的操作,所以当我找到解决方法的时候,就顺便发了出来。其实我这个方法其实不是像标题说的一样,在容器内使用容器外的shell脚本首先介绍我会遇到的问题第一个问题: 如何解决在容器内使用容器外的脚本问题(难)第二个问题: 如何在JAVA里面使用SHELL脚本(易)第三个问题:如何免密发送文件到另一台服务器.
2020-12-17 19:10:51
5393
4
原创 不用PageHelper分页该怎么给List分页
记录一下有时候不用PageHelper分页该怎么给List分页这个是做项目的时候在网上找到的一个分页功能,使用后,发现了点bug,加以修改后分享在这里/** * 开始分页 * @param list * @param pageNum 页码 * @param pageSize 每页多少条数据 * @return */ public static List<?> startPage(List<?> list, .
2020-11-18 11:17:27
477
原创 【服务器常用的简单命令】
【服务器常用的简单命令】总结一下自己最近刚接触的服务器命令最简单的Linux命令 help 命令命令用法说明help# help pwd显示pwd命令的帮助–help# ls --help显示ls命令的帮助操作目录的简单Linux命令命令用法说明ls# ls -al列目录包括隐藏文件pwd# pwd显示当前...
2020-04-03 17:12:28
194
原创 mapper为null
今天开发接口的时候,因为一时马虎,导致被一个小bug拖拉了很久,在这里记录一下今天服务器挂了,数据库链接不了。只能靠着理论写接口,之后发现方法调用后查询为空,并且抛出了异常。在Debug环境下,打了断点后发现step只走到了Xxxmapper.xx();就停止了。查看mapper对象发现为空。——开始调查:@SpringBootApplication@EnableSwagger2@E...
2020-03-31 17:55:56
8365
3
原创 Java获取当前时间点与之前的时间点
在开发中,sql条件总会遇到时间段的情况,这个时候通常使用between关键字,所以为了方便获取时间,我给自己写了个实体类import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;/** * 用来获取当前时间和前两个小时的时间 * @author YESIJIE * @da...
2020-03-31 09:43:04
982
原创 【SpringBoot】SpringBoot错误: 找不到或无法加载主类
具体情况:经常遇到这么一个情况,第一天运行正常,功能正常的项目,到了第二天,连项目运行都运行不起来,不是说找不到主类就是说某某类里面什么东西不存在。总之就是运行不了。搞得让人脑壳疼解决方法:一、最常见的方法,使用右边Maven插件功能,对项目进行刷新1.Maven Update Project2.Lifecycle:clean => compile/install哪...
2020-03-27 10:32:19
2591
原创 【我们都遇过的】 See logs for details
Unable to import maven project: See logs for details今天帮同学在他电脑部署它的项目(迷之项目)时,出来了个问题。具体描述是maven依赖无法下载。报出来的信息叫我去查看log。查看log方法: Help=>show log in Explorer=>文件夹中的logctrl+F 查看今天的时间。发现了原因。1)...
2020-03-24 14:57:52
3716
1
原创 【Spring】Only no-arg methods may be annotated with @Scheduled
Only no-arg methods may be annotated with @Scheduled简单的记录一下开发时遇到的问题。这是我在开发一个从公开接口收集数据所写的定时器时所遇到的问题。译文的意思是 只有不带参数的方法可以用@Scheduled注释意思是不能在带参的方式上使用这个注解。因为带参的方法是主动类型的。而定时器是被动类型的。可以选择在写一个无参的方法,然后...
2020-03-24 10:47:37
693
原创 Java核心技术面试题答案
第一问 | Exception和Error有什么区别?回答:共同点:都继承了Throwable类,在Java中,只有Throwable或其子类才能被捕获(catch)或者被抛出(throw)不同点:Error:在正常情况下,不太可能出现的问题。绝大部分Error都会导致程序本身(比如JVM)出现不可避免的,不可恢复的状态。所以这样的问题也没有在程序中进行处理的必要。Excepti...
2020-03-23 15:34:42
605
原创 Java后端使用公开接口
Java使用公开接口一直以来,我们开发都是后端写接口,前端调用接口。但是当你的数据是从其他接口而来的,你的后端只是作为数据的逻辑处理用的话,那么你就必须懂得一种后端自己调用接口的方式。 <!--首先是必要的依赖 --> <dependency> <groupId>org.apache.httpcompon...
2020-03-23 15:20:06
953
原创 【Java基础】——笔记一
JDK和JRE的区别JDK:包括Java开发工具和JREJRE:包括Java虚拟机和Java核心类库Java中int占几个字节?二进制位数:32位字节:4个八种数据类型 数据类型 大小(二进制位数) 范围 默认值 ...
2020-01-02 11:13:52
117
原创 【一定要懂点的】——Dubbo+Zookeeper
分布式笔记客户端的依赖 <dependency> <groupId>com.alibaba.boot</groupId> <artifactId>dubbo-spring-boot-starter</artifactId> <version>0....
2020-01-02 11:12:48
111
原创 【Plugin】mybatis-plus——学习笔记
在SpringBoot中整合Mybatis使用Mybatis-plusmybatis-plus依赖 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId...
2019-12-09 15:02:40
263
原创 SpringBoot——Security
使用SpringSecurity进行安全权限限制package springboot.demo.config;import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;import org.springframework.securit...
2019-11-29 22:29:51
212
原创 SrpingBoot——邮件发送
SpringBoot使用Mail发送邮件pom导入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> ...
2019-11-29 17:03:00
250
原创 【Scheduled的用法】——定时任务
定时任务记录自己学习SpringBoot的时候,运用到的定时任务笔记首先是SpringBoot的主函数入口,最主要的是@EnableScheduling注解@EnableScheduling//让定时任务自动配置的注解@SpringBootApplicationpublic class DemoApplication { public static void mai...
2019-11-29 16:05:48
372
原创 【异步】——异步任务
异步任务记录一下学习完Springboot后进行使用异步方法时的笔记Service层/** * @author YESIJIE * @date 2019-11-29 15:25 */@Servicepublic class Asyncc { @Async//在Service 方法添加@Asunc注解表明是异步方法 public void Hello()...
2019-11-29 15:39:52
113
原创 SQL优化——索引笔记
SQL优化SQL编写过程:select dinstinct…from…join…on…where…group…by…having…order by …limit…SQL解析过程:from…on…join…where…group by…having…select dinstinct…order…by…limit…SQL优化:主要在于 优化索引索引可以理解为书的目录,用于帮助数据库更...
2019-11-19 00:57:44
115
原创 SQL优化总结
索引最好的办法就是对字段创建索引,避免对字段经常修改,不常用字段,数据少的表字段进行创建索引优化索引方面:1.建议在 where 条件的字段创建索引或者 order by 字段进行创建索引。2.并且不要使用 != 或者 >< 来当运算符。这样会导致引擎放弃使用索引从而进行全表搜索。3.不要用 “字段 is null” 的形式,即便用 “字段 = 0” 也好,给予字段...
2019-11-19 00:57:07
91
0积分免费下载,金九银十期间,个人经历的面试题,适合三到五年经验
2024-10-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人