自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(135)
  • 收藏
  • 关注

原创 Java架构师面试题系列之Mybatis面试专题(36题,含详细答案解析

3)Hibernate 对象/关系映射能力强,数据库无关性好,对于关系模型要求高的软件(例如需求固定的定制化软件)如果用 hibernate 开发可以节省很多代码,提高效率。但是Hibernate 的缺点是学习门槛高,要精通门槛更高,而且怎么设计 O/R 映射,在性能和对象模型之间如何权衡,以及怎样用好 Hibernate 需要具有很强的经验和能力才行。总之,按照用户的需求在有限的资源环境下只要能做出维护性、扩展性良好的软件架构都是好架构,所以框架只有适合才是最好。10、MyBatis 的好处是什么?

2021-12-24 13:08:11 341

原创 Java数组的拷贝 优化冒泡排序 二分查找,超硬核

}}2.Arrays.copyOf()方法import java.util.Arrays;//数组的拷贝(Arrays.copyOf())public class Test10 {public static void main(String[] args) {int[]array={1,2,3,4,5,6,7};int[] ret= Arrays.copyOf(array,array.length);System.out.println(Arrays.toString(array));

2021-12-24 13:04:17 240

原创 Java程序员两次美团面试失败后,只剩这份学习笔记了(含泪整理

过了7天,该员工又去了腾讯面试,见到面试官后都蒙了,太悲哀了,怎么这个面试官就是自己去美团时,面试自己的人。后来才知道,那个领导以前在美团上班,后来也辞职跳槽到了腾讯,因为业务相同,自己又遇到了他。很显然,结果和在美团一样,又挂了!不得不说,这个员工的经历也是巧了,两次去公司面试,都是同一个面试官。我们可以想一下,腾讯毕竟比美团要大很多,美团都过不了,那这次肯定也没什么希望,只能自认倒霉了!那么,网友是怎么看的呢?有网友这么说,你应该跟面试官主动打招呼:哥,你也来了,看在我们这么有缘的面上,能不能让.

2021-12-23 12:39:20 280

原创 Java核心编程总结(六、常用API与集合),Spring事务扩展机制

0.写在前面本笔记用作复习查看用,基础完整总结部分,基础不牢,地动山摇!| ????Java帝国之行???? | 地址 || — | — || Java核心编程总结(一、继承) ???? | https://blog.youkuaiyun.com/Augenstern_QXL/article/details/116209463 || Java核心编程总结(二、抽象类与接口)???? | https://blog.youkuaiyun.com/Augenstern_QXL/article/details/116209

2021-12-23 12:38:13 779

原创 java核心技术(8)第四章 类,nginx负载均衡原理图

关键在于绝对不能让类中的方法直接方位其他类的实例域。程序仅通过方法与对象的数据交付。这是提高重用性和可靠性的关键。对象的所有实例域的值的集合就是这个对象的当前状态。(只能通过调用方法改变,如果不用通过调用方法就改变了状态,说明封装性遭到破坏)。对象的行为即方法,状态影响行为,如不同状态订单,可进行操作不一样。3、类于类之间的关系1)依赖(uses-a)应尽量减少依赖,降低耦合2)聚合(has-a) 即包含关系,如订单包含条目3)继承(is-a)特殊与一般的关系,如程序员继承人类。4、对象的使

2021-12-23 12:36:50 124

