【最新版】Java速成路线(急于找工作!)

文章目录

    • 计算机网络
      • 分层结构
      • TCP/UDP
      • HTTP/HTTPS
      • 状态码
      • Cookie 和 Session
      • URI和URL
    • 操作系统
      • 线程和进程
    • 数据结构和算法
      • 数据结构
      • 算法
    • 设计模式(23种)
      • 单例
      • 工厂
      • 代理
      • 适配器
      • 观察者
      • 模板
    • 实操工具
      • Git/SVN
      • Maven/Gradle
      • Linux基本操作
      • Nginx
      • ELK
      • postman
    • JAVA基础
      • 语言基础
      • JVM
    • 数据库(MySQL)
      • SQL基本能力:https://www.runoob.com/sql/sql-tutorial.html
      • 事务
      • 索引
      • 连接池
      • 分库分表
      • 主从
      • 读写分离
    • JavaWeb
      • html
      • css
      • js
      • ajax
      • vue
      • Servlet
    • 中间件
      • 缓存
      • 消息队列
      • 搜索引擎
    • 框架
      • Spring
      • SpringMVC
      • MyBatis
      • SpringBoot
    • 微服务/分布式
      • 理论
      • 服务发现/注册
      • 网关
      • 负载均衡
      • 服务调用
      • 熔断降级
      • 统一配置
      • 链路追踪
      • 认证、鉴权、单点登录
      • 消息总线
      • SpringCloud和dubbo的对比
    • 简历优化
      • 校招
      • 社招
    • 面试准备与技巧

计算机网络

分层结构

TCP/UDP

  • 区别
  • TCP三次握手,四次挥手

HTTP/HTTPS

  • 区别
  • 无状态
  • 长连接、短链接

状态码

Cookie 和 Session

URI和URL

操作系统

能理解最好,不理解先背

线程和进程

  • 区别
  • 状态
  • 同步
  • 死锁

数据结构和算法

数据结构

  • 数组
  • 链表
  • 队列

算法

最简单常问的几个排序查找看看、剑指offer、LeetCode热门100道

  • https://www.zhihu.com/question/24964987

设计模式(23种)

会实现

单例

工厂

代理

能看懂

适配器

观察者

模板

实操工具

这块面试中问的不多,但是如果你虚构了工作经验,这快东西不熟练会使你露馅

Git/SVN

Maven/Gradle

Linux基本操作

Nginx

ELK

postman

JAVA基础

语言基础

  • HELLOWORLD

    • JAVA特点、优点

    • 环境

      • JDK
      • JRE
      • 开发环境配置
  • 基础语法

    • 语法
    • 关键字
    • 数据类型
    • 逻辑控制语句
  • 面向对象

    • 思想

      • 细细品

      • 对象之间的关系

        • 依赖
        • 关联
        • 聚合
        • 组合
    • 原则

      • 继承
      • 封装
      • 多态
    • 四个常考关键字

      • static
      • final
      • this
      • super
    • 初始化

    • 属性和方法

      • 构造方法
      • 重载和重写
    • 向上转型、向下转型

    • 内部类

  • 接口和抽象类

    • 这是一道考烂了的题,背也要背会
  • 集合(重要)

  • 原理、特点、异同、线程安全、常用操作及其复杂度

    • 集合家谱 https://www.runoob.com/java/java-collections.html
    • 各种List
    • 各种Set
    • 各种Map
  • 注解

  • 反射

    注解和反射后续学习和工作中非常有用的东西

  • 泛型

  • I/O

  • 枚举

  • 异常

  • 多线程

    初学反反复复学不明白挺正常的,学两遍,在实战项目中找机会实践一下,还学不明白就先把这几个常见问题背下来,先上车后补票

    • 线程池

    • 并发容器

    • 原子类

    • 线程与进程

    • 并发与并行

    • 死锁

    • 生命周期和状态

    • 两个常问的关键字

      • synchronized
      • volatile

JVM

初学比较抽象,如果时间较紧,可安排在面试前突击记忆,这些内容空缺并不影响后面的学习

  • 内存模型
  • 垃圾回收
  • 类加载机制
  • 调优

数据库(MySQL)

crud工程师的基本素养,至少要把链接里面的内容看完

SQL基本能力:https://www.runoob.com/sql/sql-tutorial.html

事务

索引

连接池

