首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
牛客229127715号
获赞
290
粉丝
189
关注
4
看过 TA
185
首钢工学院
2019
Java
IP属地:未知
暂未填写个人简介
私信
关注
拉黑
举报
举报
确定要拉黑牛客229127715号吗?
发布(4982)
评论
刷题
牛客229127715号
关注TA,不错过内容更新
关注
2021-06-22 19:40
已编辑
首钢工学院 Java
看透 Spring MVC 源代码分析与实践 —— 网站基础知识
网站架构及其演变过程 基础结构 网络传输分解方式: 标准的 OSI 参考模型 TCP/IP 参考模型 海量数据的解决方案 缓存和页面静态化 缓存 通过程序直接保存在内存中 使用缓存框架 (Encache、Redis、Memcache) 页面静态化 使用模板技术生成(Velocity、FreeMaker等) 数据库优化 表结构优化 SQL 语句优化 分区 分表 索引优化 使用存储过程代替直接操作过程 分离活跃数据 批量读取和延迟修改 ...
0
点赞
评论
收藏
分享
2021-06-22 19:39
首钢工学院 Java
吐血整理的 60 个 Redis 面试题,全网最全了
1.Redis 是一个基于内存的高性能key-value数据库。 2.Redis相比memcached有哪些优势: memcached所有的值均是简单的字符串,redis作为其替代者,支持更为丰富的数据类型 redis的速度比memcached快很多 redis可以持久化其数据 3.Redis是单线程 redis利用队列技术将并发访问变为串行访问,消除了传统数据库串行控制的开销 4.Reids常用5种数据类型 string,list,set,sorted set,hash 6.Reids6种淘汰策略: noeviction: 不删除策略, ...
0
点赞
评论
收藏
分享
2021-06-22 19:39
首钢工学院 Java
史上最全的数据库面试题,不看后悔篇!
一、基本概念 1.主键、外键、超键、候选键 超键:在关系中能唯一标识元组的属性集称为关系模式的超键。一个属性可以为作为一个超键,多个属性组合在一起也可以作为一个超键。超键包含候选键和主键。 候选键:是最小超键,即没有冗余元素的超键。 主键:数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合。一个数据列只能有一个主键,且主键的取值不能缺失,即不能为空值(Null)。 外键:在一个表中存在的另一个表的主键称此表的外键。 2.为什么用自增列作为主键 如果我们定义了主键(PRIMARY KEY),那么InnoDB会选择主键作为聚集索引、 如果没有显式定义主键,则InnoDB...
0
点赞
评论
收藏
分享
2021-06-22 19:39
已编辑
首钢工学院 Java
你知道为什么HashMap是线程不安全的吗?
我们都知道HashMap是线程不安全的,在多线程环境中不建议使用,但是其线程不安全主要体现在什么地方呢,本文将对该问题进行解密。 1.jdk1.7中的HashMap 在jdk1.8中对HashMap做了很多优化,这里先分析在jdk1.7中的问题,相信大家都知道在jdk1.7多线程环境下HashMap容易出现死循环,这里我们先用代码来模拟出现死循环的情况: public class HashMapTest { public static void main(String[] args) { HashMapThread thread0 = new HashMapTh...
0
点赞
评论
收藏
分享
2021-06-22 19:38
已编辑
首钢工学院 Java
拼多多面试真题:如何用Redis统计独立用户访问量
众所周至,拼多多的待遇也是高的可怕,在挖人方面也是不遗余力,对于一些工作3年的开发,稍微优秀一点的,都给到30K的Offer,当然,拼多多加班也是出名的,一周上6天班是常态,每天工作时间基本都是超过12个小时,也是相当辛苦的。 废话不多说,今天我们来聊一聊拼多多的一道后台面试真题,是一道简单的架构类的题目:拼多多有数亿的用户,那么对于某个网页,怎么使用Redis来统计一个网站的用户访问数呢? 使用Hash 哈希是Redis的一种基础数据结构,Redis底层维护的是一个开散列,会把不同的key映射到哈希表上,如果是遇到关键字冲突,那么就会拉出一个链表出来。 当一个用户访问的时候,如果用户...
0
点赞
评论
收藏
分享
2021-06-22 19:38
首钢工学院 Java
Java Agent入门实战(一)-Instrumentation介绍与使用
学会Java Agent你能做什么? 自动添加getter/setter方法的工具lombok就使用了这一技术 btrace、Arthas和housemd等动态诊断工具也是用了instrument技术 Intellij idea 的 HotSwap、Jrebel 等也是该技术的实现之一 pinpoint、skywalking、newrelic、听云的 APM 产品等都基于 Instrumentation 实现 Java Instrumentation 简介 来源:网易有道词典-专业释义-计算机科学技术 Instrumentation: 在计算机科学技术中的英文释义是插桩...
0
点赞
评论
收藏
分享
2021-06-22 19:37
已编辑
首钢工学院 Java
Java Agent入门实战(二)-Instrumentation源码概述
Instrumentation接口设计初衷是为了收集Java程序运行时的数据,用于监控运行程序状态,记录日志,分析代码用的。接下来从源码的流程来介绍一下 实现类InstrumentationImpl的void addTransformer(ClassFileTransformer transformer, boolean canRetransform); 从这段代码知道,转换器ClassFileTransformer的实现是存储在TransformerManager的TransformerInfo数组中的,数组初始长度为0,每添加一个,数组长...
0
点赞
评论
收藏
分享
2021-06-22 19:37
已编辑
首钢工学院 Java
Javac 源码调试教程
环境搭建过程 环境备注:Intellij、JDK8 1、第一步下载导入 javac 的源码 如果不想从 openjdk 下载折腾,可以跳过第 1 步直接从我的 github 下载:github.com/arthur-zhan… OpenJDK 的下载方式为: 打开 hg.openjdk.java.net/jdk8/jdk8/l… ,点击左侧的 zip 或者 gz 进行下载。 在 Intellij 中新建一个 javac-source-code-reading 项目,把源码目录的 src/share/classes/com 目录整个拷贝到项目 src 目录下,删掉没用的 javadoc...
0
点赞
评论
收藏
分享
2021-06-22 19:37
已编辑
首钢工学院 Java
2020年 Java ClassLoader 再不理解就老了
ClassLoader 是 Java 届最为神秘的技术之一,无数人被它伤透了脑筋,摸不清门道究竟在哪里。网上的文章也是一篇又一篇,经过本人的亲自鉴定,绝大部分内容都是在误导别人。本文我带读者彻底吃透 ClassLoader,以后其它的相关文章你们可以不必再细看了。 ClassLoader 做什么的? 顾名思义,它是用来加载 Class 的。它负责将 Class 的字节码形式转换成内存形式的 Class 对象。字节码可以来自于磁盘文件 *.class,也可以是 jar 包里的 *.class,也可以来自远程服务器提供的字节流,字节码的本质就是一个字节数组 []byte,它有特定的复杂的内部格...
0
点赞
评论
收藏
分享
2021-06-22 19:36
已编辑
首钢工学院 Java
【原理探究】同事问我ArrayList遍历时删除元素的正确姿势是什么?
简介 我们在项目开发过程中,经常会有需求需要删除ArrayList中的某个元素,而使用不正确的删除方式,就有可能抛出异常。或者在面试中,会遇到面试官询问遍历时如何正常删除元素。所以在本篇文章中,我们会对几种删除元素的方式进行测试,并对原理进行研究,希望可以帮助到大家! ArrayList遍历时删除元素的几种姿势 首先结论如下: 第1种方法 - 普通for循环正序删除(结果:会漏掉元素判断) 第2种方法 - 普通for循环倒序删除(结果:正确删除) 第3种方法 - for-each循环删除(结果:抛出异常) 第4种方法 - Iterator遍历,使用ArrayList.remove...
0
点赞
评论
收藏
分享
2021-06-22 19:36
首钢工学院 Java
《提升能力,涨薪可待》-Java多线程与并发之ThreadLocal
1. ThreadLocal是什么?使用场景 ThreadLocal简介 ThreadLocal是线程本地变量,可以为多线程的并发问题提供一种解决方式,当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程所对应的副本。 ThreadLocal使用场景 多个线程去获取一个共享变量时,要求获取的是这个变量的初始值的副本。每个线程存储这个变量的副本,对这个变量副本的改变不去影响变量本身。适用于多个线程依赖不同变量值完成操作的场景。比如: 多数据源的切换 spring声明式事...
0
点赞
评论
收藏
分享
2021-06-22 19:36
已编辑
首钢工学院 Java
【金三银四】JVM虚拟机CMS和G1收集器详解
前言: 今天2B哥跟各位牛人分享JVM相关的知识点,今天重点介绍CMS和G1收集器,某些小哥哥就问为什么不讲讲其他收集器?按面试经验来说,这两种收集器问的最多,当然优先讲这两种呀,但是,我说但是,如果你关注我还能看到更多关于JVM的知识,保证让你收获满满,废话不多说,直接上干货。 收集器于JVM堆的关系 复制代码 CMS收集器 JVM参数:-XX:+UseConcMarkSweepGC CMS(Concurrent Mark Sweep)收集器是 H...
0
点赞
评论
收藏
分享
2021-06-22 19:35
已编辑
首钢工学院 Java
Java开发不精通Spring?那你怎么进大厂拿35K高薪?
前言 按照 Spring 官方最新的说法,Spring 是现代 Java 的起源。 不可否认,Spring 无论在 Java 生态系统,还是在就业市场,是绝对的王者。面试出镜率之高,投产规模之广,无出其右。随着技术的发展,Spring 从往日的 IoC 框架,已发展成 Cloud Native 基础设施,衍生出大量 Spring 技术栈,如大家熟知的 Spring Boot、Spring Cloud 和 Spring Security 等。因此,Spring 生态体系随之变得庞大,如 Apache Dubbo 对 Spring Framework 的整合,各类中间件 Spring Boot...
0
点赞
评论
收藏
分享
2021-06-22 19:35
已编辑
首钢工学院 Java
跟着阿里p7学架构:微服务+MySQL+Nginx+Redis+容器化+虚拟机
《深入理解Java虚拟机》 但要想真的深入理解虚拟机一问肯定远远不够的,但是本文中分三部分对JVM有深入的解析。 第1章 走近Java 第2章 Java内存区域与内存溢出异常 第3章 垃圾收集器与内存分配策略 第4章 虚拟机性能监控与故障处理工具 第5章 调优案例分析与实战 第6章 类文件结构 第7章 虚拟机类加载机制 第8章 虚拟机字节码执行引擎 第9章 类加载及执行子系统的案例与实战 第10章 早期(编译期)优化 第11章 晚期(运行期)优化 第12章 Java内存模型与线程 第13章 线程安全与锁优化 由于细节内容实在太...
0
点赞
评论
收藏
分享
2021-06-22 19:34
首钢工学院 Java
一文总结软件架构设计常用概念、原则与思想
导读 本文一文总结软件架构设计常用概念、原则与思想,包括面向对象六大原则,DID原则,ACID、CAP、BASE理论,中间层思想,缓存思想等。 面向对象设计六大原则 一 单一职责原则(SRP): 定义是就一个类而言,应该仅有一个引起他变化的原因。也就是说一个类应该只负责一件事情; 二 开闭原则(OCP): 定义是软件中的对象(类,模块,函数等)应该对于扩展是开放的,但是对于修改是关闭的;当需求发生改变的时候,我们需要对代码进行修改,这个时候我们应该尽量去扩展原来的代码,而不是去修改原来的代码,因为这样可能会引起更多的问题; 三 里氏替换原则(LSP): 所有引用基类的地方必须能...
0
点赞
评论
收藏
分享
1
12
13
14
15
16
333
关注他的用户也关注了:
牛客网
牛客企业服务