自己面试了三个多月时间,把经常问到的自己不会或叫不准的问题记录了下来,希望对读者有帮助。问题有点多,也可能有重复的问题,越重复表明面试官越爱问,而且自己卡那的次数相对比较多。面试了很多的大公司,也有一些面试经验与大家分享程序员面试经验总结,其中包括面试时要注意的细节等等,都是自己一路面试下来的思考与反思。Java面试越来越难,现在更多的是问:开源框架源代码、开源框架架构图、项目系统整体架构、实际工作过程中遇到的难以解决的问题等。站在更高的角度问问题了。Java基础这块主要问数据结构和算法,不过一般都不难。注意:千万不要给面试官留下“纸上谈兵”的感觉。
这是最常见的Web前端基础题,如有疑问请加群:585843909可以和小编进行沟通!
答案有些自己写在了笔试题/面试题栏目下。 相信大家把下面的问题弄明白会有很大的收获。
Spring中事务管理支持哪几种方式以及每种方式的具体使用方法。
用SQL语句实现Oracle分页查询。
ArrayList和HsahSet的区别,HashMap和Hashtable的区别?
说一下struts中的常用对象?
怎样整合apache和tomcat?
说一下在linux系统中搭建服务器?
请写出常用的oracle语句及说明,存储过程的语句及说明?
Tomcat有哪些性能调优方法,请举例说明?
Spring中bean的作用域有哪些?
Struts2和Struts1有哪些区别?
如何设计实现外网数据库和内网数据库的数据交换?
Spring最有用的功能是什么?举例说明IOC和AOP的作用?
Sql语句性能调优的方法有哪些?
J2EE的容器和服务器?
请阐述一下你对java多线程中“锁”的概念的理解?
Struts2中的拦截器,你用过哪些自带的拦截器,自己写过吗?
怎样在复杂的各种形式的网页中提取mp3下载的结构化数据?
编写一个在二叉排序树中查找大小为第k的元素的算法?
用java写一个多线程程序,如写四个线程,二个加1,二个对一个变量减一,输出?
Hibernate中的id(主键)生成器有哪些?或者你常用的是哪些?
HashMap和Hashtable的区别?
什么时候用assert?
Abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?
当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?
两个对象值相同(x.equals(y)==true),但却可有不同的hashcode,这句话对不对?
Switch是否能作用在byte上,是否能作用在long上,是否能作用在String上?
Redis、Memcache、Mongodb区别?
数据库优化问题?
多线程问题?
jvm问题?
Redis的Mget方法问题?
分块上传下载?
Java内存模型?
并发压力测试工具?
生产环境CPU过高原因?
线程Join,yield方法?
Redis主从?
ELK是ELK(ElasticSearch, Logstash, Kibana)?
TPTP插件安装?
线程Synchronized同步对象例子?
单点登录?
设计模式?
软负载均衡?
RESTful?
TPS和QPS?
MANMIFEST.MF
Maven命令?
加密算法?
Web部署发布脚本?
Java源码Github?
Javac源码Github?
Jar签名?
FreeMarker?
Linux服务器预定?
XSD?
JS选择器?
jQuery事件?
方法值传递和引用传递?
Curl命令?
脑裂?
慢查询?
Hbase?
防盗链?
CDN?
JNDI?
XA分布式?
JBoss?
Log4j和Slf4j?
二叉树?
Vim和Cat的区别?
网络,IO,多线程?
单点故障?
tar命令,gedit?
网络常用端口?
什么情况下重写equal和hashcode方法?
数据库索引?
PreparedStatement和Statement区别?
分库分表?
客户端和服务端?
Mongodb分页?
多线程相互之间通信?
Redis和Mongodb持久化?
HashMap和HashTable区别?
内存溢出和内存泄露?
Vector?
Servlet?
类锁?
Timer定时器?
.project文件?
数据类型的数值范围?
单点故障?
数据TB等范围?
SYN和ACK?
Java语言优缺点?
Java修饰类的关键词?
解决死锁的方法?
两个特长字符串型数字怎么求和?
多线程核心?
Git命令?
远程复制命令?
JS事件命令?
Collections.sort()内部实现?
哈希环,一致性哈希,虚节点?
Dubbo协议?
服务化?
Spring分布式事务?
数据不一致问题?
Mysql分库,分表?
Tomcat并发量?
事务抛出的是什么异常?
Rose?
MIUI服务器?
Netty?
可以自定义JDK中已经存在的类吗?
XSD?
断言?
Vector?
新项目交接问题?
Redis hash类型?
CGLib?
浅拷贝和深拷贝?
Velocity?
冲血对象?
API权限设计?
JTA,XA?
二叉树同级节点数据输出? 925908804157
分库分表数据查询?
二叉树从根节点和为6的路径?
两个降序序int数组返回新的降序数组?
Char可以定义数字吗?
Get和post区别?
Spring和filter执行顺序?
Kill -9原理?
文件行数命令?
硬盘使用情况命令?
Http协议?
Socket?
重构?
Hibernate和Mybatis区别?
Redis排序取前100条?
TCP包劫持?
Vi和Vim区别?
分区表?
Oracle和MySQL自增长?
事务补偿?
Length和size?
时间复杂度和空间复杂度?
Elastic-Job框架图?
MyBatis框架图?
Redis并发订单抢购问题?
Dubbo框架图?
ZooKeeper框架图?
MySql中${}和#{}区别?
MySQL读写分离?
JavaEE过滤器filter和Spring的Listener区别?
Tomcat配置?
Spring的AOP?
Spring分布式事务?
线性时间排序?
Gradle?
JavaCC?
OGNL?
CXF?
Restful?
查找算法?
线性查找平均查找长度?
析构函数?
String和StringBuffer区别?
HashTable和HashMap区别?
代理模式?
Mybatis二级缓存?
线程死锁解决方法?
Hibernate缓存?
Cookie和Session和Application生命周期?
事务隔离级别?
Session一致性?
Tar命令?
Workflow?
工具链?
Spring拦截器?
Live和bind区别?
SSH?
存储过程、触发器和事务?
数据共享和同步?
快速排序?
MySQL数据一致性?
TreeMap和HashMap和LinkedMap?
NIO?
Dubbo协议?
非递归实现二叉树?
Thrift?
有哪些RPC?
CGLib?
Web.xml文件中内容?
Spring拦截器改变URL中参数?
Git命令?
ZooKeeper选举?
MySQL数据同步?
Less命令?
Tomcat配置?
堆、栈、方法区溢出?
阶乘尾数多少个0问题?
怎么看GC次数?
Redis为什么是单线程的?
Linux中Cat命令?
Whereis和Find命令?
Linux文件中查找某个单词命令?
建立堆?
先序、中序、后序遍历?
Copy-on-write?
Java1.7新加特性方法?
分块查找?
Uri和Url区别?
写一个二叉树值和的问题?
NIO?
Eden一定是堆、年轻代吗?
Top?
jQuery中bind和live区别?
轮询?
SOCKET?
Git和SVN区别?
LRU?
SHA-1哈希算法?
心跳?
JSP和FreeMaker区别?
JSP自定义标签?
T技术等级?
Redis-brenchmark?
软负载均衡?
Host文件?
一致性hash?
读写分离?
SOA?
工具链?
Workflow?
System和Runtime垃圾收集区别?
OSGI?
Redis集群?
Dubbo check?
Volatile?
HashMap中Hashcode取模?
Lock双重问题?
不可重复读?
两个降序数组排序问题?//归并排序
线上CPU占用高原因?
Ps命令?
Windbg?
IIS日志?
一致性哈希算法?
Free?
Sar?
Lsof?
Jps?
SSH?
Jmap?
Restful?
JSP和Servlet区别?
Elastic-Job重复执行问题?
数据库连接池?
Hashcode取模?//16
数据库隔离级别、不可读、幻读、脏读问题?
Hibernate和Mybatis缓存区别?
Redis集群?
Mongodb内置文档?
文档标签JDom?
Kafka分区?
Git如何从主干(master)创建一个名为xxx的分支?
多台服务器如何调用一个非线程安全的资源?
列出两种以上方法,让服务器每十分钟去做一件事情?
GC策略?
Dubbo协议?
CGLib和Java代理区别?
CMS、G1收集器?
生产环节CPU过高问题?
Tomcat配置问题?
Jsonp原理?
MySQL复制?
B树?
Kafka原理?
MySQL各种工具?
Linux文件中找某个词的命令是什么?
Concurrent中多个线程执行完再执行另一个线程的类或方法?
UML图?
ZooKeeper原理?
Hession原理、优缺点?
ResourceLoader?
线程处理机制?
负载?
Hashcode值算法?
防止表单重复提交?
Git remote命令?
线程池?
定时器timer、quartz、elastic-job区别?
Topic?
存储引擎?
Spring原理(多次被问到)?
跨域?
Elastic-Job原理?
Linux的top命令?
Hession协议?
NIO问题重点?
为什么要用Dubbo?
线程关闭?
可以自定义JDK中的类吗?
Java程序实现二阶段提交?
Java8?
CAS?
Spring自定义注解?
事务失败抛什么异常?
数据库行锁、表锁?
日志级别?
检查异常和非检查异常?
POJO注解?
Throw和throws区别?
DDL?
主键生成策略?
Atomic?
自旋锁?
Final?
JNI?
偏向锁?
互斥锁?
ThreadLocal?
Windbg?
Thread.notify和Thread.notifyAll?
Redis的过期时间expire实现原理?
NIO中selector和channel?
Dubbo客户端找服务器的过程?
Java中Timer实现原理?
类锁和实例锁的区别?
Vector?
System.in.read()?
Long long两个long代表的意思?
C和C++区别?
分布式Session一致性问题?
CPA?
单点故障?
Nginx单点故障和负载均衡?
HTTP响应码?
Native?
DLL?
ZXing?
JMS?
内存数据库?
Static和getInstance区别?
Node.js?
Thread类?
TCP、IP?
Dubbo层次模型?
AVL树?
数据库索引?
线程池?
T-SQL?
PL/SQL?
容器?
Intranet?
SOAP?
Dubbo调用过程?
XSD?
Redis等Key的容量,长度?
Redis和Memcache区别?
MySQL查询缓存?
缓存实例大小?
Redis数据类型?
RTT?
数据量级?210
JNDI?
Kafka集群?
Scala?
Kafka源码下载?
分库分表后查数据?
Gsf?
AOP?
Netty?
Thrift?
说话见好就收?
Linux文件等分几个文件命令?
Maven包依赖命令?
Git创建远程分支命令?
Thread和Runnable区别?
自定义注解?
订单主键避免重复问题?
多线程下单怎么避免重复下单?
ReadWriteLock?
Integer和int区别?//128位限制
MySQL utf-8汉字几个字节?
MySQL sql时间戳?
唯一索引?
MySQL操作字符串的函数?
Netty?
索引列可以为空值吗?
RBO?
外键可以为空吗?
Shell脚本?
系统设计与重构?
$(whoami)
chfs?
Ping?
Sed?
Linux中>>命令?
Linux中print是从0还是从1开始的?
ActiveMQ?
守护线程?
ConcurrentArrayList,ConcurrentLinkedList?
设计模式?
Spring什么情况下是线程不安全的?
Http1.0和Http1.1的区别?
Java标识符?
父子类访问权限?
抽象类?
数据库in范围限制?
红黑树?
Spring中Listener?
JSP中自定义标签?
Java中字符串表达式求值?
Java中文件路径遍历?
ThreadLocal?
Threadpoolexecutor中有哪几种阻塞队列?
阻塞队列有哪几种?
Netstat?
Future?
Dubbo超时问题?
Elastic-Job重复执行?
模板?
ThreadLocal要注意什么?
IntialingBean?
怎么在Spring初始化时插入方法?
C中->和<<代表什么意思?
Web.xml文件内容?
LRU?
类修饰符包可见性?
Java数据中与运算求一个数是2的多少次幂?
Storm?
Clojure?
成员属性?
Float精度问题?
Mac控制台使用?
Decimal?
Java位运算?
Slf4j?
TTL?
Ubuntu?
Linux文件大小?
Mkdir和Touch区别?
Linux中Sed命令?
HBase数据类型?
Linux统计出现次数命令?
Linux中sed?
Linux中cut?
反射?
Spring相互引用会出现什么问题?
Jetty?
Spring命名空间?
SQL语句?
路由?