分库分表

  • 为什么分?

  • 如何分?

    • 水平
    • 垂直
  • 用什么?

    • Mycat

主从

读写分离

JavaWeb

走马观花,随用随抄即可,不要在这个上面浪费时间,Servlet要学明白,为springMVC做基础,很多教程学完这些后会开启一个小实战项目,个人认为时间紧可以跳过小项目,待后面学完框架后一并实战,还有就是,跳过JSP。

html

css

js

ajax

vue

Servlet

中间件

在项目实战中边学边用,三种中间件至少选一种玩好(能聊几句原理的那种)

缓存

面试最容易问的中间件

  • redis

    • 数据类型

      • string
      • hash
      • list
      • set
      • zset
    • 基础学习:https://www.runoob.com/redis/redis-tutorial.html

    • 常见问题

      • 数据类型

      • 持久化

      • 集群

      • 通道

      • 事务

      • Redis分布式锁

        是什么?原因,如何避免

      • 缓存穿透

      • 缓存雪崩

      • 缓存击穿

消息队列

消息队列一般的业务rabbitMQ已经足够使用了,玩会一个,面试考到其他的,把话题往用过的那个上面引,可以了解一下几种MQ的异同和优缺点

  • rabbitMQ
  • rocketMQ
  • kafka

搜索引擎

  • elasticsearch(玩这个就行,考到另一个,把话题往这个上面引)
  • solr

框架

熟练运用,结合实战项目学习

Spring

  • AOP
  • IoC
  • BeanFactory
  • bean的作用域、生命周期
  • 事务隔离级别

SpringMVC

  • 工作流程图
  • DispatcherServlet
  • WebApplicationContext

MyBatis

SpringBoot

  • 启动过程、自动装配原理?

微服务/分布式

直接找一个SpringCloud全家桶教程从头跟到尾,把每个组件是做什么的弄清楚,先会用。服务发现/注册 可以认真学一下,这块容易问

理论

  • CAP
  • BASE

服务发现/注册

相同作用的,会一个就行,但是名字要记一下,最好能知道他们的区别和优缺点,面试官问到了至少知道是做什么用的,快速定位同类组件自己会的那一个,把问题接下来,聊自己会的,下同

  • Eureka(学这个就行)
  • zookeeper
  • etcd
  • Nacos
  • Consul

网关

  • Zuul
  • Gateway

负载均衡

  • Ribbon

服务调用

  • Feign

熔断降级

  • Hystrix

统一配置

  • Config
  • Nacos

链路追踪

  • Sleuth
  • zipkin
  • skywalking

认证、鉴权、单点登录

  • Shiro
  • Spring Security
  • OAuth2
  • SSO

消息总线

  • Bus

SpringCloud和dubbo的对比

简历优化

校招

  • https://www.bilibili.com/video/BV1Af4y1472Z/

社招

  • https://www.bilibili.com/video/BV1hr4y1N7hp/

面试准备与技巧

  • https://www.bilibili.com/video/BV1j44y1r7nd/

【转载来自:B站UP:不高兴就喝水】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/450794.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java Web Start实例

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 JWS让用户可以下载服务器端的Java Application到本机运行,并且没有安装、配置等繁琐的操作JWS的运行原理:浏览器…

老派程序员——徒手实现伟大成就

摘要:本文介绍了三位非常著名的程序员:Ken Thompson,Joe Armstrong 和 Jamie Zawinski,他们是如何发明一门新语言,他们开发软件时会像我们一样使用当今流行的开发工具吗?当读Peter Seibel的精彩著作《编程人生:15位软件…

互联网大厂项目研发流程

文章目录阶段一:阶段二:阶段三:阶段四:阶段五:开发人员:测试人员:设计师:阶段六:阶段七:总结:本文章学习自:https://www.bilibili.com…

centos常见错误 Failed to set locale, defaulting to C

错误描述: 当在centos中使用yum命令时,输出错误: [rootlocalhost yum.repos.d]# yum list |grep prceFailed to set locale, defaulting to C 用locale检测,出现如下提示: rootlocalhost yum.repos.d]# localelocale: …

图片上传知识点梳理

在日常项目开发中,图片上传是一个十分常见的场景。而现在的各种UI框架都提供了自己的上传组件,网上第三方的上传组件也多如牛毛。可能你早已习惯了直接使用这些现成的组件,然而对于其具体的实现,却并未深入解析。本文将通过简单的…

