程序员笔试面试题汇总

自己面试了三个多月时间,把经常问到的自己不会或叫不准的问题记录了下来,希望对读者有帮助。问题有点多,也可能有重复的问题,越重复表明面试官越爱问,而且自己卡那的次数相对比较多。面试了很多的大公司,也有一些面试经验与大家分享程序员面试经验总结,其中包括面试时要注意的细节等等,都是自己一路面试下来的思考与反思。Java面试越来越难,现在更多的是问:开源框架源代码、开源框架架构图、项目系统整体架构、实际工作过程中遇到的难以解决的问题等。站在更高的角度问问题了。Java基础这块主要问数据结构和算法,不过一般都不难。注意:千万不要给面试官留下“纸上谈兵”的感觉。
程序员笔试面试题汇总_第1张图片
这是最常见的Web前端基础题,如有疑问请加群:585843909可以和小编进行沟通!
答案有些自己写在了笔试题/面试题栏目下。 相信大家把下面的问题弄明白会有很大的收获。

  1. Spring中事务管理支持哪几种方式以及每种方式的具体使用方法。

  2. 用SQL语句实现Oracle分页查询。

  3. ArrayList和HsahSet的区别,HashMap和Hashtable的区别?

  4. 说一下struts中的常用对象?

  5. 怎样整合apache和tomcat?

  6. 说一下在linux系统中搭建服务器?

  7. 请写出常用的oracle语句及说明,存储过程的语句及说明?

  8. Tomcat有哪些性能调优方法,请举例说明?

  9. Spring中bean的作用域有哪些?

  10. Struts2和Struts1有哪些区别?

  11. 如何设计实现外网数据库和内网数据库的数据交换?

  12. Spring最有用的功能是什么?举例说明IOC和AOP的作用?

  13. Sql语句性能调优的方法有哪些?

  14. J2EE的容器和服务器?

  15. 请阐述一下你对java多线程中“锁”的概念的理解?

  16. Struts2中的拦截器,你用过哪些自带的拦截器,自己写过吗?

  17. 怎样在复杂的各种形式的网页中提取mp3下载的结构化数据?

  18. 编写一个在二叉排序树中查找大小为第k的元素的算法?

  19. 用java写一个多线程程序,如写四个线程,二个加1,二个对一个变量减一,输出?

  20. Hibernate中的id(主键)生成器有哪些?或者你常用的是哪些?

  21. HashMap和Hashtable的区别?

  22. 什么时候用assert?

  23. Abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?

  24. 当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?

  25. 两个对象值相同(x.equals(y)==true),但却可有不同的hashcode,这句话对不对?

  26. Switch是否能作用在byte上,是否能作用在long上,是否能作用在String上?

  27. Redis、Memcache、Mongodb区别?

  28. 数据库优化问题?

  29. 多线程问题?

  30. jvm问题?

  31. Redis的Mget方法问题?

  32. 分块上传下载?

  33. Java内存模型?

  34. 并发压力测试工具?

  35. 生产环境CPU过高原因?

  36. 线程Join,yield方法?

  37. Redis主从?

  38. ELK是ELK(ElasticSearch, Logstash, Kibana)?

  39. TPTP插件安装?

  40. 线程Synchronized同步对象例子?

  41. 单点登录?

  42. 设计模式?

  43. 软负载均衡?

  44. RESTful?

  45. TPS和QPS?

  46. MANMIFEST.MF

  47. Maven命令?

  48. 加密算法?

  49. Web部署发布脚本?

  50. Java源码Github?

  51. Javac源码Github?

  52. Jar签名?

  53. FreeMarker?

  54. Linux服务器预定?

  55. XSD?

  56. JS选择器?

  57. jQuery事件?

  58. 方法值传递和引用传递?

  59. Curl命令?

  60. 脑裂?

  61. 慢查询?

  62. Hbase?

  63. 防盗链?

  64. CDN?

  65. JNDI?

  66. XA分布式?

  67. JBoss?

  68. Log4j和Slf4j?

  69. 二叉树?

  70. Vim和Cat的区别?

  71. 网络,IO,多线程?

  72. 单点故障?

  73. tar命令,gedit?

  74. 网络常用端口?

  75. 什么情况下重写equal和hashcode方法?

  76. 数据库索引?

  77. PreparedStatement和Statement区别?

  78. 分库分表?

  79. 客户端和服务端?

  80. Mongodb分页?

  81. 多线程相互之间通信?

  82. Redis和Mongodb持久化?

  83. HashMap和HashTable区别?

  84. 内存溢出和内存泄露?

  85. Vector?

  86. Servlet?

  87. 类锁?

  88. Timer定时器?

  89. .project文件?

  90. 数据类型的数值范围?

  91. 单点故障?

  92. 数据TB等范围?

  93. SYN和ACK?

  94. Java语言优缺点?

  95. Java修饰类的关键词?

  96. 解决死锁的方法?

  97. 两个特长字符串型数字怎么求和?

  98. 多线程核心?

  99. Git命令?

  100.      远程复制命令?
    
  101.      JS事件命令?
    
  102.      Collections.sort()内部实现?
    
  103.      哈希环,一致性哈希,虚节点?
    
  104.      Dubbo协议?
    
  105.      服务化?
    
  106.      Spring分布式事务?
    
  107.      数据不一致问题?
    
  108.      Mysql分库,分表?
    
  109.      Tomcat并发量?
    
  110.      事务抛出的是什么异常?
    
  111.      Rose?
    
  112.      MIUI服务器?
    
  113.      Netty?
    
  114.      可以自定义JDK中已经存在的类吗?
    
  115.      XSD?
    
  116.      断言?
    
  117.      Vector?
    
  118.      新项目交接问题?
    
  119.      Redis hash类型?
    
  120.      CGLib?
    
  121.      浅拷贝和深拷贝?
    
  122.      Velocity?
    
  123.      冲血对象?
    
  124.      API权限设计?
    
  125.      JTA,XA?
    
  126.      二叉树同级节点数据输出? 925908804157
    
  127.      分库分表数据查询?
    
  128.      二叉树从根节点和为6的路径?
    
  129.      两个降序序int数组返回新的降序数组?
    
  130.      Char可以定义数字吗?
    
  131.      Get和post区别?
    
  132.      Spring和filter执行顺序?
    
  133.      Kill -9原理?
    
  134.      文件行数命令?
    
  135.      硬盘使用情况命令?
    
  136.      Http协议?
    
  137.      Socket?
    
  138.      重构?
    
  139.      Hibernate和Mybatis区别?
    
  140.      Redis排序取前100条?
    
  141.      TCP包劫持?
    
  142.      Vi和Vim区别?
    
  143.      分区表?
    
  144.      Oracle和MySQL自增长?
    
  145.      事务补偿?
    
  146.      Length和size?
    
  147.      时间复杂度和空间复杂度?
    
  148.      Elastic-Job框架图?
    
  149.      MyBatis框架图?
    
  150.      Redis并发订单抢购问题?
    
  151.      Dubbo框架图?
    
  152.      ZooKeeper框架图?
    
  153.      MySql中${}和#{}区别?
    
  154.      MySQL读写分离?
    
  155.      JavaEE过滤器filter和Spring的Listener区别?
    
  156.      Tomcat配置?
    
  157.      Spring的AOP?
    
  158.      Spring分布式事务?
    
  159.      线性时间排序?
    
  160.      Gradle?
    
  161.      JavaCC?
    
  162.      OGNL?
    
  163.      CXF?
    
  164.      Restful?
    
  165.      查找算法?
    
  166.      线性查找平均查找长度?
    
  167.      析构函数?
    
  168.      String和StringBuffer区别?
    
  169.      HashTable和HashMap区别?
    
  170.      代理模式?
    
  171.      Mybatis二级缓存?
    
  172.      线程死锁解决方法?
    
  173.      Hibernate缓存?
    
  174.      Cookie和Session和Application生命周期?
    
  175.      事务隔离级别?
    
  176.      Session一致性?
    
  177.      Tar命令?
    
  178.      Workflow?
    
  179.      工具链?
    
  180.      Spring拦截器?
    
  181.      Live和bind区别?
    
  182.      SSH?
    
  183.      存储过程、触发器和事务?
    
  184.      数据共享和同步?
    
  185.      快速排序?
    
  186.      MySQL数据一致性?
    
  187.      TreeMap和HashMap和LinkedMap?
    
  188.      NIO?
    
  189.      Dubbo协议?
    
  190.      非递归实现二叉树?
    
  191.      Thrift?
    
  192.      有哪些RPC?
    
  193.      CGLib?
    
  194.      Web.xml文件中内容?
    
  195.      Spring拦截器改变URL中参数?
    
  196.      Git命令?
    
  197.      ZooKeeper选举?
    
  198.      MySQL数据同步?
    
  199.      Less命令?
    
  200.      Tomcat配置?
    
  201.      堆、栈、方法区溢出?
    
  202.      阶乘尾数多少个0问题?
    
  203.      怎么看GC次数?
    
  204.      Redis为什么是单线程的?
    
  205.      Linux中Cat命令?
    
  206.      Whereis和Find命令?
    
  207.      Linux文件中查找某个单词命令?
    
  208.      建立堆?
    
  209.      先序、中序、后序遍历?
    
  210.      Copy-on-write?
    
  211.      Java1.7新加特性方法?
    
  212.      分块查找?
    
  213.      Uri和Url区别?
    
  214.      写一个二叉树值和的问题?
    
  215.      NIO?
    
  216.      Eden一定是堆、年轻代吗?
    
  217.      Top?
    
  218.      jQuery中bind和live区别?
    
  219.      轮询?
    
  220.      SOCKET?
    
  221.      Git和SVN区别?
    
  222.      LRU?
    
  223.      SHA-1哈希算法?
    
  224.      心跳?
    
  225.      JSP和FreeMaker区别?
    
  226.      JSP自定义标签?
    
  227.      T技术等级?
    
  228.      Redis-brenchmark?
    
  229.      软负载均衡?
    
  230.      Host文件?
    
  231.      一致性hash?
    
  232.      读写分离?
    
  233.      SOA?
    
  234.      工具链?
    
  235.      Workflow?
    
  236.      System和Runtime垃圾收集区别?
    
  237.      OSGI?
    
  238.      Redis集群?
    
  239.      Dubbo check?
    
  240.      Volatile?
    
  241.      HashMap中Hashcode取模?
    
  242.      Lock双重问题?
    
  243.      不可重复读?
    
  244.      两个降序数组排序问题?//归并排序
    
  245.      线上CPU占用高原因?
    
  246.      Ps命令?
    
  247.      Windbg?
    
  248.      IIS日志?
    
  249.      一致性哈希算法?
    
  250.      Free?
    
  251.      Sar?
    
  252.      Lsof?
    
  253.      Jps?
    
  254.      SSH?
    
  255.      Jmap?
    
  256.      Restful?
    
  257.      JSP和Servlet区别?
    
  258.      Elastic-Job重复执行问题?
    
  259.      数据库连接池?
    
  260.      Hashcode取模?//16
    
  261.      数据库隔离级别、不可读、幻读、脏读问题?
    
  262.      Hibernate和Mybatis缓存区别?
    
  263.      Redis集群?
    
  264.      Mongodb内置文档?
    
  265.      文档标签JDom?
    
  266.      Kafka分区?
    
  267.      Git如何从主干(master)创建一个名为xxx的分支?
    
  268.      多台服务器如何调用一个非线程安全的资源?
    
  269.      列出两种以上方法,让服务器每十分钟去做一件事情?
    
  270.      GC策略?
    
  271.      Dubbo协议?
    
  272.      CGLib和Java代理区别?
    
  273.      CMS、G1收集器?
    
  274.      生产环节CPU过高问题?
    
  275.      Tomcat配置问题?
    
  276.      Jsonp原理?
    
  277.      MySQL复制?
    
  278.      B树?
    
  279.      Kafka原理?
    
  280.      MySQL各种工具?
    
  281.      Linux文件中找某个词的命令是什么?
    
  282.      Concurrent中多个线程执行完再执行另一个线程的类或方法?
    
  283.      UML图?
    
  284.      ZooKeeper原理?
    
  285.      Hession原理、优缺点?
    
  286.      ResourceLoader?
    
  287.      线程处理机制?
    
  288.      负载?
    
  289.      Hashcode值算法?
    
  290.      防止表单重复提交?
    
  291.      Git remote命令?
    
  292.      线程池?
    
  293.      定时器timer、quartz、elastic-job区别?
    
  294.      Topic?
    
  295.      存储引擎?
    
  296.      Spring原理(多次被问到)?
    
  297.      跨域?
    
  298.      Elastic-Job原理?
    
  299.      Linux的top命令?
    
  300.      Hession协议?
    
  301.      NIO问题重点?
    
  302.      为什么要用Dubbo?
    
  303.      线程关闭?
    
  304.      可以自定义JDK中的类吗?
    
  305.      Java程序实现二阶段提交?
    
  306.      Java8?
    
  307.      CAS?
    
  308.      Spring自定义注解?
    
  309.      事务失败抛什么异常?
    
  310.      数据库行锁、表锁?
    
  311.      日志级别?
    
  312.      检查异常和非检查异常?
    
  313.      POJO注解?
    
  314.      Throw和throws区别?
    
  315.      DDL?
    
  316.      主键生成策略?
    
  317.      Atomic?
    
  318.      自旋锁?
    
  319.      Final?
    
  320.      JNI?
    
  321.      偏向锁?
    
  322.      互斥锁?
    
  323.      ThreadLocal?
    
  324.      Windbg?
    
  325.      Thread.notify和Thread.notifyAll?
    
  326.      Redis的过期时间expire实现原理?
    
  327.      NIO中selector和channel?
    
  328.      Dubbo客户端找服务器的过程?
    
  329.      Java中Timer实现原理?
    
  330.      类锁和实例锁的区别?
    
  331.      Vector?
    
  332.      System.in.read()?
    
  333.      Long long两个long代表的意思?
    
  334.      C和C++区别?
    
  335.      分布式Session一致性问题?
    
  336.      CPA?
    
  337.      单点故障?
    
  338.      Nginx单点故障和负载均衡?
    
  339.      HTTP响应码?
    
  340.      Native?
    
  341.      DLL?
    
  342.      ZXing?
    
  343.      JMS?
    
  344.      内存数据库?
    
  345.      Static和getInstance区别?
    
  346.      Node.js?
    
  347.      Thread类?
    
  348.      TCP、IP?
    
  349.      Dubbo层次模型?
    
  350.      AVL树?
    
  351.      数据库索引?
    
  352.      线程池?
    
  353.      T-SQL?
    
  354.      PL/SQL?
    
  355.      容器?
    
  356.      Intranet?
    
  357.      SOAP?
    
  358.      Dubbo调用过程?
    
  359.      XSD?
    
  360.      Redis等Key的容量,长度?
    
  361.      Redis和Memcache区别?
    
  362.      MySQL查询缓存?
    
  363.      缓存实例大小?
    
  364.      Redis数据类型?
    
  365.      RTT?
    
  366.      数据量级?210
    
  367.      JNDI?
    
  368.      Kafka集群?
    
  369.      Scala?
    
  370.      Kafka源码下载?
    
  371.      分库分表后查数据?
    
  372.      Gsf?
    
  373.      AOP?
    
  374.      Netty?
    
  375.      Thrift?
    
  376.      说话见好就收?
    
  377.      Linux文件等分几个文件命令?
    
  378.      Maven包依赖命令?
    
  379.      Git创建远程分支命令?
    
  380.      Thread和Runnable区别?
    
  381.      自定义注解?
    
  382.      订单主键避免重复问题?
    
  383.      多线程下单怎么避免重复下单?
    
  384.      ReadWriteLock?
    
  385.      Integer和int区别?//128位限制
    
  386.      MySQL utf-8汉字几个字节?
    
  387.      MySQL sql时间戳?
    
  388.      唯一索引?
    
  389.      MySQL操作字符串的函数?
    
  390.      Netty?
    
  391.      索引列可以为空值吗?
    
  392.      RBO?
    
  393.      外键可以为空吗?
    
  394.      Shell脚本?
    
  395.      系统设计与重构?
    
  396.      $(whoami)
    
  397.      chfs?
    
  398.      Ping?
    
  399.      Sed?
    
  400.      Linux中>>命令?
    
  401.      Linux中print是从0还是从1开始的?
    
  402.      ActiveMQ?
    
  403.      守护线程?
    
  404.      ConcurrentArrayList,ConcurrentLinkedList?
    
  405.      设计模式?
    
  406.      Spring什么情况下是线程不安全的?
    
  407.      Http1.0和Http1.1的区别?
    
  408.      Java标识符?
    
  409.      父子类访问权限?
    
  410.      抽象类?
    
  411.      数据库in范围限制?
    
  412.      红黑树?
    
  413.      Spring中Listener?
    
  414.      JSP中自定义标签?
    
  415.      Java中字符串表达式求值?
    
  416.      Java中文件路径遍历?
    
  417.      ThreadLocal?
    
  418.      Threadpoolexecutor中有哪几种阻塞队列?
    
  419.      阻塞队列有哪几种?
    
  420.      Netstat?
    
  421.      Future?
    
  422.      Dubbo超时问题?
    
  423.      Elastic-Job重复执行?
    
  424.      模板?
    
  425.      ThreadLocal要注意什么?
    
  426.      IntialingBean?
    
  427.      怎么在Spring初始化时插入方法?
    
  428.      C中->和<<代表什么意思?
    
  429.      Web.xml文件内容?
    
  430.      LRU?
    
  431.      类修饰符包可见性?
    
  432.      Java数据中与运算求一个数是2的多少次幂?
    
  433.      Storm?
    
  434.      Clojure?
    
  435.      成员属性?
    
  436.      Float精度问题?
    
  437.      Mac控制台使用?
    
  438.      Decimal?
    
  439.      Java位运算?
    
  440.      Slf4j?
    
  441.      TTL?
    
  442.      Ubuntu?
    
  443.      Linux文件大小?
    
  444.      Mkdir和Touch区别?
    
  445.      Linux中Sed命令?
    
  446.      HBase数据类型?
    
  447.      Linux统计出现次数命令?
    
  448.      Linux中sed?
    
  449.      Linux中cut?
    
  450.      反射?
    
  451.      Spring相互引用会出现什么问题?
    
  452.      Jetty?
    
  453.      Spring命名空间?
    
  454.      SQL语句?
    
  455.      路由?
    

你可能感兴趣的:(WEb,IT)