当前位置:   article > 正文

JAVA最全面的一条自学路线,2024必看

JAVA最全面的一条自学路线,2024必看

| — | — | — | — | — |

| 自定义注解 | 熟练 | 学会自己写一个注解出来 | 工作会用(偶尔) | |

| 实操 | 亲手自定义注解 | 实操 | 工作会用 | |

| 元注解 | @Repeatable、@Inherited 、@Target、@Documented、@Retention | 熟悉 | 工作会用 | |

| 预置的注解 | @Override

、@SafeVarargs、@Deprecated

、@SuppressWarnings

、@FunctionalInterface | 熟练 | 工作会用 | |

JUC必备多线程


(个人建议juc熟悉为主,不用学得特别深,但是可以用心学好CAS算法和锁装逼最牛,面试官都服你的技术,这是秘密,标注蓝色用点心学)

| 线程 | # 进程和线程的理论 | 是并发编程中很常用的工具类,线程池,异步 IO 和轻量级任务框架都有涉足\原子性

\线程按序交替\线程八锁\调度\线程的安全问题\ 线程的生命周期\线程优先级 | 理解 | 面试会问 |

| — | — | — | — | — |

| 实现多线程 | 实现多线程四种方式1、继承Thread类\2、实现Runnable接口\3、实现Callable接口\4、使用ExecutorService、Callable、Future实现 | 熟练 | 面试必问 | |

| # 同步代码块 | # synchronized实操和理论 | 熟练 | 工作会用、面试会问 | |

| Lock 同步锁 | 和synchronized区别、ReentrantLock.lock(),ReentrantLock.tryLock(),

ReentrantLock.tryLock(long timeout,TimeUnit unit), | 熟练 | 面试会问\工作会用 | |

| volatile 关键字 | 内存模型中的可见性、原子性和有序性\Volatile原理 | 理解 | 面试会问 | |

| CAS算法、原子变量 | CAS算法incrementAndGet、compareAndSet、compareAndSwapInt、Atomic.cmpxchg、compareAndSwapInt.native | 原子变量AtomicInteger\AtomicReference\FieldUpdater\ABA问题与解决 | 理解 | 面试会问 |

| ConcurrentHashMap 锁 | 线程安全与不安全、数据结构、锁分段 | 熟练 | 面试会问 | |

| CountDownLatch | 工具类的主要犯法CountDownLatch(int count)、countDown()、await()、getCount()

、await(long timeout, TimeUnit unit) | 熟练 | 面试会问 | |

| Callable | Callable接口的实现实操 | 熟练 | 面试必问 | |

| ReadWriteLock 读写锁 | 熟练 | 熟练 | 面试必问 | |

| 线程池 | newCachedThreadPool、newFixedThreadPool、newSingleThreadExecutor | 熟练 | 面试必问 | |

| 线程八锁 | 1. 两个普通同步方法,两个线程,标准打印, 打印?\2. 新增 Thread.sleep() 给 getOne() ,打印?\3. 新增普通方法 getThree() , 打印?\4. 两个普通同步方法,两个 Number 对象,打印?\5. 修改 getOne() 为静态同步方法,打印?\6. 修改两个方法均为静态同步方法,一个 Number 对象?\7. 一个静态同步方法,一个非静态同步方法,两个 Number 对象?\8. 两个静态同步方法,两个 Number 对象? | 熟练 | 面试必问 | |

| 线程调度 | 抢占式调度\协同式调度 | 熟练 | 面试必问 | |

网络编程


(学习建议实操一遍为主,这玩意就是个理解概念但是又不得不重视)

| 网络编程 | 理论知识 | IP\协议\网络协议\HTTP协议\UDP协议\TCP协议\常见网络协议\URL\域名\端口\OSI参考模型\三次握手\常用协议 | 熟练 | 工作会用 |

| — | — | — | — | — |

| UDP协议 | {发送

-DatagramSocket、DatagramPacket对象、Socket发送、释放}{接收-DatagramSocket、DatagramPacket、接受数据、解析数据包对象、释放} | 实操过 | 面试会问(偶尔) | |

| TCP协议 | {发送-ServerSocket 、server.accept()、获取客户端的输出流、输出数据 、关闭释放}{接收-Socket 、InputStream 、接收到数据、数据输出 、关闭释放} | 实操过 | 面试会问(偶尔) | |

