一.Java底层基础题 1.SpringMVC的原理以及返回数据如何渲染到jsp/html上? 答:Spring MVC的核心就是 DispatcherServlet , 一个请求经过 DispatcherServlet ,转发给HandlerMapping ,然后经反射,对应 Controller及其里面方法的@RequestMapping地址,最后经ModelAndView和ViewResoler返回给对应视图  .  具体可参考:Spring MVC的工作原理 2.一个类对象属性发生改变时…
一.无笔试题 不知道是不是职位原因还是没遇到,面试时,都不需要做笔试题,而是填张个人信息表格,或者直接面试 二.三大框架方面问题 1.Spring 事务的隔离性,并说说每个隔离性的区别 解答:spring事务详解 2.Spring事务的传播行为,并说说每个传播行为的区别 解答:spring事务详解 3.hibernate跟Mybatis/ ibatis 的区别,为什么选择? 解答:Hibernate与 MyBatis的比较 4.Struts跟Spring mvc的优缺点,让你选会如何选 解答:s…
https://blog.csdn.net/moneyshi/article/details/53086927…
一.Java底层基础题 1.SpringMVC的原理以及返回数据如何渲染到jsp/html上? 答:Spring MVC的核心就是 DispatcherServlet , 一个请求经过 DispatcherServlet ,转发给HandlerMapping ,然后经反射,对应 Controller及其里面方法的@RequestMapping地址,最后经ModelAndView和ViewResoler返回给对应视图  .  具体可参考:Spring MVC的工作原理 2.一个类对象属性发生改变时…
Java高级工程师面试宝典 JavaSE 多线程 进程与线程的区别? 答:进程是所有线程的集合,每一个线程是进程中的一条执行路径,线程只是一条执行路径. 为什么要用多线程? 答:提高程序效率 多线程创建方式? 答:继承Thread或Runnable 接口. 是继承Thread类好还是实现Runnable接口好? 答:Runnable接口好,因为实现了接口还可以继续继承.继承Thread类不能再继承. 你在哪里用到了多线程? 答:主要能体现到多线程提高程序效率. 举例:分批发送短信.迅雷多线程下载…
临近年关,不少人蠢蠢欲动,有童鞋问我java后端面试会面试什么? 作为一个java后端老鸟,跌打滚爬多次被面试和面试别人,总结了一些经验,希望对大家有所帮助. 特别说明,仅仅针对工作两年以上的java后端开发.以开放性题目为主,没有标准答案. 上篇<java高级工程师开放面试题集<一>> 本次是第二篇: 6.缓存相关 如何设计实现LRU缓存? Least Recently Used,最近最少使用缓存. 思路: 6.1.每个key 需要有value,最近的使用时间戳 6.2.面向对象…
面试话痨系列是从技术广度的角度去回答面试官提的问题,适合萌新观看!   面试官,别再问我火箭怎么造了,我知道螺丝的四种拧法,你想听吗? String相关的题目,是面试中经常考察的点,当面试中遇到了String相关的问题,我们可以这么聊: 一:String底层结构 从底层结构上来说,jdk1.8的String,底层是char[].我在工作中几乎很少用到char[],因为List太好用了,我宁愿用List<Character>也不想用char[],因为以前学C时体会过用char[]的痛苦,长度必须…
成为Java高级工程师需要掌握哪些核心点? 每 逢长假都会有很多程序员跳槽,十一.过年是跳槽黄金时刻,尤其是过年.过年的时候年终奖到手,没有了多少牵挂,年终同学同事聚会比较多,沟通的就多,各种 工作机会的消息也相应会多,所以跳槽的机会也就会多.跳槽就必不可少的要经过面试,那么作为一个Java程序员需要准备哪些面试知识呢?下面就给大家说 说. 1.集合框架: 从 上图可以看到主要是Collection和Map的继承类和Iterator的实现类,重点掌握ArrayList.LinkedList. V…
面试笔试精华(二) 警告:一定要把英文题目过一遍,有些公司的题目故意弄成英文的!!! 1.        Difference between shallow copy and deep copy? 浅复制和深复制的区别? 1>   浅拷贝:指针(地址)拷贝,不会产生新对象 2>   深拷贝:内容拷贝,会产生新对象 2.        What is advantage of categories? What is difference between implementing a categ…
想成为Java高级工程师,有哪些要求呢? 1.Core Java,就是Java基础.JDK的类库,很多童鞋都会说,JDK我懂,但是懂还不足够,知其然还要知其所以然,JDK的源代码写的非常好,要经常查看,对使用频繁的类,比如String,集合类(List,Map,Set)等数据结构要知道它们的实现,不同的集合类有什么区别,然后才能知道在一个具体的场合下使用哪个集合类更适合.更高效,这些内容直接看源代码就OK了 2.多线程并发编程,现在并发几乎是写服务端程序必须的技术,那对Java中的多线程就要有足…
[原创]分布式之数据库和缓存双写一致性方案解析(三)   正文 博主本来觉得,<分布式之数据库和缓存双写一致性方案解析>,一文已经十分清晰.然而这一两天,有人在微信上私聊我,觉得应该要采用 先删缓存,再更新数据库,再删缓存 这一方案作为缓存更新策略,而不是先更新数据库,再删缓存.并且搬出了两篇大佬的文章,<Cache Aside Pattern>,<缓存与数据库不一致,咋办?>,希望博主能加以说明.因为问的人太多了,所以才有了这篇文章的诞生. 正文 在开始这篇文章之前,…
重点知识 由于我面试的JAVA开发工程师,针对于JAVA,需要理解的重点内容有: JVM内存管理机制和垃圾回收机制(基本每次面试都会问,一定要搞得透彻) JVM内存调优(了解是怎么回事,一般做项目过程中使用较多) 设计模式(熟悉常见设计模式的应用场景,会画类图,实在不行背几个也是有用的) 多线程(每次都会问,包括线程和进程.线程状态.线程并发的操作等,需要深入复习) JAVA集合类框架(理解框架图.HashMap.ArrayList.HashSet等的关系和区别,其中HashMap的存储机制几乎…
这是一份Java基础知识的面试题.在网上的关于Java的面试题数不胜数,但认真看过感觉大多数都没有实用性,有很多是面试官根本就不会问到的,那些已经脱离了实际开发的技术问题.而这份资料来源自一份个人觉得最贴近真实面试的Java面试题,网上流传较少. 最近又对这份Java基础面试题重新整理了一遍,本人重新编辑后结合了自己许多次的面试经历和经验,做出了标记,划分了重点,以及对某些知识做出一些简单明白的注释,相信可以对需要回顾Java知识,以及准备着面试的Java开发工程师会有一定帮助. 1.    …
       从我刚上大学接触程序员这个职业开始,到如今我从事了七年多程序员,这期间我和我的不少小伙伴接受了太多的负面信息,在成长的道路上也真了交了不少的情商税.这些负面信息中,有一件就是我大学班主任出家为僧的事情.     01入学时的回忆 故事的主人公是我大学时候的班主任,这里称呼他为P老师吧.2007年我入学,他开始带我们班主任,当时我担任班级团支部书记,所以跟他打交道的机会比他同学多一些.我记得那个时候,他说话细声细语,很轻柔.经常他过来到宿舍查访的时候,我和很多同学一样,总有很多问题问…
2019阿里天猫团队Java高级工程师面试题之第二面 2019阿里天猫团队Java高级工程师面试题之第三面 1.五分钟自我介绍,说说自己的擅长及拿手的技术 自我介绍是为了考察面试者的语言表达和总结概括能力,通常面试官希望听到如下四个方面: A 基本信息:简历上也有基本信息,口述一遍当作开场,说一下毕业学校.所学专业.获奖经历,时间控制在半分钟. B 项目经历:按照简历上的内容,按时间由远及近说说开发过的项目,运用什么技术栈,做出什么成绩,有什么收获,时间控制在两分半钟 C 技术专长:说说自己的特…
目录 Java EE : 一.图解Http协议 Java EE : 二.图解 Cookie(小甜饼) Java EE : 三.图解Session(会话) 概述 一.概述 二.详细介绍Cookie 传输过程 三.谈Cookie的作用到XSS(跨站点脚本攻击) 四.总结 参考 一.概述 首先从HTTP说起,Cookie是Http协议中那部分呢? Cookie是什么? 自问自答:Cookie是请求头域和响应头域的字段.简单地说,就是伴随请求和响应的一组键值对的文本,小文本.所以称之为”Cookie“饼…
本文章整理于慕课网的学习视频<JAVA生成二维码>,如果想看视频内容请移步慕课网. 维基百科上对于二维码的解释. 二维条码是指在一维条码的基础上扩展出另一维具有可读性的条码,使用黑白矩形图案表示二进制数据,被设备扫描后可获取其中所包含的信息.一维条码的宽度记载着数据,而其长度没有记载数据.二维条码的长度.宽度均记载着数据.二维条码有一维条码没有的"定位点"和"容错机制".容错机制在即使没有辨识到全部的条码.或是说条码有污损时,也可以正确地还原条码上的信息…
说起二维码,微信好像最先启用,随后各类二维码就开始流行起来了.那什么是二维码呢. 1.什么是二维码?百度一下即可 http://baike.baidu.com/view/132241.htm?fr=aladdin 2.java开发二维码? 2.1:首先导入:…
Java 设计模式(二)-六大原则 单一职责原则(Single Responsibility Principle) 定义: 不要存在多余一个原因导致类变更,既一个类只负责一项职责. 问题由来: 当类A有两个不同职责P1和P2时,当类A的职责P1需要修改时,可能影响职责P2的功能不能正常运行. 解决方案: 将类A分为类A1和类A2,A1的职责时P1,A2的职责是P2,此时修改P1或P2职责都不影响另一职责. 优点: 降低类负责度 降低变更引起的风险 提高类的可读性 提高系统的可维护性 里氏替换原则…
Java进阶(二十五)Java连接mysql数据库(底层实现) 前言 很长时间没有系统的使用java做项目了.现在需要使用java完成一个实验,其中涉及到java连接数据库.让自己来写,记忆中已无从搜索.特将之前使用的方法做一简单的总结.也能够在底层理解一下连接数据库的具体步骤. 实现 首先需要导入相关的jar包,我使用的为:mysql-connector-java-5.1.7-bin.jar. 下面来看一下我所使用的数据库连接方法类: MysqlUtil.java package cn.edu…
20175212童皓桢 Java实验二-面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验步骤 (一)单元测试 在IDEA中建一个项目MyUtil 对于MyUtil类,建立一个MyUtilTest1.java的测试类: 新建一个test文件夹在根目录中->右键选择Mark Directory as->Test Sources Root 之后在test文件夹中建立一个MyUt…
java 多线程一 java 多线程二 java 多线程三 java 多线程四 线程中断: /** * Created by root on 17-9-30. */ public class Test4Thread2 { public static void main(String[] args) { Thread t=new Thread(()->{try { System.out.println(Thread.currentThread().getName()+"start"…
Linux -- 基于zookeeper的java api(二) 写一个关于基于集群的zookeeper的自定义实现HA 基于客户端和监控器:使用监控的方法查看每个注册过的节点的状态来做出操作. Watch:监控端 package com.huhu.zookeeper; import java.util.concurrent.CountDownLatch; import org.apache.zookeeper.WatchedEvent; import org.apache.zookeeper.…
浅谈Java代理二:Cglib动态代理-MethodInterceptor CGLib动态代理特点: 使用CGLib实现动态代理,完全不受代理类必须实现接口的限制,而且CGLib底层采用ASM字节码生成框架,使用字节码技术生成代理类,比使用Java反射效率要高.唯一需要注意的是,CGLib不能对声明为final的方法进行代理,因为CGLib原理是动态生成被代理类的子类. 示例业务逻辑: 1-有一个明星叫胡歌(class HuGe) 3-找明星做事情需要经过助理(ProxyFactory ) 4-…
一般的程序员或许只需知道一些JAVA的语法结构,能对数据库数据进行CRUD就可以应付了.但要成为JAVA(高级) 工程师,就要对JAVA做比较深入的研究,需要不断学习进步,以下对高级工程师需要突破的知识点做个简要整理. Java高级工程师需要弄明白的20个知识点 1.对多线程的了解,尤其是对线程池的理解,对ThreadPoolExecutor构造参数各个作用的理解.了解Fxied Pool.Cached Pool分别的作用 2.对锁的了解,synchronized.Lock接口(及其对应的实现的…
  1.准备工作 所需jar包: JDK 1.6: commons-codec-1.11.jar core-2.2.jar javase-2.2.jar JDK 1.7: commons-codec-1.11.jar core-3.2.1.jar javase-3.2.1.jar import java.awt.AlphaComposite; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.…
  1.代码 见文末推荐 2.测试 测试1:生成base64码 public static void main(String[] args) throws Exception { String data = "http://www.cnblogs.com/Marydon20170307"; File logoFile = new File(QRcodeUtils.class.getResource("ewm.jpg").getPath()); BufferedIma…
java实验二实验报告 实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计模式 实验要求 1.没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程 2.完成实验.撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等).解决办法(空洞的方法如“查网络”.“问…
Java生成二维码方法有三种: 1: 使用SwetakeQRCode在Java项目中生成二维码  http://swetake.com/qr/ 下载地址  或着http://sourceforge.jp/projects/qrcode/downloads/28391/qrcode.zip  这个是日本人写的,生成的是我们常见的方形的二维码  能够用中文 如:5677777ghjjjjj  2: 使用BarCode4j生成条形码和二维码  BarCode4j网址:http://sourceforg…
所谓笔记,就是比較个人的东西,把个人认为有点意思的东西记录下来~~ 程序猿面试宝典笔记(一)基本概念 程序猿面试宝典笔记(二)预处理.const和sizeof 程序猿面试宝典笔记(三)auto_ptr.递归 程序猿面试宝典笔记(四)面向对象.类型转换.static 程序猿面试宝典笔记(五)数据结构基础 程序猿面试宝典笔记(六)软件測试 题目 写一个"标准"宏MIN.这个宏输入两个參数并返回较小的一个. 解析 为什么要把如此简单的题目也放进来呢?为了强调宏定义里面括号的重要性! .! 答…