- 博客(249)
- 收藏
- 关注
原创 【Java知识点详解 3,2021年阿里Java高级面试题及答案
1、分布式传递对象,或者网络传输,需要序列化2、我调用你的jvm的方法,结果返回到我的jvm上进行处理3、序列化可以保持对象的状态比如:tomcat关闭以后会把session对象序列化到SESSIONS.ser文件中,等下次启动的时候就把这些session再加载到内存里面来。4、数据传输并复原在j2ee中页面与后台使用的比较多。尤其是在列表中的时候使用尤为突出。比如:一个人员的列表保存起来的话,你可以将这个列表序列化,传到后台,然后再反序列化成person对象直接进行对象的保存。5、比如EJB
2021-08-10 20:10:05
180
1
原创 【Java核心面试宝典,最新阿里+头条+腾讯大厂Java笔试真题
今天来和大家分享在Java中有关基本数据结构相关的面试题,这一类问题因为比较基础,其实有时候就很容易被我们忽视掉,但是这也不妨碍面试官对我们的考察呀!一、Java的数据类型有哪些?===============很多人都会在这个看似简单的问题中入坑,一说到数据类型,很多人第一时间想到的就是int、char等类型,但是我们仔细看题就会发现,题中所问的问题是数据类型,而不是基本数据类型。数据类型有两种,分别是“基本数据类型”和“引用数据类型”基本数据类型包括的内容如下表:而引用数据类型包括的是三种:
2021-08-10 20:08:52
128
原创 【Java核心面试宝典(1),2021年Java技术下半场在哪
今天来和小伙伴们记录有关于面向对象的一些面试题,一部分是LeetCode上比较经典且最常见的面试题。一、面向对象和面向过程的区别有哪些?分别有什么优缺点?面向过程是将问题分解成步骤,按照步骤实现函数,并依次调用,数据和数据的实现是分离的,而面向对象是将问题分解成对象,描述事物在解决问题的步骤中的行为,对象与属性和行为是关联的。面向过程的优点: 性能方面比面向对象高,不需要面向对象的实例化,面向过程的缺点: 因为是按照步骤实现函数并依次调用的,因此不容易复用、维护和扩展。面向对象的优点
2021-08-10 20:07:41
115
原创 【Java从0到架构师,Java传智播客视频
依赖配置文件创建 SessionMyBatis 查询实体映射字段映射 - resultMap传参 - 单个参数传参 - 多个参数打印 SQL 语句多表关联查询 - resultTypeJava 从 0 到架构师目录:【Java从0到架构师】学习记录Gitee 代码:https://gitee.com/szluyu99/mj_java_frame/tree/master/01_MyBatisMyBatis 属于持久层(DA...
2021-08-10 20:06:34
75
原创 【Java从0到架构师(3),Java面试笔试题逻辑题
PreparedStatement 接口继承自 Statement 接口建议使用 PreparedStatement 替代 StatementPreparedstatement 的优点:可以防止 SQL 注入执行速度比 Statement 快支持批量处理配置文件一些经常动态修改的值,建议放入到配置文件中,不要写死在 Java 代码中因为 .java 编译后变成 .class,无法直接修改其内容已部署的项目想要修改配置信息,则需要修改 Java 代码再重新部署.
2021-08-10 20:05:27
60
原创 【Java从0到架构师(2),Java最新面试题及答案
Gitee 代码:https://gitee.com/szluyu99/mj_java/tree/master如何通过 Java 操作数据库?JDBC,全称是 Java Database Connectivity在 Java 中用来规范如何访问关系型数据库,由各大数据库厂商去实现它属于 JavaSE 的一部分下载 MySQL 的 JDBC 实现(jar,驱动包)=============================================================
2021-08-10 20:04:18
61
原创 【Java从0到架构师(1),幸亏有这本623页的微服务框架实战笔记
让你知道一下你在哪个容器里面04 - ApplicationContextAware - setApplicationContext - org.springframework.context.support.ClassPathXmlApplicationContext@14acaea5, started on Fri Aug 21 21:14:50 CST 2020初始化方法调用之前调用05 - BeanPostProcessor - postProcessBeforeInitialization
2021-08-10 20:03:06
44
原创 【JavaScript 笔记,实战分析SpringBoot整合JSON
foo(); // Hello, undefined对于上述 `foo()` 函数,JavaScript 引擎看到的代码相当于:function foo() {var y; // 提升变量y的申明,此时y为undefinedvar x = 'Hello, ' + y;console.log(x);y = 'Bob';}建议采用 “**在函数内部首先申明所有变量**” 这一规则。最常见的做法是用一个 `var` 申明函数内部用到的所有变量:func
2021-08-10 20:01:58
110
原创 开发新人有必要考虑在工作一年后跳槽,Java高级开发技术
有两点考量,不考虑整体经济环境恶化与否,首先在企业里一年涨薪的幅度很有限,如果不升职级可能有8%就不错(即和近年单位人民币购买力的下降速度估计值打平手),而你在这一年获得的成长带来的实际市场价值增幅是远大于这个幅度的(当然,几年后技术成长带来的收益会下降,但是不是现在要关心的问题),假设你现在6000,一年后你的市场价值可能是8000,而公司可能只会给到你6500。再者你去面试,你目前的薪资会作为下家开价的参考,那么你在两年后跳槽,对方就会误认为你两年经验只具备6500或7000左右的能力,即“你不够努力”
2021-08-09 00:42:15
299
原创 帮你深度探寻Spring循环依赖源码实现,Java开发五年
//反射创建对象 Object newInstance = tClass.newInstance(); //实例化完就放到二级缓存 earlySingletonObjects.put(beanName,newInstance); //开始填充属性 populateBean(newInstance); //填充完成后从创作中的集合转移到完全体集合 earlySingletonObjects.remove(beanName); single...
2021-08-09 00:41:04
58
原创 小结一下,HTTP-规范中的那些容易掉进去的坑,直面春招
2.冲突的协议我们首先看看 URI 中的保留字,这些保留字不参与编码。保留字符一共有两大类:gen-delims:: / ? # [ ] @sub-delims:! $ & ' ( ) * + , ; =URI 的编码规则也很简单,先把非限定范围的字符转为 16 进制,然后前面加百分号。空格这种不安全字符转为十六进制就是 0x2
2021-08-09 00:40:00
75
原创 小白必看!结合实际实例,让我成功在寒冬中站稳脚步
事务具备四种属性,分别是原子性,一致性,隔离性,持久性,也就是我们经常说的ACID特性。原子性(atomicity)一个事务是一个不可分割的单位,事务中的操作要么都做,要么都不做。一致性(consistency)事务是必须使数据库从一个一致性状态到另一个一致性状态。一致性与原子性密不可分。隔离性(isolation)一个事务的执行,不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离开来的,并发执行的各个事务之间不能互相干扰。持久性(durability)
2021-08-09 00:38:52
54
原创 将两个及其以上的有序表合并为一张有序表,教科书般的排查与分析过程
b[k] = a[j]; k++; j++;}for (int i = l; i <= r; i++){ a[i] = b[i];}}### [](https://gitee.com/vip204888/java-p7)**简化版**const int maxn = 1e5 + 10;int q[maxn], tmp[maxn];void merge_sort(int q[], int l, int r){if (l >= r) return.
2021-08-09 00:37:45
172
原创 寒冬将至,备下一波阿里,做了三年Java
1.2 Redis学习路线思维导图数据库面试专题随着工作经验的积累,我日益感觉到,对一名程序员来说,拥有良好的数据库设计能力是很重要的,甚至是最重要的。这里以面试题的形式对数据库常见问题做一个总结,解决大家的知识盲点。请简洁描述 MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?在 MySQL 中 ENUM 的用法是什么?MySQL 数据库服务器性能分析的方法命令有哪些?MySQL 中使用什么存储引擎?详细说说事务四大特性(ACID)原子性、一致性、隔离 性、持
2021-08-09 00:36:32
86
原创 实践!在Spring-Boot启动时添加方法运行,查漏补缺
这将产生以下日志输出:In CommandLineRunnerImplstatus=running如我们所见,该参数未解析,而是解释为单个值“ status = running”。要访问已解析格式的命令行参数,我们需要使用ApplicationRunner接口。我们待会儿再看。Spring Boot将CommandLineRunner接口添加到启动过程中。因此,在commandliner Runner中引发异常将迫使Spring启动中止启动。我们可以在一个应用程序中创建多个Comm.
2021-08-09 00:35:28
131
原创 实战 - 分析java项目线上内存泄漏,netty框架工作原理
发现启动后会频繁GC,最后导致OOM(OutOfMemoryError)*/public class T15_FullGC_Problem01 {private static class CardInfo { BigDecimal price = new BigDecimal(0.0); String name = "张三"; int age = 5; Date birthdate = new Date(); public void m().
2021-08-09 00:34:20
118
原创 成功入职阿里月薪45K,前后端分离实际容易产生的问题(1)
正式转前端,第一次接触前后端分离我之前是做.net,做的项目大部分是后台管理系统,那时候没有分前端后端,一般是一个功能从数据库到前端一起做,所以工作按时间分布一半时间敲C#代码一半时间写js,那时候后台管理对页面美观的要求不高考虑开发效率所以一般都是用extjs、jQuery easyUI以及后面出来的bootstrap把样式封装好了,只要用里面的组件拼接页面实现业务逻辑就可以了。但随着C#在市场的需求越来越少,开始感觉到危机,考虑要不要转行。那时候在开发群认识一个大佬招前端Vue,当时Vue刚出来没多少
2021-08-06 14:38:54
175
原创 想进BTAJ,感受lambda之美
List students = new ArrayList<>(3);students.add(new Student(“路飞”, 22, 175));students.add(new Student(“红发”, 40, 180));students.add(new Student(“白胡子”, 50, 185));List list =&
2021-08-06 14:37:48
36
原创 想转行当程序员的必看,抢鲜!阿里架构师私藏并发编程笔记
Java 程序天生就是多线程的线程的创建启动与中止创建启动中止3、深入认识线程线程间的共享和协作1、线程间的共享synchronized 内置锁对象锁和类锁错误的加锁和原因分析volatileThreadLocal2、线程间的协作值得注意的是,以上笔记资料对并发编程的整体讲解还不算十分完整,后半部分的资料我还没有要到,也可能是那位阿里大神还没来得及整理。那我下面给大家推荐一本技术书籍,《Java并发编程实战》《Java并发编程实战》本书深入.
2021-08-06 14:36:39
117
1
原创 想提高开发效率的必看,被同事坑了,程序员离职前用同事电脑把数据库删除
员工当时就打算要离职,只是在离职前他做了这么一件事,他用同事的电脑把公司数据库都删了。之所以用同事电脑,有2个原因,第一是避免自己担责任,毕竟写代码删数据库可能会有纠纷,严重一点的话,自己不仅要赔钱,还可能关进去;第二是报复了同事,让他的日子也不好过。看到程序员这个动作,相信很多人都有这样的感觉,还真的要和程序员搞好关系,不然哪一天他偷偷在你电脑里写点代码,到时候哭都来不及。那么,网友是怎么说的呢?有网友说你删除环境的数据库没那么重要吧,其他地方应该都有备份,导入进去就可以了,不过像你这种恶意删除数据库
2021-08-06 14:35:27
193
原创 怒斩腾讯和阿里的Offer,新同事不讲武德,乱写-SQL-偷袭我
| 2 | DERIVED | o | ref | idx_2,idx_5 | idx_5 | 8 | const | 1 | Using where; Using filesort |±—±------------±------±-----±--------------±------±--------±------±-----±--------------------------------------------
2021-08-06 14:34:23
52
原创 怒斩腾讯和阿里的Offer,Servlet不用再学了?扯淡
<groupId>jakarta.servlet.jsp</groupId> <artifactId>jakarta.servlet.jsp-api</artifactId> <version>3.0.0</version> <scope>provided</scope> httpServlet和servlet的关系如下图:...
2021-08-06 14:33:16
110
原创 怎么用Redis分布式锁才能确保万无一失,为了进大厂
线程池类型concurrentHashMap分段锁原理,用java8实现和java7有什么区别B-树B+树区别,数据库索引原理,组合索引怎么使用?最左匹配的原理spring生命周期,几种scope区别,aop实现有哪几种实现,接口***和类***会有什么区别斐波拉契数列非递归实现短URL实现让你来设计咸鱼,你会怎么设计?模型设计linux常用指令,软硬链接、top参数、grep根据关键字查找日志文件上下文算法在线编程java多线程,线程池选型,为什么..
2021-08-06 14:32:06
62
原创 怎么入门Java,利用Java反射实现两个具有相同属性bean赋值
package com.guor.entity;import java.util.Date;public class User { private Integer id; private String username; private Integer age; private String address; private String school; private Date createDate; private Date up.
2021-08-06 14:30:57
229
原创 开课吧百度云视频,SSM项目部署到Tomcat上的坑
springframework在初始化bean时失败了。org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [applicationContext.xml]; nested exception is java.io.FileNotFoundException: class path resource [applic
2021-08-06 14:29:42
72
原创 【秋招面试专题解析】Java-进阶:集合框架3
1. 使用put方法时,若指定的键(key)在集合中没有,则没有这个键对应的值,返回 null,并把指定的键值 添加 到集合中; 2. 使用put方法时,若指定的键(key)在集合中 存在,则返回值为集合中键对应的值(该值为替换前的值),并把指定键所对应的值,替换 成指定的新值。3.get(Object key) : 获取指定键(key)所对应的值(value)如果集合中没有这个键,返回 nullremove.
2021-08-05 13:21:33
54
原创 【干货】有时候会搞乱的blockHandler与fallback
fallback:若本接口出现未知异常,则调用fallback指定的接口。blockHandler:若本次访问被限流或服务降级,则调用blockHandler指定的接口。fallback此回调是针对接口出现异常了,就进入此fallback方法,我们看一下代码。从代码看出,只要请求http://localhost:8081/test?id=2,接口就会报异常,继而会调用fallback中的方法,走到了testFallback方法中:在testFallback增加一个Throwable 类型.
2021-08-05 13:20:40
497
原创 【工作经验分享】程序员穿T恤上班,行政不让进公司
不知道大家平时上班,公司对于员工着装有什么要求?正常情况下,如果不是需要和客户打交道的部门,员工可以随意穿,不影响其他人就可以了。当然干净整洁是必须的,这也是每个员工最基本的素质,太邋遢了也不好。最近在职场论坛上看到这样一个帖子:程序员穿T恤上班被行政要求禁止进公司:太邋遢了,换个衣服再来上班。隔天收到邮件蒙了,网友:笑出眼泪!这是怎么回事呢?原来当天早上的时候,该公司程序员和平时一样穿个T恤就来公司上班了。可是公司行政部的员工就站在公司门口,检查每个人的着装,那些穿了T恤的员工是不让进公司的,还有个
2021-08-05 13:19:33
129
原创 【工作经验分享】MySQL事务还能这么理解?这回我知道怎么应付面试官了
事务的原子性是指:一个事务中的多个操作都是不可分割的,只能是全部执行成功、或者全部执行失败。MySQL事务的原子性是通过undo log来实现的。undo log是InnoDB存储引擎特有的。具体的实现机制是:将所有对数据的修改(增、删、改)都写入日志(undo log)。undo log是逻辑日志,可以理解为:记录和事务操作相反的SQL语句,事务执行insert语句,undo log就记录delete语句。它以追加写的方式记录日志,不会覆盖之前的日志。除此之外undo log还用来实现数据库多版本并
2021-08-05 13:18:25
63
原创 【好文推荐】入门kafka
设置集群新建完成后,需要编辑 conf/zoo.cfg 文件,三个文件的内容如下tickTime=2000initLimit=10syncLimit=5dataDir=/usr/local/zookeeper/zookeeper-3.4.10/datadataLogDir=/usr/local/zookeeper/zookeeper-3.4.10/logclientPort=12181server.1=192.168.1.7:12888:13888server.2=192.168.1.8
2021-08-05 13:17:18
118
原创 【大牛系列教学】如何准备面试?
招聘人数 :秋招多于春招 ;招聘时间 : 秋招一般7月左右开始,大概一直持续到10月底。**但是大厂(如BAT)都会早开始早结束,所以一定要把握好时间。**春招最佳时间为3月,次佳时间为4月,进入5月基本就不会再有春招了(金三银四)。应聘难度 :秋招略大于春招;招聘公司: 秋招数量多,而春招数量较少,一般为秋招的补充。综上,一般来说,秋招的含金量明显是高于春招的。下面我就说一下我自己知道的一些方法,不过应该也涵盖了大部分获取面试机会的方法。关注大厂官网,随时投递简历(走流程的网申);线下.
2021-08-05 13:16:04
126
原创 【大牛系列教学】【springcloud(2)
[](https://gitee.com/vip204888/java-p7)2\. 配置主启动类-----------------------------------------------------------------------------import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;...
2021-08-05 13:14:50
45
原创 【深度思考】Java学习笔记(三
System.out.println("release!");}@Overridepublic void mouseEntered(MouseEvent e) { //鼠标进入界面 System.out.println("In");}@Overridepublic void mouseExited(MouseEvent e) { //鼠标离开界面 System.out.println("Out");}//MouseLi...
2021-08-04 21:04:46
34
原创 【深夜思考】Java进阶:什么是TCP-IP
ds.close();}}## 3. UDP接收端- **实现UDP接收端** - 实现封装数据包 java.net.DatagramPacket 将数据接收 - 实现数据传输 java.net.DatagramSocket 接收数据包- **实现步骤**1.创建 **DatagramSocket** 对象,**绑定端口号**,要和**发送端端口号**一致2.创建**字节数组**,接收发来的数据3.创建数据包对象 **DatagramPacket**4.调...
2021-08-04 21:03:44
38
原创 【性能优化实战】SpringCloud-Stream实战入门(二
上面应用的名为output1和input1的Binding的配置如下。#发布者配置spring.cloud.stream.bindings.output1.destination=test-topic1#消费者配置spring.cloud.stream.bindings.input1.destination=test-topic1spring.cloud.stream.bindings.input1.group=test-group1自定义MessageConverterSpring Clou
2021-08-04 21:02:37
535
原创 【性能优化实战】Java秋招面试全解析:Java基础
自旋锁和互斥锁,自旋锁的优缺点?(优点:减少上下文切换和用户态内核态的切换带来的开销;缺点:循环等待消耗CPU)可重入锁和不可重入锁(不可重入锁容易导致死锁发生,大多数锁都是可重入的,例如Synchronized锁和ReentrantLock)JDK1.6 Synchronized锁升级(偏向锁—轻量级锁—重量级锁)Synchronized锁的底层实现,锁的是什么,其它线程如何判断该锁已经被占用了?死锁产生的四个必要条件以及死锁的处理策略四、Mysql=======..
2021-08-04 21:01:31
129
1
原创 【干货】“最粉嫩
只是这种算法的代价是将内存缩小为了原来的一半。但是要注意:内存移动是必须实打实的移动(复制),所以对应的引用(直接指针)需要调整。复制回收算法适合于新生代,因为大部分对象朝生夕死,那么复制过去的对象比较少,效率自然就高,另外一半的一次性清理是很快的。Appel式回收一种更加优化的复制回收分代策略:具体做法是分配一块较大的 Eden 区和两块较小的 Survivor 空间(一般称作做From区和To区,也可以叫做S0和S1)基于经验统计,新生代中的对象98%是“朝生夕死”的,所以并不需要按照 1:1.
2021-08-04 21:00:18
45
原创 【工作经验分享】Java基础面试题
搜索速度慢,增删块线程不安全,效率低并发下 ArrayList 不安全如何解决?/** * 解决方案; * 1、List<String> list = new Vector<>(); * 2、List<String> list = Collections.synchronizedList(new ArrayList<>()); * 3、List<String> list = new CopyOnWriteArra..
2021-08-04 20:59:05
40
原创 【工作感悟】Offer差点无缘?HUAWEI-4面技术5面HR(1)
20、TreeMap(可排序)21、LinkHashMap(记录插入顺序)22、泛型类23、类型通配符?24、类型擦除第三分类 Java中的IO与NIO面试题第四分类 Java反射面试题第五分类 Java序列化面试题第六分类 Java注解面试题第七分类 多线程&并发面试题1、Java中实现多线程有几种方法2、继承 Thread 类3、实现 Runnable 接口。4、ExecutorService、 Callable、 Future 有返回值线程5、基于线程池的方式.
2021-08-04 20:57:58
232
原创 企业级项目实战讲解!Java语法基础知识
技术焦虑现在的技术圈子很火热,任何技术点,任何知识,只要你肯搜索,都能找到资料。但是现在技术圈确实有一个不好的地方,就是贩卖焦虑。这种贩卖焦虑的点并不在于形式,而是一种普遍的心态。特别是对于那种知识点比拼的心态:“xx知道的东西好多,好厉害!我要向xx学习”。我一直宣扬,这种心态千万不要有。xx比你知识点多很多,但是不代表他比你强,比你厉害。程序员如何比拼强弱?要比拼的绝不是知识点的多寡,而是使用知识点的能力强弱。即如何使用你掌握的知识改变行业。关于晨读,各种账号确实现在很经常发晨读,晨读这件事情,我自
2021-07-30 15:08:15
58
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人