解决 java.lang.IllegalArgumentException: Repository interface must not be null on initialization!

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 报错:Caused by: java.lang.IllegalArgumentException: Repository interface must not be null on initialization! Cause…

【狂神说】JVM

文章目录1.JVM的位置2.JVM的体系结构3.类加载器4.双亲委派机制(重要)5.沙箱安全机制(了解)6.native(核心)7.PC寄存器(了解)8.方法区9.栈10.三种JVM11.堆(Heap)12.新生区、老年区13.永…

我们真的需要统一的编程规范?

摘要:仁者见仁智者见智,编码风格的不同,对项目也会有不同的影响,统一的编码规范有益于项目的维护。俗话说,没有规矩不成方圆,在2004年,UNIX创始人之一的Ken Arnold就发表了一篇很幽默文章&#…

百度云重磅发布ABC 3.0 尹世明如何诠释百度云的“新”打法

雷锋网9月4日消息,2018百度云智峰会正式召开,百度总裁张亚勤发表题为《新技术驱动,全面进入Cloud2.0》的演讲并表示,经历了PCClient/Server到MobileCloud 1.0,再到如今的AICloud 2.0过程,新技术推动云计算产…

EcmaScript对象克隆之谜

先谈谈深拷贝 如何在js中获得一个克隆对象,可以说是喜闻乐见的话题了。相信大家都了解引用类型与基本类型,也都知道有种叫做深拷贝的东西,传说深拷贝可以获得一个克隆对象!那么像我这样的萌新自然就去学习了一波,我们能…

开发人员眼中最好的代码编辑器是谁?

摘要:对开发人员来讲,开发工具就好比战场上的“兵器”,不同领域的开发人员他们所使用的“兵器”也不完全相同,本文从友好性、功能性、扩展等多方面总结了最受开发人员欢迎的“兵器”。你最爱的那个在这里吗? 如果我们把…

关于RESTful一些注意事项,接口开发规范

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 最近在研究restful,公司开发要使用,所以自己就去网上找了好些资料,并整理了一套公司开发的接口规范。…

【老杜】MySQL—day01

文章目录day01课堂笔记1、数据库概述及数据准备1.1、什么是数据库1.2、什么是数据库管理系统1.3、SQL概述1.4、安装MySQL数据库管理系统。1.4、MySQL数据库的完美卸载!1.5、MySQL的服务1.6、用命令来启动和关闭mysql服务1.7、登录mysql数据库2、MySQL常用命令&#…

【转载】DRuid 大数据分析之查询

转载自http://yangyangmyself.iteye.com/blog/23217591、Druid 查询概述上一节完成数据导入后,接下来讲讲Druid如何查询及统计分析导入的数据。Druid的查询是使用REST风格的HTTP请求查询服务节点(Broker、Historical、Realtime),这…

记录 Parameter with that position [1] did not exist; nested exception is java.lang.IllegalArgumentExce

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 报错如题: Parameter with that position [1] did not exist; nested exception is java.lang.IllegalArgumentException: Pa…

[转]简单的动态修改RDLC报表页边距和列宽的方法

本文转自:http://star704983.blog.163.com/blog/static/136661264201161604413204/ 1.修改页边距 XmlDocument XMLDoc new XmlDocument();XMLDoc.Load(System.Windows.Forms.Application.StartupPath "\Report_try-2.rdlc");XmlNamespaceManager xmn n…

函数式编程语言天生就慢吗?

摘要:近期,函数式编程得到了越来越多的关注,Lisp不仅重获青春还涌现出了一批新函数式编程语言。因此开发者们对函数式编程语言的运行快慢各抒己见,展开激烈讨论。本文将和大家一起讨论,函数式编程语言真的就慢吗&#…

【老杜】MySQL—day02

文章目录day02课堂笔记1、把查询结果去除重复记录【distinct】10、连接查询10.1、什么是连接查询?10.2、连接查询的分类?10.3、当两张表进行连接查询时,没有任何条件的限制会发生什么现象?10.4、怎么避免笛卡尔积现象?…

vue根据数组对象中某个唯一标识去重

由于在vue中,会自动在数组和对象中加入_obser__观察者模式的一些属性,所以直接用数组的filter去重(下面这种),indexOf不能准确识别 var arr [1, 2, 2, 3, 4, 5, 5, 6, 7, 7]; var arr2 arr.filter(function(x, index…