原创 Java架构师面试题系列之Dubbo面试专题(29题,含详细答案解析

4. Dubbo 集群的负载均衡有哪些策略? Dubbo 提供了常见的集群策略实现,并预扩展点予以自行实现。Random LoadBalance: 随机选取提供者策略,有利于动态调整提供者权重。截面碰撞率高,调用次数越多,分布越均匀;RoundRobin LoadBalance: 轮循选取提供者策略,平均分布,但是存在请求累积的问题;LeastActive LoadBalance: 最少活跃调用策略,解决慢提供者接收更少的请求;ConstantHash LoadBalance: 一致

2021-12-23 12:35:45 279

原创 Java最新高频大厂面试集锦(附答案),java面试题及答案解析

26. 如何实现数组和 List 之间的转换?27. ArrayList 和 Vector 的区别是什么?28. Array 和 ArrayList 有何区别?29. 在 Queue 中 poll()和 remove()有什么区别?30. 哪些集合类是线程安全的?31. 迭代器 Iterator 是什么?32. Iterator 怎么使用?有什么特点?33. Iterator 和 ListIterator 有什么区别?34. 怎么确保一个集合不能被修改?dockr容器点此传送门领取文中

2021-12-23 12:34:38 204

原创 JAVA数组,血与泪的总结

2.方式二格式:数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3…};举例:定义存储1,2,3,4,5,6整数的数组容器。int[] arr = new int[]{1,2,3,4,5,6};3.方式三格式:数据类型[] 数组名 = {元素1,元素2,元素3…};举例:定义存储1,2,3,4,5,6整数的数组容器。int[] arr = {1,2,3,4,5,6};说明:上面定义数组并初始化的时候,都是使用int[] arr这种

2021-12-23 12:33:21 142

原创 Java性能优化的48条+七个案例,nginx反向代理原理及应用

简单的getter/setter方法应该被置成final,这会告诉编译器,这个方法不会被重载,所以,可以变成”inlined”,例子:class MAF {public void setSize (int size) {_size = size; }class DAF_fixed {private int _size; } 更正_size = size;final public void setSize (int size) { } private int _size;}尽量使用局部变量

2021-12-23 12:32:06 154

原创 Java性能优化的48条+七个案例(1),MySQL+Tomcat+JVM,看完还怕面试官

尽量避免在经常调用的方法,循环中new对象,由于系统不仅要花费时间来创建对象,而且还要花时间对这些对象进行垃圾回收和处理,在我们可以控制的范围内,最大限度地重用对象,最好能用基本的数据类型或数组来替代对象。4. 尽量使用final修饰符带有final修饰符的类是不可派生的。在JAVA核心API中,有许多应用final的例子,例如java、lang、String,为String类指定final防止了使用者覆盖len《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》【

2021-12-23 12:30:49 204

原创 Java开发手册之单元测试,springboot中等项目实战

【强制】单元测试应该是全自动执行的,并且非交互式的。测试框架通常是定期执行的,执行过程必须完全自动化才有意义。输出结果需要人工检查的测试不是一个好的单元测试。单元测试中不准使用System.out来进行人肉验证,必须使用assert来验证。【强制】保持单元测试的独立性。为了保证单元测试稳定可靠且便于维护,单元测试用例之间决不能互相调用,也不能依赖执行的先后次序。反例:method2需要依赖method1的执行,将执行结果做为method2的输入。【强制】单元测试是可以重复执行的,不能受到..

2021-12-23 12:29:26 149

原创 Java并发关键字-synchronized,zookeeper入门教程

