-
为什么要给代码加注释?Java中的注释有几种?2021/09/13
注释是对程序的某个功能或者某行代码的解释说明,它能够让开发者在后期阅读和使用代码时能更容易理解代码的作用。 注释只在Java源文件中有效,在编译程序时编译器会忽略这些注释信息,不会将其编译到class字节码文件中。 Java中的注释有三种类型,具体如下:...
-
如何手写一个 AQS?2021/09/06
如果让我们自己 ,实现可以分为几个大部分: 加锁 解锁 入队 出队 阻塞 唤醒 我们来想一下这几个部分的实现。 1. 加锁 首先,用一个变量 state 作为锁的标志位。默认值0,表示此时所有线程都可以加锁。加锁的时候通过 CAS 将 state 从 0 变为 1,CAS 执行成...
-
Java多线程编程之不可变对象模式2021/08/23
到底什么是设计模式 其实模式这个概念是从建筑那里引进过来的,就如同正能量其实是从物理学(天体物理学)那里引进的一样,设计模式的定义是: 解决软件设计中给定背景下普遍存在的问题,并且具备一般性、可复用性解决方案 ; 设计模式虽然多,但是也有一些相...
-
Spring Data JPA 与 MyBatis 对比,你喜欢用哪个?2021/08/09
概述 Spring Data JPA是Spring Data的子模块。使用Spring Data,使得基于repositories概念的JPA实现更简单和容易。Spring Data JPA的目标是大大简化数据访问层代码的编码。作为使用者,我们只需要编写自己的repository接口,接口中包含一些个性化的查询方法...
-
两难!到底用 Spring BeanUtils 还是 Apache BeanUtils?2021/08/02
前言 在我们实际项目开发过程中,我们经常需要将不同的两个对象实例进行属性复制,从而基于源对象的属性信息进行后续操作,而不改变源对象的属性信息,比如DTO数据传输对象和数据对象DO,我们需要将DO对象进行属性复制到DTO,但是对象格式又不一样,所以我们...
-
servlet的生命周期及servlet常用方法2021/07/26
(1)问题分析: 考官主要想考核Java基本功的掌握和应用。一方面,是servlet的生命周期;另一方面,则是其单例非线程安全对于安全这块的一个处理。 (2)核心答案讲解: 1)init()方法 在Servlet的生命周期中,仅执行一次init()方法,它是在服务器装入Servle...
-
Java代码中,如何监控Mysql的binlog?2021/07/19
最近在工作中,遇到了这样一个业务场景,我们需要关注一个业务系统数据库中某几张表的数据,当数据发生新增或修改时,将它同步到另一个业务系统数据库中的表中。 一提到数据库的同步,估计大家第一时间想到的就是基于 binlog 的主从复制了,但是放在我们的场...
-
关于Spring注入方式的几道面试题,你能答对几个?2021/07/12
@Autowired , @Resource , @Inject 三个注解的区别 当你在使用 @Autowired 时,是否有出现过 Field injection is not recommended 的警告?你知道这是为什么吗? Spring 依赖注入有哪几种方式?官方是怎么建议使用的呢? 如果你对上述问题都了解,......
-
从头捋了一遍 JDK动态代理,收获颇丰!2021/07/05
动态代理,这个词在Java的世界里面经常被提起,尤其是对于部分(这里强调部分二字,因为有做了一两年就成大神的,实力强的令人发指,这类人无疑是非常懂动态代理这点小伎俩的)做了一两年新人来说,总是摸不清楚来龙去脉,一两年是个坎,为什么是一两年,才...
-
入行Python,掌握哪些技术更好找工作?2021/06/28
以就业为目标,python到底应该学什么? 很多小伙伴知道Python火爆薪资高,开始自学,可是并不知道Python应该学哪些技术、学到什么程度才能找到工作。今天我们就来分析一下, Python学到什么程度才能找到工作。 相关: 我是今年刚刚毕业的不入流大学的本科生...