| Soket通讯 | 熟悉 | 明白原理和理论 | 工作会用(偶尔) | |

| OSI | 物理层\数据链路层\网络层\传输层\会话层和表示层\应用层 | 熟悉 | 学习会用 | |

HTML


(学习建议必学会)

| HTML | 理论 | HTML、HTML发展、W3C、格式<标签名 属性名=‘属性值’ 属性名=‘属性值’ …/> | 最好到熟练,到时候不求人 | 工作会用 |

| — | — | — | — | — |

| 常用标签 | 、

、、、、、

|

CSS


(学习建议必学)

| CSS | 理论知识 | 继承性和层叠性、权重计算、内联标签与块标签基础理论 | 熟练 | 学习会用 |

| — | — | — | — | — |

| 选择器 | 类别选择器、标签选择器、ID选择器、后代选择器、子选择器、伪类选择器、通用选择器、群组选择器等 | 熟悉 | 工作会用 | |

| Css样式 | [内部](http://www.so.com/s?q=内部&ie=utf-8&src=internal_wenda_recommend_textn" \t “https://wenda.so.com/q/_blank)样式,行内样式和[外部样式](http://www.so.com/s?q=外部样式表&ie=utf-8&src=internal_wenda_recommend_textn” \t "https://wenda.so.com/q/_blank) | 熟练 | 工作会用 | |

| 边框 | border-style(none\dotted\dashed\solid

ridge\inset\double\outset\groove) | 熟练 | 工作会用 | |

| 列表 | ul {list-style-type : square} | 熟练 | 工作会用 | |

| 鼠标效果 | Cursor(crosshair

\help\wait) | 熟练 | 工作会用 | |

| 浮动float | float(left\right\none\inherit) | 熟练 | 工作会用 | |

| 定位 | Position([static](https://www.runoob.com/css/css-positioning.html" \l “position-static)[relative](https://www.runoob.com/css/css-positioning.html” \l “position-relative)[fixed](https://www.runoob.com/css/css-positioning.html” \l “position-fixed)[absolute](https://www.runoob.com/css/css-positioning.html” \l “position-absolute)[sticky](https://www.runoob.com/css/css-positioning.html” \l "position-sticky)) | 熟练 | 工作会用 | |

| 文本排版 | 实操 | 熟练 | 工作会用 | |

| 文本颜色 | Color(#… …) | 熟练 | 工作会用 | |

| 字体样式 | Serif 字体\Sans-serif 字体\Monospace 字体\Cursive 字体\Fantasy 字体 | 熟练 | 工作会用 | |

| 选择器 | 熟练 | 熟练 | 工作会用 | |

| CSS优先级 | CSS[样式](http://www.so.com/s?q=样式&ie=utf-8&src=internal_wenda_recommend_textn" \t “https://wenda.so.com/q/_blank)在[浏览器](http://www.so.com/s?q=浏览器&ie=utf-8&src=internal_wenda_recommend_textn” \t "https://wenda.so.com/q/_blank)中被解析的先后顺序理论要清晰 | 熟练 | 工作会用 | |

| 背景颜色、背景图片与列表样式 | background-color、background-image

、list-style-type | 熟练 | 工作会用 | |

| CSS盒模型 | 盒子模型与布局 | 熟练 | 工作会用 | |

| float浮动 | float浮动属性、浮动的意义、清除浮动的方法 | 熟练 | 工作会用 | |

| background | background系列属性、css精灵 | 熟练 | 工作会用工作会用 | |

| 超级链接 | 超级链接的伪类、导航条 | 熟练 | 工作会用 | |

| DIV+CSS布局 | 浮动

、常规流式布局、定位布局 | 熟练 | 工作会用 | |

JavaScript


(学习建议必学)

| js | 基本语法 | Js类型、运算符、控制语句、数组、函数、对象、函数的使用 | 熟练 | 工作会用 |

| — | — | — | — | — |

| 流程控制 | for\ if\switch | 跟java的流程控制一样 | 工作会用 | |

| 事件绑定/触发 | 事件绑定bind和两种触发trigger 1.分开触发;2.一次性触发多个。事件冒泡和捕获 | 熟练 | 工作会用 | |

| DOM操作 | getElementById、getElementsByName、getElementsByTagName、getElementsByClassName、getAttribute、setAttribute、createElement、createAttribute、createTextNode、createAttribute、appendChild、insertBefore、removeChild、chlidren、chilidNodes、parentNode、firstChild、lastChild、nextSibling 、previousSibling、innerHTML、innerText | 熟练 | 工作会用 | |

| NAN null nudefined | NAN null nudefined区别和理论 | 熟练 | 工作会用 | |

| json | json存储和传输数据的格式 | 熟练 | 工作会用 | |

| 三种使用范围 | 内联式、外联式、外链式 | 熟练 | 工作会用 | |

| 变量、常量 | var 变量名 = 值;

const 常量名 = 值; | 熟练 | 工作会用 | |

| 数据类型 | 基本类型、复合类型 | 熟练 | 工作会用 | |

| 数组 | var myArray=new Array();

var cars=[“a”,“b”,“c”]; | 熟练 | 工作会用 | |

| string类型 | new String(s);方法

{charAt()concat()fontsize()indexOf()search()sub()substr()valueOf()toString()} | 熟练 | 工作会用 | |

| 运算符 | 乘法*、加法+、赋值=、除法/、系数%、减法-、递加++、递减– | 熟练 | 工作会用 | |

| 注释 | 单行注释以 // 开头,

多行注释以/开头以 /结尾。 | 熟练 | 工作会用 | |

| 内置函数 | confirm()\eval()\alert()

isNaN()\parsetFloat(" “) \parseInt(” ")\prompt() | 熟练 | 工作会用 | |

| 自定义函数 | function fn(){} | 熟练 | 工作会用 | |

| DOM对象 | document实操 | 看上面DOM操作 | 工作会用 | |

| BOM对象 | windows实操 | 熟练 | 工作会用 | |

| 内置对象 | window对象、下拉对象 | 熟练 | 工作会用 | |

| 原型prototype | 原型理论、原型扩展、实例化 | 熟练 | 工作会用 | |

jQuery


(学习建议必学)

| jQuery | jQuery理论 | JavaScript类库、函数入口、选择器、事件、操作DOM对象

等 | 熟悉 | 工作会用 |

| — | — | — | — | — |

| 核心函数 | jQuery(),$(“.class”) | 精通 | 工作会用 | |

| jQuery选择器 | 元素选择器\属性选择器\CSS 选择器 | 精通 | 工作会用 | |

| jQuery文档处理 | 插入append、删除empty()、删除 remove()、复制clone()、替换replaceWith()、查找eq(index)、parent()、next() | 精通 | 工作会用 | |

| jQuery事件 | 基础事件、复合事件、事件冒泡、事件对象的属性 | 熟练 | 工作会用 | |

| jQuery遍历 | ( " l i " ) . e a c h ( f u n c t i o n ( ) a l e r t ( (“li”).each(function() alert( (“li”).each(function()alert((this).text())

}); | 熟练 | 工作会用 | |

| 函数入口 | ( f u n c t i o n ( ) ) ; < b r > < b r > (function(){ });

(function());<br><br>(document).ready(function(){ }); | 精通 | 工作会用 | |

| jQuery对象 | var person = new Object();

var person = {}; | 精通 | 工作会用 | |

| 选择器 | 表单选择器、基本选择器、层次选择器、内容过滤选择器、子元素过滤选择器、表单对象属性过滤选择器 | 精通 | 工作会用 | |

| 动画效果 | 显示和隐藏、淡入和淡出、 改变元素 | 熟练 | 工作会用 | |

| 操作DOM | css-dom、操作样式、查询、操作节点、操作属性、节点遍历 | 熟练 | 工作会用 | |

| 表单验证 | | 精通 | 工作会用 | |

| 常用方法 | data(),each()

serialize(),bind() | 熟练 | 工作会用 | |

| ztree | zTree(setting, [zTreeNodes]) | 熟练 | 工作会用 | |

Ajax


(学习建议必学)

| Ajax | 理论 | XMLHttpRequest\基本AJAX方法\同步&异步\JSON转换\跨域\JSON语法 | 熟悉 | 面试会问,工作会用 |

| — | — | — | — | — |

| Get请求 | Get实操 | 精通 | 工作会用 | |

| Post请求 | Post实操 | 精通 | 工作会用 | |

| 同步和异步 | async:false;

async:true | 实操精通 | 精通 | |

| XMLHttpRequest | 实操创建XMLHttpRequest对象使用 | 熟悉 | 工作会用(偶尔) | |

| 基本AJAX方法 | jQuery.ajax();$.ajax(); | 精通 | 精通 | |

| 底层$.ajax | 这是理论知识看看文章就可以了 | 熟悉 | 学习会用 | |

| JSON语法 | {属性名:属性值,属性名:属性值…} | 精通 | 工作会用 | |

| JSON转换 | JSON.stringify(jsonObj);JSON.stringify(jsonObj);

JSON.parse(jsonStr);$.parseJSON(jsonStr);

eval(“(” + jsonStr + “)”); | 精通 | 工作会用 | |

| Ajax跨域问题 | 这是100%遇到的问题,百度相关文章学习一下 | 熟悉 | 面试会问,工作会用 | |

XML


(学习建议熟悉,学习会用。工作少不了的配置文件,减轻学习压力以熟悉为主

,这一块什么技术含量的,只要实操dom解析xml两边就会了)

| XML | 结构 | XML文档结构 | 熟悉 | 学习和框架会用 |

| — | — | — | — | — |

| 语法 | XML基本语法 | 熟练 | 学习和框架会用 | |

| 解析xml | AX,DOM,dom4j,jdom,commons-digester | 熟悉 | 学习和框架会用 | |

| 节点操作 | 实操解析两遍就会了,SelectNodes方法使用 | 熟悉 | 学习和框架会用 | |

JDBC


(学习建议必学)

| JDBC | Connection类 | 获取数据库连接 | 熟练 | 学习会用 |

| — | — | — | — | — |

| DriverManager类 | 驱动原理 | 熟练 | 学习会用 | |

| Statement类 | 学会操作和原理 | 熟练 | 学习会用 | |

| ResultSet类 | 封装 | 熟练 | 学习会用 | |

| 增删改查 | 实现CRUD的操作 | 必须精通 | 学习会用,工作会用 | |

| PreparedStatement类 | 预处理对象实现CRUD(增删改查) | 熟练 | 学习会用 | |

| JDBC事务管理 | 事务机制 | 精通 | 学习会用,工作会用 | |

| 连接池 | druid连接池,c3p0连接池 | 熟练 | 学习会用,工作会用,面试会问 | |

| JDBCTemplate的使用 | 学会使用 | 熟练 | 工作会用(偶尔) | |

| DBUtils | 利用DBUtils编写通用 DAO | 熟练 | 学习会用,工作会用(偶尔) | |

| Map封装 | Map封装一条记录_Map和List封装多条记录 | 熟练 | 学习会用,工作会用 | |

| 分页 | 分页的实现 | 熟练 | 工作会用 | |

MySQL


(学习建议必学,标注蓝色的是重点)

| MySQL | 概念 | DDL、DML、DQL、DCL数据库软件,理论熟悉 | 熟练 | 面试会问 |

| — | — | — | — | — |

| insert | 数据的添加 | 精通 | 工作会用 | |

| delete | 数据的删除 | 精通 | 工作会用 | |

| update | 数据的修改 | 精通 | 工作会用 | |

| select | 查询(含分页,分组,排序,带函数,子查询等) | 精通 | 工作会用,面试会问 | |

| 多表关系 | 一对一、一对多、多对多 | 精通 | 工作会用 | |

| 三大范式 | 1确保每列的原子性,2确保表中的每列都和主键相关,3确保每列都和主键列直接相关,而不是间接相关 | 精通 | 工作会用,面试会问 | |

| 外键 | 建表时候添加外键、动态添加外键 | 熟练 | 工作会用 | |

| 数据库备份 | mysqldump工具备份,mysqlhotcopy工具备份,表的导出和导入、mysqlbinlog恢复数据 | 熟练 | 工作会用 | |

| 事务 | {事务的基本要素:原子性、一致性、隔离性、持久性}{事务的并发问题:脏读、不可重复读、幻读} | 精通 | 工作会用 | |

| select(增) | 数据的查询,分页,排序,分组,条件,外连接,内连接等等 | 精通 | 工作会用 | |

| 存储引擎 | MyIsam,innodb | 熟练 | 面试会问,工作会用 | |

| 锁 | 行锁,表锁,页面锁 | 熟练 | 面试会问,工作会用 | |

| 配置文件 | my.cnf | 熟练 | 面试会问(偶尔),工作会用 | |

| Mysql数据类型 | 数值型、浮点型、字符串类型、时间日期类型 | 精通 | 工作会用 | |

| 特殊查询 | 子查询、联合查询、自连接查询 | 精通 | 工作会用 | |

| 约束 | 主键约束primary key\外键约束foreign key\唯一约束unique\非空约束not null\默认值default | 精通 | 工作会用 | |

| 数学函数 | Ceil(),floor(),round(),truncate(),mod(),exp(),pi() | 精通 | 工作会用 | |

| 字符串函数 | UPPER(column | str)、CONCAT(column | str1, column | str2,…)、CONCAT_WS(separator,str1,str2,…)、SUBSTR(str,pos[,len])、LENGTH(str)、REPLACE(str, from_str, to_str)、REPEAT(str, count)、FORMAT(X,D[,locale])、RIGHT(str, len)、LEFT(str, len) |

| 时间函数 | now()、sysdate()、date_format(date,format)、 time_format(time,format)、str_to_date(str,format)、makdedate(year,dayofyear)、maketime(hour,minute,second)、sec_to_time(seconds)、time_to_sec(time)等等 | 精通 | 工作会用 | |

| 注释 | #,– | 精通 | 工作会用 | |

| 数据结构及算法 | B-Tree和B+Tree | 熟悉 | 面试会问 | |

Web服务器


(学习建议必学)

| Web | HTTP协议 | 熟练 | HTTP协议 | 工作会用 |

| — | — | — | — | — |

| Tomcat服务器 | Tomcat服务器搭建 | 熟练 | 工作会用 | |

| Tomcat配置 | Tomcat配置实操 | 熟练 | 工作会用 | |

| 目录结构 | Tomcat目录结构 | 熟练 | 工作会用 | |

| Tomcat端口配置 | 百度文章 | 熟练 | 工作会用 | |

| Tomcat启动&停止 | 实操 | 熟练 | 工作会用 | |

Servlet


(学习建议必学)

| Servlet | Servlet生命周期 | 熟悉 | 熟悉 | 面试会问 |

| — | — | — | — | — |

| 配置 | Servlet的XML配置和注解配置,ServletContext,ServletConfig | 熟悉 | 工作会用(偶尔),

面试会问 | |

| 请求&响应 | javax.servlet.http.HttpServletRequest;javax.servlet.http.HttpServletResponse; | 精通 | 工作会用 | |

| Request对象和Response对象 | HttpServletRequest对象和HttpServletResponse对象的API | 熟练 | 工作会用 | |

| 重定向&转发 | 请求转发(RequestDispatcher)的过程,重定向(sendRedirect)的工作原理。 | 精通 | 工作会用 | |

| 路径问题 | 相对路径与绝对路径,完全路径匹配、目录匹配、扩展名匹配 | 精通 | 学习会用,工作会用

工作会用 | |

| Filter | Filter原理、Filter生命周期\Filter链\ Filter乱码过滤\ Filter登录过滤\Filter权限过滤 | 精通 | 学习会用,工作会用 | |

| Listener | WEB中八大监听器\Listener原理\Listener监听 | 熟练 | 学习会用,工作会用 | |

| HTTP协议 | 网络应用层协议,规定了浏览器与web服务器之间如何

通信以及数据包的结构。回去复习网络编程知识点 | 熟练 | 学习会用 | |

| Servlet程序的多种实现 | 实现Servlet接口,继承GenericServlet类, 继承HttpServlet类 | 熟练 | 学习会用 | |

| 线程安全问题 | {ServletRequest对象和Session对象是线程安全的}{ServletContext和Application对象} | 熟练 | 面试会问 | |

| 日志组件 | log4j和logback | 熟练 | 工作会用 | |

| Servlet整合JDBC | 这是实操学习找视频学 | 熟练 | 学习会用 | |

JSP


(学习建议必学)

| JSP | 理论 | JSP原理 | 熟练 | |

| — | — | — | — | — |

| JSP语法 | <% … %>

<%= … %> | 熟练 | 工作会用 | |

| 九大对象 | request\Response\config

Application\session

Exception\page

Out\pageContext | 熟练 | 工作会用(理论),面试会问 | |

| EL表达式 | EL使用\ EL取值\ EL的11大隐含对象\ EL逻辑运算\EL函数库|精通 | 工作会用 | | |

| JSTL | JSTL核心标签库(通用、选择、循环)\ JSTL核心标签库(循环、URL)\JSTL函数标签库\自定义空标签\属性标签\体标签\函数\父标签 | 精通 | 工作会用 | |

| JSP组成元素 | 静态资源、JSP脚本片段、 表达式、 JSP声明、注释、指令、动作 | 熟悉 | 学习会用 | |

| JSP标准动作 | jsp:getProperty:从JavaBean中获取一个属性值; jsp:setProperty:设置一个JavaBean中的属性值; jsp:include:在JSP页面包含一个外在文件;jsp:useBean:定义jsp页面使用一个JavaBean实例; jsp:forward:把到达的请求转发另一个页面进行处理; jsp:param:用于传递参数值; jsp:plugin:用于指定在客户浏览器中插入插件的属性;jsp:params:用于向HTML页面的插件传递参数值;jsp:fallback:指定如何处理客户端不支持插件运行的情况; | 熟悉 | 学习会用,工作会用(偶尔) | |

| 域对象 | pageContext、request、session、application | 熟练 | 工作会用 | |

| 中文乱码 | 实操常见中文乱码问题的解决方法(百度) | 熟练 | 工作会用 | |

| JSP路径问题 | 解决JSP路径问题的方法(百度文章) | 熟悉 | 工作会用 | |

| MVC模式 | (模型-视图-控制器)模式一定要理解了,不理解重新找视频学习直到理解,不理解无法进行下一个技术学习 | 精通 | 学习会用,工作会用 | |

| JSP分页 | JSP中分页的实现 | 熟悉 | 学习会用 | |

文件上传和下载


(学习建议熟悉和理解为主)

| 文件上传和下载 | 文件上传原理 | 熟悉 | 熟悉 | 学习会用 |

| — | — | — | — | — |

| commons-io&commons-fileupload | 实操 | 熟悉 | 工作会用 | |

| 文件上传参数控制 | 实操 | 熟悉 | 工作会用 | |

| 浏览器兼容性问题 | 文件下载中文乱码&浏览器兼容 | 熟悉 | 工作会用 | |

| 文件下载原理 | 百度文章熟悉一下 | 熟悉 | 学习会用 | |

| 文件下载响应头 | 实操 | 熟悉 | 工作会用 | |

| 文件下载中文乱码&浏览器兼容性 | 实操 | 熟悉 | 工作会用 | |

Maven


(学习建议熟练实操为主)

| Maven | Maven构建&自动化构建 | 实操 | 熟悉 | 熟悉 |

| — | — | — | — | — |

| 本地仓库&中央仓库 | 远程仓库、本地仓库、私服 | 熟练 | 工作会用 | |

| 常用命令 | {mvn archetype:create}{mvn archetype:generate}{mvn compile}{mvn test-compile}{mvn test}{mvn site}{mvn package}{mvn install}{mvn clean}{mvn idea:idea}{mvn -Dtest package}{mvn test-compile}{mvn jar:jar}{mvn dependency:list}{mvn deploy}{mvn clean install-U}{mvn source:jar}{mvn verify}等等 | 熟练 | 工作会用 | |

| 依赖管理 | 传递依赖发现、依赖范围、依赖关系管理、依赖冲突的解决,继承的关系,聚合的关系 | 熟练 | 工作会用,面试会问 | |

| 生命周期 | 验证、编译、测试、打包、验证、安装、部署 | 熟悉 | 面试会问 | |

| pom.xml | 熟练和实操 | 熟练 | 工作会用 | |

| 私服仓库 | 私服仓库搭建, 本地资源上传到私服,私服下载资源到本地 | 熟悉 | 工作会用 | |

| maven创建web工程 | mvn archetype:create

-DgroupId=packageName

-DartifactId=webappName

-DarchetypeArtifactId=maven-archetype-webapp | 熟悉 | 学习会用 | |

| idea下的maven使用 | 这个没啥说的就是熟练各个maven在idea上的按钮 | 熟练 | 工作会用 | |

| 继承&聚合 | 继承机制、在各个子工程中引用父工程 | 熟练 | 工作会用 | |

Mybatis


(学习建议必学)

| Mybatis | 理论 | 熟悉 | 熟悉 | 面试会问 |

| — | — | — | — | — |

| 全局配置文件 | 实操 | 熟练 | 面试会问,工作会用 | |

| Mapper文件 | sql编写,nameSpace作用域,扫描package方式 | | 面试会问,工作会用 | |

| 相关API | SqlSession

,SqlSessionFactoryBuilder,SqlSessionFactory | 熟悉 | 面试会问 | |

| 增删改查(含1:n和n:1) | Select\update\delete\insert | 精通 | 面试会问,工作会用 | |

| MyBatis结果集封装 | resultType的使用 | 精通 | 面试会问,工作会用(偶尔) | |

| 连接池 | 配置和实操 | 熟练 | 面试会问,工作会用 | |

| 事务 | 事务机制和实操 | 熟练 | 面试会问,工作会用 | |

| 动态sql | if、choose、where、trim、set、foreach、like和代码片断 | 精通 | 面试会问,工作会用 | |

| 表关系 | 一对一、一对多、多对多 | 精通 | 面试会问,工作会用 | |

| 延迟加载 | 理论知识和实际操作 | 熟练 | 面试会问,工作会用 | |

| 缓存机制 | 一二级缓存理论和实操 | 熟练 | 面试会问,工作会用 | |

| 别名 | 别名机制采用package的方式 | 精通 | 面试会问,工作会用 | |

| #{}和${} | 区别和实际应用 | 精通 | 面试会问,工作会用 | |

| 通用mapper | 通用mapper实操 | 熟练 | 工作会用 | |

| 分页插件 | PageHelper使用 | 熟练 | 工作会用 | |

| Mybatis-Plus | Mybatis-Plus实操 | 精通 | 工作会用 | |

| paramenterType | parameterType传递包装类型 | 精通 | 工作会用 | |

| ResultMap | resultMap的使用 | 精通 | 工作会用 | |

| 基于XML的CRUD | SqlMapConfig.xml配置 | 熟悉 | 工作会用 | |

| 基于注解的CRUD | MyBatis注解开发 | 精通 | 工作会用 | |

| SqlSession使用范围 | 对象SqlSessionFactory和SqlSession运用 | 熟悉 | 工作会用 | |

| 比较原始dao | mapper动态代理开发方式和原始开发比较 | 熟悉 | 工作会用 | |

| mapper配置 | resultMap、配置实现一对多关联查询 | 熟练 | 工作会用 | |

| Mybatis Plus | 主键策略和分布式id生成器、自动填充、乐观锁、分页插件、逻辑删除、性能分析插件、条件构造器 | 熟练 | 工作会用 | |

Spring


(学习建议必学)

| Spring | 理论 | 熟练 | 熟练(因为很重要) | 面试会问 |

| — | — | — | — | — |

| IOC/DI | IOC容器中Bean的生命周期方法、理解IOC控制反转和DI依赖注入的概念、 泛型依赖注入 | 熟练 | 面试会问,工作会用 | |

| 配置 | 自动装配\使用p命名空间的配置方法\scope作用域\ 使用外部属性文件\SpEL(字面量、引用Bean、属性和方法、SeEL支持的运算运算符号)、注解配置 | 熟悉 | 工作会用 | |

| AOP | 动态代理增强,AOP xlm配置,AOP 注解配置, | 精通 | 面试会问,工作会用 | |

| 声明式事务 | 声明式事务的配置 | 熟练 | 面试会问,工作会用 | |

| 集成mybatis | 实操 | 熟练 | 工作会用 | |

| 整合junit | 实操 | 熟悉 | 工作会用(偶尔) | |

SpringMVC


(学习建议必学)

| SpringMVC | 理论 | 熟悉 | 环境搭建,执行过程及原理 | 面试会问 |

| — | — | — | — | — |

| SpringMvc组件 | 熟练 | 1、前端控制器DispatcherServlet,2、处理器映射器HandlerMapping,3、处理器Handler,4、处理器适配器HandlerAdapter,5、视图解析器 View resolver,6、视图View(jsp,framemark) | 面试会问,工作排bug会用 | |

| 请求参数绑定 | 精通 | pojo类绑定,map绑定,String绑定,HttpSession绑定,HttpServletResponse绑定,HttpServletRequest绑定等等 | 工作会用,面试会问 | |

| 常用注解 | 精通 | 常用注解实操@Controller

,@RequestMapping,@Resource和@Autowired,@ModelAttribute和 @SessionAttributes,@PathVariable,@requestParam,@ResponseBody,@Repository

@Component | 工作会用,面试会问 | |

| 实操 | | 数据类型转换、数据格式化、数据校验、处理JSON,SpringMVC整合FastJSON | | |

| Restful风格 | 精通 | 实操 | 工作会用,面试会问 | |

| 实现文件上传 | 精通 | SpringMVC文件上传与下载 | 工作会用 | |

| 异常处理 | 精通 | 使用 @ ExceptionHandler 注解

实现 HandlerExceptionResolver 接口

使用 @controlleradvice 注解 | 工作会用,面试会问 | |

| SpringMvc中的拦截器 | 熟练 | 拦截器概述、自定义拦截器、

Interceptor拦截器,WebRequestInterceptor 接口,HandlerInterceptor接口 | 工作会用,面试会问 | |

| 校验框架 | 熟悉 | JSR 303、Hibernate Validator | | |

| 响应数据 | 精通 | String类型 ,void类型,ModelAndView ,forward 转发,redirect转发 | 工作会用,面试会问 | |

| SpringMvc实现异步 | 精通 | DeferredResult,Callable | 工作会用,面试会问 | |

| SpringMvc+Spring+Mybatis整合 | 精通 | SpringMvc+Spring+Mybatis整合实操 | 工作会用,面试会问 | |

SpringBoot


(学习建议必学)

| SpringBoot | 理论 | 熟悉 | 核心功能\SpringBoot的优势\依赖原理\自动配置原理\热部署\配置文件\SpringBoot缓存\SpringBoot异步任务\定时任务和邮件任务\SpringBoot安全框架 | 面试会问 |

| — | — | — | — | — |

| 自动配置 | 熟悉 | 实现自动配置原理 | 面试会问 | |

| SpringBoot

配置文件 | 熟练 | application.properties,

application.yml,

bootstrap.yml bootstrap.properties | 工作会用,面试会问 | |

| 映射方式 | 熟悉 | 映射文件方式和注解方式 | 工作会用 | |

| 事务 | 精通 | 实操@Transactional注解 | 工作会用 | |

| 实现RESTfull | 精通 | 实操Springboot开发RESTFul | 工作会用 | |

| 注册Servlet三大组件 | 熟练 | 注册Servlet\注册Filter注册Listener | 工作会用,面试会问 | |

| 热部署 | 熟练 | 使用spring提供的devtools

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

img
img

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V:vip1024b 备注Java获取(资料价值较高,非无偿)
img

最后

如果觉得本文对你有帮助的话,不妨给我点个赞,关注一下吧!

熟练 | 使用spring提供的devtools

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
[外链图片转存中…(img-Wlk6ffYf-1711559078866)]
[外链图片转存中…(img-Mj2mrOeh-1711559078867)]
[外链图片转存中…(img-d7uJuHO4-1711559078867)]
[外链图片转存中…(img-zwJquIDN-1711559078868)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

[外链图片转存中…(img-btONzoM9-1711559078868)]
[外链图片转存中…(img-r6JeVXMY-1711559078869)]

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V:vip1024b 备注Java获取(资料价值较高,非无偿)
[外链图片转存中…(img-WRrmel00-1711559078870)]

最后

如果觉得本文对你有帮助的话,不妨给我点个赞,关注一下吧!

[外链图片转存中…(img-mPiVkGZB-1711559078871)]

[外链图片转存中…(img-yvBbFRcm-1711559078872)]

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/365581
推荐阅读
相关标签
  

闽ICP备14008679号