Java对象头偏向锁轻量级锁各种锁的比较一个例子synchronized简介在学习知识前,我们先来看一个现象:public class SynchronizedDemo implements Runnable {private static int count = 0;public static void main(String[] args) {for (int i = 0; i < 10; i++) {Thread thread = new Thre..

2021-12-23 12:28:12 140

原创 JS 添加背景水印(适用于 PC 端和移动端),mongodb面试问题

watermark_angle:15//水印倾斜度数};//采用配置项替换默认值,作用类似jquery.extendif(arguments.length===1&&typeof arguments[0] ===“object” ){var src=arguments[0]||{};for(key in src){if(src[key]&&defaultSettings[key]&&src[key]===defaultSettings[key]

2021-12-22 11:58:58 150

原创 JDK15已发布,网友:我还在JDK8踏步走---,面试官6个灵魂拷问

说句不该说的话,Java养活了一大批企业和程序员~~最近,Oracle又宣布JDK15正式发布,见下图这也是Java迭代周期缩短为6个月以后的第6个版本,短迭代周期的好处,便是不会一次修复成百上千的Bug,让开发人员能够更加轻松的面对迭代中的变化~下面这张图,便能帮助你更容易理解快迭代的好处,Java10之前,每次更新的JEP数量都是Java10之后版本的几倍甚至几十倍~~Java15做了哪些改变?我先在自己的系统上安装好最新版本运行一下,是否安装成功?看来没得问题,那咱们去官网看.

2021-12-22 11:57:33 114

原创 Java面试复习重点:类的管理及常用工具,教你抓住面试的重点

此时不将AB两类放在同一个.class文件不然有一个一定是非public类,C等下用不了这个非public注意.*是对于包来说的,当把AB分成两个class文件时就可以两个全部导入了Java编译器为所有程序自动导入包 java.lang无名包不能导入.* 无名包中的类无法被导入静态导入的时候如果是import aa.;可以导入类的所有成员包括静态,如果是import static aa.A.;是导入A中的所有静态成员,非静态的就会报错,所以可以将A的所有成员改成静态的一个class文件(.jav.

2021-12-22 11:54:43 373

原创 Java集合源码解析-ConcurrentHashMap(JDK8),java从入门到精通pdf脚本之家

}只允许一个线程对表进行初始化,若不巧有其他线程进来了,则会让其他线程交出 CPU 等待下次系统调度。这保证了表同时只会被一个线程初始化。//检测到桶结点是 ForwardingNode 类型,协助扩容else if ((fh = f.hash) == MOVED)tab = helpTransfer(tab, f);//桶结点是普通的结点,锁住该桶头结点并试图在该链表的尾部添加一个节点else {V oldVal = null;synchronized (f) {if (tabAt(t

2021-12-22 11:53:18 154

原创 Java进阶之梯,成长路线与学习资料,助力突破中间件领域

Netty进阶:手把手教你如何编写一个NIO客户端Netty进阶:手把手教你如何编写一个NIO服务端阿里面试真题:NIO为什么不适合文件上传场景、如何优雅解决3.2 RocketMQ专栏我的另一种参与 RocketMQ 开源社区的方式踩坑记:rocketmq-console 消费TPS为0,但消息积压数却在降低是个什么“鬼”RocketMQ msgId与offsetMsgId释疑(实战篇)RocketMQ 一行代码造成大量消息丢失RocketMQ消息发送常..

2021-12-22 11:51:52 1081

原创 Java超市订单管理系统,java架构师项目经验

输入卡号,当卡号不存在提示,重新输入直到卡号正确输入密码正确后,方可修改密码(7)退出系统直接退出,并且提示谢谢使用要求与实现步骤不使用数据库,使用对象和集合存储数据定义实体类,Member类定义定义MemberManage类,业务类,完成项目菜单及整体流程,调用工具类的各种功能完成业务。定义MemberUtil类,工具类,完成各种功能代码:代码打包下载Member类:public class Member{//姓名private String name;

2021-12-22 11:50:27 446

原创 java虚拟机,linux虚拟化技术和kvm

永久代(永久代是Hotspot虚拟机特有的概念,是方法区的一种实现,别的JVM都没有这个东西。在Java 8中,永久代被彻底移除,取而代之的是另一块与堆不相连的本地内存——元空间。)当一个对象被创建时,它首先进入新生代,之后有可能被转移到老年代中。新生代存放着大量的生命很短的对象,因此新生代在三个区域中垃圾回收的频率最高。为了更高效地进行垃圾回收,把新生代继续划分成以下三个空间:EdenFrom SurvivorTo Survivor方法区与Java堆一样,各个线程共享的内存区域,存储已被虚拟

2021-12-22 11:49:02 225

原创 Java虚拟机探究第2讲: 类加载器ClassLoader,多图详解CLH锁的原理与实现

程序正常执行结束程序在执行过程中遇到了异常或者错误而异常终止由于操作系统出现错误而导致Java虚拟机进行终止类的加载、连接与初始化在Java代码中,Class的加载、连接与初始化过程都是在程序运行期间完成的。Runtime!加载: 查找并加载类的二进制数据连接验证:确保被加载的类的正确性准备:为类的静态变量分配内存,并将其初始化为默认值解析:把类中的符号引用转换为直接引用在编译的时候一个每个java类都会被编译成一个class文件,但在编译的时候虚..

2021-12-22 11:47:37 113

原创 Java程序员跳槽之旅,离开京东,12面面试回顾和一点经验分享

面试印象:中规中矩地点:呼家楼附近3.每日****优鲜独角兽了,生鲜电商。一面,总监亲自上场,简单聊了下总体情况,技术细节问的不多。二面,某资深开发,技术问得不深,主要了解总体能力,个人情况。三面,HR自称很忙,晚点微信联系。然后被套路欺骗了。4.平安健康周六专场。一面比较基础,答得不错。二面,自称架构师,没怎么问太多技术,主要是交流技术问题、公司部门现状,需求几千个做不完之类的。(架构师提到了,跳槽较多,公司内部有五二原则之类的,和京东的五二原则差不多)三面,HR,各种盘问,一副很

2021-12-21 17:24:20 313

原创 Java程序员裸辞两个月,面试阿里、美团,java编程思想第四版阅读笔记

3、设计一个分布式负载均衡缓冲系统,如何快速定位到是那个服务器(使用key分段、一致性hash)4、如何保证缓冲区和数据库之间的强一致性(使用加锁)5、HashMap高并发情况下会出现什么问题,(扩容问题)6、说一说在浏览器中输入一个url后,直到浏览器显示页面的过程中发生了什么(我主要说了DNS,然后他有接着问了DNS的细节,然后就是ARP路由,然后服务器处理,返回,浏览器呈现,获取html中的依赖资源)7、字符串中句子的反转(比如ABC DEF,输出DEF ABC)(很简单,可以先反转整个字符串

2021-12-21 17:22:43 136

原创 java版gRPC实战之一:用proto生成代码,伟易达java工程师面试

// 如果有私服就在此配置,如果没有请注释掉maven {url ‘http://192.168.50.43:8081/repository/aliyun-proxy/’}// 阿里云maven {url ‘http://maven.aliyun.com/nexus/content/groups/public/’}mavenCentral()}ext {// 项目版本projectVersion = ‘1.0-SNAPSHOT’// 依赖库的版本grpcSpringBootSta

2021-12-21 17:18:06 724

原创 Java架构师成长路线总结2021版(持续更新),mysql性能调优与架构设计PDF

| 如何优雅的结束一个线程! | https://blog.youkuaiyun.com/weixin_48013460/article/details/112022687 || 并发编程之多线程 | https://blog.youkuaiyun.com/weixin_48013460/article/details/112188400 || 高并发服务发现原理 | https://blog.youkuaiyun.com/weixin_48013460/article/details/112235884 || 并发挑战(一) | ht

2021-12-21 17:16:30 123

原创 Java的Io模型你了解多少?RPC的通信Netty-Netty的底层是Nio-

Java BIO 问题分析每个请求都需要创建独立的线程,与对应的客户端进行数据 Read,业务处理,数据 Write 。当并发数较大时,需要创建大量线程来处理连接,系统资源占用较大。连接建立后,如果当前线程暂时没有数据可读,则线程就阻塞在 Read 操作上,造成线程资源浪费nio介绍Java NIO 全称 java non-blocking IO,是指 JDK 提供的新 API。从 JDK1.4 开始,Java 提供了一系列改进的输入/输出的新特性,被统称为 NIO(即 New IO),是同

2021-12-20 13:23:17 89

原创 Java的Io模型你了解多少?RPC的通信Netty-Netty的底层是Nio-(1)

nio介绍Java NIO 全称 java non-blocking IO,是指 JDK 提供的新 API。从 JDK1.4 开始,Java 提供了一系列改进的输入/输出的新特性,被统称为 NIO(即 New IO),是同步非阻塞的NIO 相关类都被放在 java.nio 包及子包下,并且对原 java.io 包中的很多类进行改写。【基本案例】NIO 有三大核心部分:Channel(通道),**Buffer(缓冲区), Selector(**选择器)Selector 、 Channel 和 B

2021-12-20 13:21:44 111

原创 Java核心编程总结(十、反射),linux技术支持

1.基础回顾+面试===========================================================================1.1单元测试什么是单元测试?答:单元测试是指程序员写的测试代码给自己类中的方法进行预期正确性的验证,单元测试一旦写好了这些测试代码,就可以一直使用,可以实现一定程度上的自动化测试。单元测试一般要使用框架进行。什么是框架?答:框架是前人或者一些牛逼的技术公司在实战或者研发中设计的一些优良的设计方案或者成型的代码功能,作为

2021-12-20 13:19:31 86

原创 Java构造器就是有这么简单,腾讯T3面试官透露

​//输出默认构造器从这个例子我们看到了,构造器为 TestMain() ,创建对象时,会分配内存并调用对应的构造方法,可以看到输出结果为 默认构造器 ,它已经被正确地初始化了。二、构造器命名规则从上面那个例子中或许已经观察到了:类名和构造器名必须相同,所以”每个方法首字母小写“的编码风格并不适用于构造器。三、注意事项构造器必须与主类同名构造器可以有参数构造器可以重载没有返回值不添加构造器编译器生成默认构造器四、默认构造器默认构造器(又名无参构造器)是没有形

2021-12-20 13:16:17 241

原创 Java持久层和控制器的封装,黑客编程技术详解

}//根据id查询public T findById(ID id) {Optional optional = baseDAO.findById(id);if(optional.isPresent()) {return optional.get();}return null;}//保存方法@Transactionalpublic void save(T entity) {baseDAO.save(entity);}//根据实体类删除public void delete(T ent

2021-12-20 13:11:40 361

原创 Java异常处理:给程序罩一层保险,java面试常见问题

/*****************************************Exception in thread “main” java.lang.ArithmeticException: / by zeroat com.cmower.java_demo.twelve.Cmower.main(Cmower.java:6)*****************************************/当除数为0时,将抛出ArithmeticException异常,程序不再继续执行——异常

2021-12-20 13:10:04 122

原创 Java线程安全问题以及解决方式,附上例子以及代码,linux相关技术分享

try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}num–;System.out.println(Thread.currentThread().getName()+“出票成功!还剩”+num);}else {break;}}}}}就会出现以下这种情况Thread-1出票成功!还剩-1Thread-2出票成功!还剩-2Thread-0出票成功!还剩-1这就是线程不安全

