java
文章平均质量分 89
程序员张小妍
相信相信的力量,努力做好自己!
展开
-
都说了能不动就别动,非要去调整,出生产事故了吧
一个老项目,数据库用的是 MySQL 5.7.36 , ORM 框架用的 MyBatis 3.5.0 , mysql-connector-java 版本是 5.1.26新来了一个干练的小伙,精力充沛,看着就是一个喜欢折腾的主他就觉得 MyBatis 使用起来不够简单,要写的代码还比较多,觉得有必要替换成 MyBatis-Plus文件分为主文件和附属文件,主文件生成之后再生成附属文件附属文件生成的时候,会校验其依赖的主文件是否都生成了,如果有任意一个主文件未生成,依赖文件不能生成并抛出异常。原创 2024-03-01 22:39:31 · 1005 阅读 · 7 评论 -
上市公司HR教应届java程序员如何面试?
大家可以分若干个层次依次有条理地说明先亮出自己的信息和亮点。本人叫xxx,xx学校xx系毕业,当下有半年(或其它时间长度)的java项目经验,是在xx公司做的实习,或者是跟着教研室老师做了半年时间的java项目。说下自己做的项目,以及其中用到的技术。我做的是xx仓库管理系统,其中做了出入库管理,物流信息管理和人员管理等模块,本人用的是spring boot + jpa做增删改查,此外还用到了logback和redis或其它(自己实现准备)技术。再重点说下这个项目区分于学习项目的要点。转载 2023-03-03 16:20:58 · 478 阅读 · 0 评论 -
如何去阅读源码,我总结了18条心法
当我们在读完一个类的代码的时候,一定要总结这个类的职责,明白这个类存在的意义。一般情况下一个类核心职责只有一个,遵循单一职责的设计原则。举个例子,在RocketMQ中有一个类MQClientAPIImpl。转载 2023-03-02 10:23:26 · 755 阅读 · 2 评论 -
不要再说IDEA的Project比作Eclipse的Workspace
前言有一个观点:若一个Java开发者能把IDEA玩得666,则技术一定不会差;但若玩不转IDEA(如不会设置、定制、解决日常问题、快捷键等等),那大概率水平很一般。因为高手一般得有高手的样子,你同意这个观点吗?现今的Javaer绝大部分都使用IntelliJ IDEA作为IDE进行开发,但同时发现(从身边同事调查)大部分同学都并不能很好的使用IDEA,其中表现最为突出的是IDEA里的Project和Module两个概念,混淆不清或者概念完全扭曲。本人是一个相对来讲很注重基础知识搭建的Javaer转载 2021-12-14 13:06:50 · 623 阅读 · 2 评论 -
LocalDateTime、OffsetDateTime、ZonedDateTime互转
前言在JSR 310日期时间体系了,一共有三个API可用于表示日期时间:LocalDateTime:本地日期时间 OffsetDateTime:带偏移量的日期时间 ZonedDateTime:带时区的日期时间也许平时开发中你只用到过LocalDateTime这个API,那是极好的,但是不能止步于此,否则就图样图森破了。随着场景的多样性变化,咱们开发者接触到OffsetDateTime/ZonedDateTime的概率越来越大,但凡和国际化产生上关系的大概率都会用得到它们。本文依然站在实..转载 2021-12-14 13:00:05 · 1993 阅读 · 1 评论 -
Java多线程:死锁
一、死锁的定义 多线程以及多进程改善了系统资源的利用率并提高了系统 的处理能力。然而,并发执行也带来了新的问题——死锁。所谓死锁是指多个线程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程都将无法向前推进。 所谓死锁是指两个或两个以上的线程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。 下面我们通过一些实例来说明死锁现象。 先看生活中的一个实例,两个人面对面过独木桥,甲和乙都已经在桥上走了一段距离,即占用了桥...原创 2021-12-09 09:54:46 · 1111 阅读 · 0 评论 -
简述鸿蒙系统与安卓系统的区别
源起经常有小伙伴说,鸿蒙不就是安卓系统套子个皮么?类似小米的米UI和华为自有的EMUI。可能看到文章的很多小伙伴也是这么想的吧?只能说这么理解过于肤浅了,虽然我开始也是这么的肤浅。概念华为鸿蒙系统是一款全新的面向全场景的分布式操作系统,创造一个超级虚拟终端互联的世界,将人、设备、场景有机地联系在一起,将消费者在全场景生活中接触的多种智能终端实现极速发现、极速连接、硬件互助、资源共享,用最合适的设备提供最佳的场景体验。鸿蒙OS是一款基于微内核面向全场景的分布式操作系统。微内核微内核是一种能转载 2021-12-09 09:42:30 · 4189 阅读 · 2 评论 -
我们为什么要做分库分表?
前言在高并发系统当中,分库分表是必不可少的技术手段之一,同时也是BAT等大厂面试时,经常考的热门考题。你知道我们为什么要做分库分表吗?这个问题要从两条线说起:垂直方向和水平方向。1、垂直方向垂直方向主要针对的是业务,下面聊聊业务的发展跟分库分表有什么关系。1.1 单库在系统初期,业务功能相对来说比较简单,系统模块较少。为了快速满足迭代需求,减少一些不必要的依赖。更重要的是减少系统的复杂度,保证开发速度,我们通常会使用单库来保存数据。系统初期的数据库架构如下:..转载 2021-11-05 11:13:26 · 334 阅读 · 0 评论 -
关于 .NET 与 JAVA 在 JIT 编译上的一些差异
在此并不讨论 JAVA与 .NET 的好坏,仅仅是对 .NET 跟 JAVA 程序的编译执行过程进行一些简单的介绍跟比较。因为有些内容还是超出自己原来的认知的,所以整理一下做个记录。.NET.NET 程序的执行过程大概分以下几个步骤:代码 语言编译器编译 IL JIT 编译 运行.NET 平台的程序编译的时候是分多步的。当我们写好代码开始编译的时候需要选择一个合适的编译器比如csc 、vbc 。经过这一次编译之后我们的程序会被打包成 dll或者 .exe 文件。这些 dll 里面其实原创 2021-10-26 15:15:09 · 398 阅读 · 0 评论 -
Java中类型判断的几种方式
1. 前言在Java这种强类型语言中类型转换、类型判断是经常遇到的。今天就细数一下Java中类型判断的方法方式。2. instanceofinstanceof是Java的一个运算符,用来判断一个对象是否为一个类的实例 。用法:boolean isInstance = obj instanceof Class其中obj为一个对象实例,Class为类名或者一个接口名,当obj为Class的实例,或是其子类实例,或是其接口的实现类实例,都返回true,否则返回false。...转载 2021-07-20 09:38:47 · 3995 阅读 · 0 评论 -
JAVA实现AES加密、解密
一、什么是AES?高级加密标准(英语:Advanced Encryption Standard,缩写:AES),是一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。那么为什么原来的DES会被取代呢,,原因就在于其使用56位密钥,比较容易被破解。而AES可以使用128、192、和256位密钥,并且用128位分组加密和解密数据,相对来说安全很多。完善的加密算法在理论上是无法破解的,除非使用穷尽法。使用穷尽法破解密钥长度在128位以上的加密数据是不现实的,仅存在理论上的可能原创 2021-07-08 06:34:30 · 964 阅读 · 1 评论