首页
学习
活动
专区
工具
TVP
发布

爱明依

专栏作者
190
文章
249019
阅读量
25
订阅数
ArrayList/Vector 的底层分析
ArrayList 实现于 List、RandomAccess 接口。可以插入空数据,也支持随机访问。
爱明依
2022-04-01
1750
HashMap 底层分析
容量的默认大小是 16,负载因子是 0.75,当 HashMap 的 size > 16*0.75 时就会发生扩容(容量和负载因子都可以自由调整)。
爱明依
2022-04-01
2070
分布式 ID 生成器 一个唯一 ID 在一个分布式系统中是非常重要的一个业务属性,其中包括一些如订单 ID,消息 ID ,会话 ID,他们都有一些共有的特性:...
一个唯一 ID 在一个分布式系统中是非常重要的一个业务属性,其中包括一些如订单 ID,消息 ID ,会话 ID,他们都有一些共有的特性:
爱明依
2022-04-01
1.3K0
LinkedHashMap 底层分析
众所周知 HashMap 是一个无序的 Map,因为每次根据 key 的 hashcode 映射到 Entry 数组上,所以遍历出来的顺序并不是写入的顺序。
爱明依
2022-04-01
2310
HashSet` 是一个不允许存储重复元素的集合,它的实现比较简单,只要理解了 `HashMap`,`HashSet` 就水到渠成...
HashSet 是一个不允许存储重复元素的集合,它的实现比较简单,只要理解了 HashMap,HashSet 就水到渠成了。
爱明依
2022-04-01
3950
LinkedList 底层分析
如图所示 LinkedList 底层是基于双向链表实现的,也是实现了 List 接口,所以也拥有 List 的一些特点(JDK1.7/8 之后取消了循环,修改为双向链表)。
爱明依
2022-04-01
2140
kafka :聊聊如何高效的消费数据。
之前写过一篇《从源码分析如何优雅的使用 Kafka 生产者》 ,有生产者自然也就有消费者。
爱明依
2022-04-01
8600
设计一个秒杀系统
<div align="center"> <img src="https://ws4.sinaimg.cn/large/006tNc79ly1fmjw06nz2zj306f0fejrh.jpg" width=""/> </div>
爱明依
2022-04-01
1980
ConcurrentHashMap 实现原理
由于 HashMap 是一个线程不安全的容器,主要体现在容量大于总量*负载因子发生扩容时会出现环形链表从而导致死循环。
爱明依
2022-04-01
2670
Java 多线程常见问题
多线程并不一定是要在多核处理器才支持的,就算是单核也是可以支持多线程的。 CPU 通过给每个线程分配一定的时间片,由于时间非常短通常是几十毫秒,所以 CPU 可以不停的切换线程执行任务从而达到了多线程的效果。
爱明依
2022-04-01
2700
Java 多线程三大核心
Java 的原子性就和数据库事务的原子性差不多,一个操作中要么全部执行成功或者失败。
爱明依
2022-04-01
2140
Java面试葵花宝典打印版【7】
83、在weblogic管理制台中对一个应用域(或者说是一个网站,Domain)进行jms及ejb或连接池等相关信息进行配置后,实际保存在什么文件中? 保存在此Domain的config.xml文件
爱明依
2022-04-01
4870
Java面试葵花宝典打印版【5】
58、线程的基本概念、线程的基本状态以及状态之间的关系 线程指在程序执行过程中,能够执行程序代码的一个执行单位,每个程序至少都有一个线程,也就是程序本身。Java中的线程有四种状态分别是:运行、就绪、挂起、结束。 59、JSP的常用指令<%@page language=”java” contenType=”text/html;charset=gb2312” session=”true” buffer=”64kb” autoFlush=”true” isThreadSafe=”true” info=”text” errorPage=”error.jsp” isErrorPage=”true” isELIgnored=”true” pageEncoding=”gb2312” import=”java.sql.”%>isErrorPage(是否能使用Exception对象),isELIgnored(是否忽略表达式) <%@include file=”filename”%><%@taglib prefix=”c”uri=”http://……”%> 60、什么情况下调用doGet()和doPost()? Jsp页面中的form标签里的method属性为get时调用doGet(),为post时调用doPost()。 61、servlet的生命周期web容器加载servlet,生命周期开始。 通过调用servlet的init()方法进行servlet的初始化。通过调用service()方法实现,根据请求的不同调用不同的do**()方法。结束服务,web容器调用servlet的destroy()方法。 62、如何现实servlet的单线程模式 继承SingleThreadModel接口(标志性接口)。 63、页面间对象传递的方法 request,session,application,cookie等 64、JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么? JSP是Servlet技术的扩展,本质上是Servlet的简易方式,更强调应用的外表表达。JSP编译后是"类servlet"。Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑。 65、四种会话跟踪技术 cookie,url重写,session,隐藏域hidden 65,jsp的四种范围 page是代表与一个页面相关的对象和属性。一个页面由一个编译好的 Java servlet 类(可以带有任何的 include 指令,但是没有 include 动作)表示。这既包括 servlet 又包括被编译成 servlet 的 JSP 页面; request是代表与 Web 客户机发出的一个请求相关的对象和属性。一个请求可能跨越多个页面,涉及多个 Web 组件(由于 forward 指令和 include 动作的关系); session是代表与用于某个 Web 客户机的一个用户体验相关的对象和属性。一个 Web 会话可以也经常会跨越多个客户机请求; application是代表与整个 Web 应用程序相关的对象和属性。这实质上是跨越整个 Web 应用程序,包括多个页面、请求和会话的一个全局作用域 66、Request对象的主要方法: setAttribute(String name,Object):设置名字为name的request的参数值 getAttribute(String name):返回由name指定的属性值 getAttributeNames():返回request对象所有属性的名字集合,结果是一个枚举的实例 getCookies():返回客户端的所有Cookie对象,结果是一个Cookie数组 getCharacterEncoding():返回请求中的字符编码方式 getContentLength():返回请求的Body的长度 getHeader(String name):获得HTTP协议定义的文件头信息 getHeaders(String name):返回指定名字的request Header的所有值,结果是一个枚举的实例 getHeaderNames():返回所以request Header的名字,结果是一个枚举的实例 getInputStream():返回请求的输入流,用于获得请求中的数据 getMethod():获得客户端向服务器端传送数据的方法 getParameter(String name):获得客户端传送给服务器端的有name指定的参数值 getParameterNames():获得客户端传送给
爱明依
2022-04-01
2520
Java面试葵花宝典打印版【4】
41、是否可以继承String类?String类是final类故不可以继承。 42、swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上? switch(expr
爱明依
2022-04-01
2120
Java面试葵花宝典打印版【3】
31、EJB包括(SessionBean,EntityBean)说出他们的生命周期,及如何管理事务的? SessionBean:Stateless Session Bean 的生命周期是由容器决定的,当客户机发出请求要建立一个Bean的实例时,EJB容器不一定要创建一个新的Bean的实例供客户机调用,而是随便找一个现有的实例提供给客户机。当客户机第一次调用一个Stateful Session Bean 时,容器必须立即在服务器中创建一个新的Bean实例,并关联到客户机上,以后此客户机调用Stateful
爱明依
2022-04-01
1980
Java面试葵花宝典打印版【2】
16、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 如果数据将在线程间共享。例如正在写的数据以后可能被另一个线程读到,或者正在读的数据可能已经被另一个线程写过了,那么这些数据就是共享数据
爱明依
2022-04-01
2450
Java面试葵花宝典打印版【1】
1.面向对象的特征有哪些方面 抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分, 暂时不用部分细节。抽象包括两个方面,一是过程抽象, 二是数据抽象。 继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实
爱明依
2022-04-01
2250
经典的Java基础面试题集锦
问题:如果main方法被声明为private会怎样? 答案:能正常编译,但运行的时候会提示”main方法不是public的”。
爱明依
2022-04-01
4180
阿里、蚂蚁金服 Java面试问题
Java面试问题 1、当前在公司承担的角色; 2、这几年开发的心得; 3、分布式系统架构与设计; 4、电脑系统降级方案; 5、如何提高CPU运行速度; 6、幂等接口; 7、并发处理; 8、多线程、socket通讯; 9、Java基础,spring、hibernate、struts、mybatis; 10、Elasticsearch; 11、PriorityQueue的底层数据结构; 11、大数据处理相关技术、to C相关技术; 12、Java 虚拟机; 13、Spring mvc的内部实现机制; 14、核心项目描述、角色、职责。 15、蚂蚁金服保险事业群 JAVA开发基础题,初期技术考查经常关注:数据结构在JAVA中的技术包的实现;Hibernate 链表在java中实现,原理是怎样的,排序是怎么做的,它的异常处理机制,高并发,多线程是怎么搞的。 16、JAVA开发考察点:1.JAVA基础扎实;2.常用的框架SPRING, MVC,orm(IBATIS or hibernate)都熟悉;3.有一定的架构设计能力;
爱明依
2022-04-01
3620
100家大公司java笔试题汇总
一:单选题 1.下列哪一种叙述是正确的() A. abstract修饰符可修饰字段、方法和类 B.抽象方法的 body部分必须用一对大括号{ }包住 C .声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号
爱明依
2022-04-01
4230
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档