2021-12-19 14:17:16 165

原创 Java系统线上生产问题排查一把梭,中软国际java面试题

比如主机、中间件或DB问题。这种按主机层面问题、中间件或存储(统称组件)的问题分为:主机层可使用工具排查:CPU相关使用top、vmstat、pidstat、ps内存相关使用free、top、ps、vmstat、cachestat、sarIO相关使用lsof、iostat、pidstat、sar、iotop、df、du网络相关使用ifconfig、ip、nslookup、dig、ping、tcpdump、iptables组件从如下方面排查:组件所在主机是否有问题组件进程

2021-12-19 14:14:51 230

原创 Java程序设计(高级及专题)- JDBC,2021最新Java面试笔试

| 方法名称 | 功能描述 || — | — || getMetaData() | 该方法用于返回数据库的元数据的 DatabaseMetaData 对象 || createStatement | 用于创建一个 Statement 对象来将 SQL 语句发送到数据库 || preparedStatement(String sql) | 用于创建一个 PreparedStatement 对象来将参数化的SQL语句发送到数据库 || prepareCall(String sql) | 用于创建一个 C

2021-12-19 14:13:12 170

原创 Java程序员经典面试题集大全(二十五),kafka实战视频

122、在二进制数据中,小数点向右移一位,则数据()**A、**除以10**B、**除以2**C、**乘以2**D、**乘以10答案:C**分析:**可以看个例子101.1 对应的十进制为 2^2*1 + 2^1*0 + 2^0*1 + 2^-1*1 = 5.5小数点右移一位1011 对应的十进制为 2^3*1 + 2^2*0 + 2^1*1 + 2^0*1 = 11所以是扩大到原来的2倍123、面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面:**1.

