java相关技术问答(一)
网上一些没有标准答案的面试题,我自己做的解答总结,有任何异议可以提出来~^_^,不断更新中...
Springboot除了自动配置与传统的spring还有哪些不同
- 传统的springweb项目需要部署在tomcat这样的容器才能运行,springboot集成了tomcat容器,可以直接通过他提供的main方法直接运行,或者打成jar包或war包直接运行
- springboot提供了很多第三方打包的插件,可以很方便的引用pom,通过简单配置来集成第三方插件,像redis,jpa等
hashmap线程不安全的出现场景
- 在多线程环境下,同时put一个全局的hashmap,此时若hashmap刚好进行扩容,进入rehash方法,线程1执行了一部分然后挂起,被线程2抢走cpu继续运行,可能导致链表的循环引用,当下次get这个key值时,会造成死循环
Object中hashcode方法重写了,equals方法要不要改;equals方法重写了,hashcode方法要不要改?
- 首先从原理上将,hashcode存在是为了快速的定位像在hashmap中键值得位置,当hashcode重写,仅仅影响的是不同的键值hashcode值变了,并不影响键值得存取和判重
- 但是如果equals方法变了,影响的是值,要判断值是否相同,不止需要equals相同,hashcode也要相同,所以equals变了,hashcode方法也要变
线上服务cpu很高怎么办?可以采取哪些措施?
- 首先,top一下,判断哪个进程占用cpu很高
- 然后top -Hp pid判断该进行哪个线程最占用cpu,目的是找到哪个方法栈最占用cpu
- 找到线程pid后,进行16进制转换
- 然后用jstack 进程id | grep 线程id 来打印栈信息,可以找到哪个类或方法占用了最高cpu,就可以去查程序代码的原因
TCP与UDP有什么不同?TCP是如何保证可靠传输的?
- TPC是面向连接的,UDP是无连接的
- TPC是可靠服务,保证数据完整不丢失,不重复,有序,无差错。UDP不保证数据完整性
TPC是一对一连接,UDP可以有一对一,一对多,多对一,多对多
TCP提供了丢包重试机制,应答机制,有序接收机制保证数据可靠性
网关能够为后端服务带来哪些好处?
- 首先是隐藏后端ip地址
- 方便进行负载均衡
- 提供统一的地址管理,调用监控,安全过滤
java相关技术问答(一)的更多相关文章
- java相关技术问答(二)
String为什么是final的 首先是为了安全性,final表示不可变,不可被继承,不能修改其方法保证安全 在多线程环境下,final类型的String保证线程安全 String支持字符串常量池,相 ...
- 在Eclipse中使用Maven插件 博客分类: Java相关技术
简介 本文介绍如何在Eclipse中通过maven插件编写java项目和web项目. 安装Maven 下载Maven最新版本,见:maven.apache.org/download.html 当前版本 ...
- JAVA相关技术
开发服务器环境: 1.Linux系统 CentOS 6.5\7 2.JDK1.8 3.tomcat 9 4.mysql 5.7 开发环境: 1.开发集成工具:idea 2.构建工具maven 仓库暂时 ...
- java -相关技术
地址: http://www.codeyyy.com/java/11-35-52.html
- Java后端技术微信交流群!工作、学习、技术、资源等!期待你的加入!
<Java后端技术>专注Java相关技术:SSM.Spring全家桶.微服务.MySQL.MyCat.集群.分布式.中间件.Linux.网络.多线程,偶尔讲点运维Jenkins.Nexus ...
- Java Web相关技术(汇聚页)
Java Web相关技术(汇聚页) 初学Java Web(2)——搭建Java Web开发环境
- https://stackoverflow.com/与程序相关的IT技术问答网站
https://stackoverflow.com/ Stack Overflow是一个与程序相关的IT技术问答网站.用户可以在网站免费提交问题,浏览问题,索引相关内容,在创建主页的时候使用简单的HT ...
- 目前最全的IT技术问答、社区、科技服务网站合集
资源网站 推荐一个资源丰富齐全的网站:风云社区(SCOEE),主要特点是提供的是纯净.优质.无广告.无附加东西的资源.资源很丰富,包括各类软件资源(mac.Windows.ios.ipad.安装等软件 ...
- JAVA相关基础知识
JAVA相关基础知识 1.面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分, ...
随机推荐
- 《Android Studio开发实战 从零基础到App上线》资源下载和内容勘误
转载于:https://blog.csdn.net/aqi00/article/details/73065392 资源下载 下面是<Android Studio开发实战 从零基础到App上线&g ...
- 最小费用最大流 HDU1533
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1533 #include<bits/stdc++.h> #define fi first ...
- Handler实现消息的定时发送
话不多说,直接上代码 private Handler mHandler = new Handler() { @Override public void handleMessage(Message ms ...
- 用php获取js变量的值
<script type="text/javascript"> var t1 = "fff"; var t2 = "<?php ec ...
- Js学习(6) 标准库-Array对象
Array是Js的原生对象,同时也是一个构造函数,可以用它生成新的数组 用不用new结果都一样 var arr = new Array(2); // 等同于 var arr = Array(2); 但 ...
- Xadmin显示视图
.display显示要设置的字段 1. 自定义样式类,显示出要显示的字段,在这个类中,也可以设置对应函数. list_display=[check,"title",delete]2 ...
- 保存一份自己常用的packjson
这里是一份专门针对react的插件配置, 有: es5的转换器,有ie的promise垫片,有蚂蚁金服的anth,还有用于消息通信的pubsub订阅发布系统,虽然现在不用了.... 用于发请求的axi ...
- Python开发——数据类型【字符串格式化】
字符串格式化之——% # 字符串格式化 msg = 'I am %s , My hobby is %s'%('yuan','play') print(msg) # I am yuan , My hob ...
- Ural 1039 Anniversary Party
题目链接:http://acm.timus.ru/problem.aspx?space=1&num=1039 Dynamic Programming. 建立树形结构,每个employee有两个 ...
- LOJ-10102(求A到B之间的割点)
题目链接:传送门 思路:求A到B之间必要的中间节点 条件:(1)只有一条路径经过中间节点:(low[B]>=num[u]&&num[v]<=num[B],没有从B到u的路径 ...