2021-12-19 14:10:57 92

原创 Java程序员经典面试题集大全(七),java大学实用教程第四版答案

1)可以提高编程效率。2)保护程序的完整性。3)其开销影响性能。Java虚拟机必须跟踪程序中有用的对象,确定哪些是无用的。垃圾回收机制的特点1)垃圾回收机制回收JVM堆内存里的对象空间,不负责回收栈内存数据。2)对其他物理连接,比如数据库连接、输入流输出流、Socket连接无能为力。3)垃圾回收发生具有不可预知性,程序无法精确控制垃圾回收机制执行。4)可以将对象的引用变量设置为null,暗示垃圾回收机制可以回收该对象。现在的JVM有多种垃圾回收 实现算法,表现各异。垃圾回收机制回

2021-12-19 14:09:24 142

原创 Java程序员的阿里 字节 腾讯 面经之路,费经周折最终上岸腾讯。

四面==自我介绍谈谈你参与过的项目,有什么收获TCP和UDP的核心区别在哪TCP的四次挥手,time wait状态有什么意义反问HR面===自我介绍工作收获离职原因拿到其他offer了吗,会如何选择呢排一下公司,部门,薪资和城市等因素你的优缺点,如何改进学生时代最成功的事你的预期薪资总结==准备好一些高频问题,包含技术类和非技术类Step ①:技术类看过哪些源码对哪个技术比较熟悉最近在学

2021-12-19 14:07:11 99

原创 Java程序员月薪20k的涨薪秘籍,没点绝活敢跳槽吗?(1),Java岗面试题总结

什么是内部类?内部类的作用抽象类和接口区别抽象类的意义抽象类与接口的应用场景抽象类是否可以没有方法和属性?接口的意义泛型中ext《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享ends和super的区别13. 父类的静态方法能否被子类重写14. 进程和线程的区别15. final,finally,finalize的区别16. 序列化的方式17.

2021-12-19 14:03:57 167

原创 java版gRPC实战之五:双向流,百度笔试题目及答案

在proto文件中定义双向流类型的gRPC接口,再通过proto生成java代码开发服务端应用开发客户端应用验证源码下载本篇实战中的完整源码可在GitHub下载到,地址和链接信息如下表所示(https://github.com/zq2599/blog_demos):| 名称 | 链接 | 备注 || :-- | :-- | :-- || 项目主页 | https://github.com/zq2599/blog_demos | 该项目在GitHub上的主页 || g..

2021-12-19 14:02:29 381

原创 Java毕业设计-医院药品管理系统,原理+索引+底层+分布式+优化

开发语言:Java技术:Springboot+Layui数据库:MySQL架构:B/S源码类型: Web编译工具:Idea、Eclipse、MyEclipse (选其一)其他:jdk1.8、Tomcat8.5【不需要】 、Navicat2.系统的设计与实现2.1 用户类型用户角色分为 管理员 这类用户。2.2 各角色功能模块2.2.1 管理员《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》【docs.qq..

2021-12-19 14:00:58 737

原创 OpenFaaS实战之三:Java函数,Java知识体系结构图

| || | |) | / | | | | (| | (| |) |_/| ./ ___|| ||| _,|_,|___/|_|Function created in folder: faas-currenttimeStack file written: faas-currenttime.ymlNotes:You have created a function using the java11 template which uses an LTSversion of the OpenJD

2021-12-17 17:04:08 578

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除