11张思维导图带你快速学习java

博主主页:【南鸢1.0】

本文专栏:JAVA

本文目录

简介

1.Java SE​编辑

2.Java Web

3.MySQL​编辑

4.前端技术

5.Linux

6.Spring SpringMvc mybatis

7.JVM

8.Springboot

9.Vue

10.SpringCloud

11.常用中间件

总结


简介

Java是一种跨平台的编程语言,广泛应用于开发各种类型的应用程序。从零开始学习Java可能会感到困惑,因为Java拥有广泛的功能和概念。为了更好地学习和理解Java,可以使用思维导图来整理和归纳Java的主要概念和特点。思维导图可以帮助学习者更好地理解Java,并将其各个方面组织起来,以便更容易地回顾和复习。

1.Java SE

常用工具介绍

1. IDE(集成开发环境)

  • IntelliJ IDEA:功能强大的 Java 开发工具,支持多种插件,提供智能代码提示、调试等功能。
  • Eclipse:开源的 IDE,使用广泛,拥有丰富的插件支持。

2.构建工具

  • Maven:项目管理和构建工具,使用 pom.xml 文件管理项目依赖和构建过程。
  • Gradle:现代构建工具,使用 Groovy 或 Kotlin DSL 编写构建脚本。

3.版本控制

  • Git:流行的版本控制系统,使用 GitHub进行代码托管和协作开发。

4.调试和测试

  • JUnit:常用的单元测试框架,支持编写和运行测试用例。
  • Postman:用于测试 RESTful API 的工具,方便发送 HTTP 请求并查看响应。

2.Java Web

开发环境- IDE(集成开发环境)

  • IntelliJ IDEA:功能强大、用户友好,支持多种插件和框架,提供智能代码提示和重构功能,适合 Java Web 开发。
  • Eclipse:开源的 IDE,扩展能力强,适合 Java Web 开发,拥有丰富的插件生态。

3.MySQL

1. MySQL Workbench- 功能:MySQL Workbench 是一个官方的图形化数据库设计和管理工具,提供数据库建模、SQL 开发、管理和维护功能。

  • 特点
  • 可视化数据库设计(E-R 图)。
  • SQL 查询编写和执行。
  • 数据库管理和监控。
  • 数据迁移和备份恢复功能。

2. phpMyAdmin- 功能:phpMyAdmin 是一个基于 Web 的 MySQL 数据库管理工具,适用于管理 MySQL 数据库的用户界面。

  • 特点
  • 浏览、查询和修改数据库。
  • 导入导出数据支持多种格式(如 CSV、SQL 等)。
  • 管理用户权限与账户。
    -轻松创建和修改表结构。

3. MySQL Shell- 功能:MySQL Shell 是一种强大的命令行工具,支持 SQL、JavaScript 和 Python 三种编程语言进行交互操作。

  • 特点
  • 支持高级功能,如 JSON 支持、并行查询等。
    -适合自动化和脚本化操作。
  • 支持与 MySQL服务器的高效交互。

4. Navicat for MySQL- 功能:Navicat 是一款流行的数据库管理工具,支持多种数据库,包括 MySQL。

  • 特点
  • 提供直观的用户界面,方便数据库设计与管理。
  • 支持多种数据建模和报表生成功能。
    -备份与恢复、数据同步和转移功能。

5. DBeaver- 功能:DBeaver 是一个开源的通用数据库管理工具,支持 MySQL 和其他多种数据库。

  • 特点
  • 提供数据浏览和编辑功能。
  • 支持 SQL 编辑器、数据库连接和数据导入导出。
  • 用户可扩展插件。

6. HeidiSQL- 功能:HeidiSQL 是一个轻量级的开源数据库管理工具,主要用于 MySQL 和 MariaDB。

  • 特点
  • 用户友好的界面,适合快速浏览和操作。
  • 支持多种数据导入导出格式。
  • 提供会话管理,方便管理多个连接。

7. MySQL Utilities- 功能:MySQL Utilities 是一组命令行工具,用于执行各类数据库管理和维护任务,如备份、恢复和复制。

  • 特点
  • 支持数据库备份与恢复、用户权限管理等。
  • 支持数据同步和复制管理。
  • 可以与 MySQL Server 脚本结合使用。

8. Percona Toolkit- 功能:Percona Toolkit 是一组高级的命令行工具,用于 MySQL 数据库性能监控和管理。

  • 特点
  • 提供性能分析、数据验证和查询优化功能。
  • 支持复制和备份管理。
    -适合大规模数据库的管理。

9. MySQL Enterprise Monitor- 功能:MySQL Enterprise Monitor 是一个商业产品,用于实时监控 MySQL 数据库性能。

  • 特点
  • 提供性能监控、告警和报告功能。
  • 支持自动化的健康检查和问题诊断。
  • 集成 MySQL 支持服务。

10. SQLyog- 功能:SQLyog 是一个强大的 MySQL 管理工具,提供全面的数据库管理功能。

  • 特点
  • 支持数据同步、备份和恢复。
  • 用户友好的界面,支持可视化查询生成。
    -连接管理,方便管理多个 MySQL 实例。

4.前端技术

所用到:Visual Studio Code

5.Linux

所用工具:WindTerm、XShell 、WindTerm

6.Spring SpringMvc mybatis

常用配置与工具#### Spring Tool Suite (STS)

  • IDE:基于 Eclipse 的 IDE,专为 Spring 应用开发提供支持,包括自动补全、项目监视和调试功能。

MyBatis Generator- 工具:自动生成 MyBatis 的 XML 配置和 Java 实体类,简化数据访问层的开发。

Spring Boot- 简化的 Spring 开发:提供快速启动项目的功能,将 Spring 和相关组件高度集成,简化配置。

Lombok- 工具:简化 Java 类的代码,通过注解自动生成常用代码(如 getter、setter、构造函数等),减少样板代码。

Logback/Log4j- 日志框架:用于实现应用程序的日志记录与管理,帮助开发者进行问题排查与性能分析。

监控与测试工具- Spring Actuator:提供运行时监控和管理功能,支持健康检查、指标收集等。

  • JUnit:用于单元测试,与 Spring MVC 和 MyBatis 配合使用,进行自动化测试。

  • Mockito:用于模拟对象,为测试提供依赖的虚拟对象。

  • Postman:用于 REST API 测试,支持发送请求并查看响应数据。

7.JVM

8.Springboot

1. 开发环境- IDE(集成开发环境)

  • IntelliJ IDEA:功能强大、用户友好,支持多种插件和框架,提供智能代码提示和重构功能,适合 Java Web 开发。
  • Eclipse:开源的 IDE,扩展能力强,适合 Java Web 开发,拥有丰富的插件生态。
  • NetBeans:另一个开源 IDE,简单易用,适合 Java EE 开发,有很好的支持。

2. Web 框架- Spring Framework:一个全面的企业级应用程序开发框架,提供了IOC(控制反转)和AOP(面向切面编程),使得开发更加模块化和可维护。

  • Spring Boot:基于 Spring 的快速开发框架,提供开箱即用的配置和自动化特性,极大地简化了 Java Web 应用的开发和部署。
  • JavaServer Faces (JSF):Oracle 提供的一个用于构建基于组件的用户界面的框架,适合大规模、复杂的企业应用。

3. 持久层框架- Hibernate:专业的 ORM(对象关系映射)框架,帮助开发者将 Java 对象与数据库表映射,简化数据库操作。

  • MyBatis:一个灵活的持久层框架,允许开发者使用原生 SQL语句,并提供 SQL 映射功能。

4. Web服务器- Apache Tomcat:最常用的开源 Servlet 容器,支持 JSP 和 Servlet规范,用于运行 Java Web 应用。

  • Jetty:轻量级的 HTTP服务器和 Servlet 容器,适合嵌入式应用和微服务架构。

5. 构建和依赖管理工具- Maven:功能强大的项目管理与构建工具,通过 pom.xml 文件管理依赖和构建过程,适合标准化 Java 项目。

  • Gradle:现代构建工具,支持 Groovy 和 Kotlin DSL,提供灵活的构建脚本和高效的增量构建。

6. 测试工具- JUnit:广泛使用的单元测试框架,帮助开发者编写和管理测试用例。

  • Mockito:流行的模拟对象框架,用于创建和管理测试中的依赖模拟。
  • Selenium:用于自动化测试 Web 应用的框架,可以模拟用户操作进行功能测试。

7. API 测试工具- Postman:用于测试和调试 RESTful API 的工具,提供图形化界面发送 HTTP 请求,查看响应。

  • Swagger:用于生成 API 文档的工具,同时支持交互式 API 测试,便于开发和调试。

###8.版本控制- Git:流行的分布式版本控制系统,支持团队协作,利用 GitHub、GitLab 等平台进行代码托管。
9.其他工具- Lombok:Java 库,通过注解减少样板代码,自动生成 getter、setter、构造器等,提升代码简洁性。

  • Apache Commons:一系列常用的库和工具类,提供许多开发过程中用到的常见方法和功能。

###10. 日志工具- Log4j:用于 Java 应用程序的日志框架,允许开发者以不同的方式和格式记录日志。

  • SLF4J:简单日志门面,为 Java 提供统一的日志 API,能够与多种日志框架兼容。

9.Vue

1. 开发工具- Vue CLI:官方提供的脚手架工具,可以快速生成 Vue.js 项目,支持插件、脚手架和集成开发环境,简化项目初始化和配置。

  • Vue Devtools:浏览器扩展(支持 Chrome 和 Firefox),用于调试 Vue.js 应用,提供观察组件状态、事件、路由和状态管理等功能。

2. 路由管理- Vue Router:官方提供的路由管理库,允许开发者在 Vue 应用中进行单页应用(SPA)路由设置,支持动态路由、嵌套路由和路由守卫等功能。

###3. 状态管理- Vuex:官方提供的状态管理库,专注于集中式管理 Vue.js 应用中的状态,适合中大型应用,通过 store 管理组件间的共享状态。

###4. UI 库- Vuetify:基于 Material Design 的 Vue.js组件库,提供多种现成的组件,帮助快速构建美观的用户界面。

  • Element UI:一款为开发者、设计师和产品经理设计的桌面端组件库,提供丰富的组件和设计规范,适合后台管理系统。

  • BootstrapVue:将 Bootstrap4 的组件和样式带到 Vue.js 中,使开发者能够使用 Bootstrap 样式和布局。

5. 表单处理- VeeValidate:表单验证库,支持简单和复杂的验证场景,提供用户友好的错误提示和反馈。

  • Vue Formulate:一个强大的表单库,提供简单易用的 API 和多种自定义组件,以及验证和布局支持。

6. 动画和过渡效果- Vue Transition:Vue.js 内置的过渡效果组件,帮助开发者轻松地在添加、删除和状态变化时实现过渡效果。

  • GSAP:强大的动画库,支持复杂动画,适合需要高级动画效果的 Vue.js 应用。

7. 测试工具- Vue Test Utils:官方的 Vue.js 单元测试实用工具,配合 Jest 或 Mocha 可以编写和运行组件测试。

  • Cypress:流行的端到端测试框架,支持现代 Web 应用的自动化测试,可以与 Vue 应用无缝集成。

8. 集成与构建工具- Webpack:模块打包工具,常与 Vue.js 项目一起使用,支持现代 JavaScript 特性、热重载、代码分割等。

  • Vite:一种新型的前端构建工具,提供快速的开发体验,支持 Vue3 的单文件组件热重载。

9. HTTP 请求库- Axios:基于 Promise 的 HTTP 客户端,常用于与后端 API进行交互,支持请求和响应拦截、请求取消等功能。

10. 国际化支持- vue-i18n:国际化插件,支持多语言翻译,适合需要多语言支持的 Vue 应用。

11. 部署和监控工具- NetlifyVercel:现代的前端应用托管平台,支持快速部署 Vue 应用,自动进行 CI/CD 流程。

  • Sentry:错误监控工具,可以集成到 Vue 应用中,用于捕捉和报告运行时错误,使开发者能够及时修复问题。

10.SpringCloud

1. Spring Cloud Config- 作用:提供集中化的配置管理解决方案,支持从 Git 仓库、文件系统或其他地方加载配置。

  • 功能:动态刷新配置、配置版本管理、保护敏感信息(如密码)等。

2. Spring Cloud Netflix- 作用:一系列的 Netflix OSS组件集成,支持服务发现、负载均衡、断路器等功能。

  • 关键组件
  • Eureka:提供服务注册与发现的功能,服务实例通过 Eureka 注册,并可以调用其他服务。
  • Ribbon:客户端负载均衡器,自动选择可用的服务实例。
  • Hystrix:实现断路器模式,保护服务不受故障传播,提供容错处理。
  • Zuul:API 网关,负责路由请求到相应的微服务,并提供动态路由、负载均衡和安全功能。

3. Spring Cloud OpenFeign- 作用:声明式的 HTTP 客户端,基于 Feign,简化服务间的 HTTP 调用。

  • 功能:通过注解定义接口,自动实现 HTTP 请求,支持负载均衡和熔断。

4. Spring Cloud Gateway- 作用:用于构建 API 网关,是 Zuul 的替代品,提供功能更强大和现代化的路由。

  • 功能:支持动态路由、过滤器、限流、熔断等功能。

5. Spring Cloud Sleuth- 作用:用于分布式跟踪,集成 Zipkin 或其他跟踪系统,帮助追踪请求在微服务间的流转。

  • 功能:自动为请求生成唯一 ID,便于日志追踪和性能分析。

6. Spring Cloud Stream- 作用:用于构建消息驱动的微服务架构,支持多种消息中间件(如 Kafka、RabbitMQ 等)。

  • 功能:通过简化的编程模型,支持事件驱动、发布/订阅和消息处理。

7. Spring Cloud Bus- 作用:在分布式系统内传播状态变化,支持广播消息和集成事件。

  • 功能:在多个服务间传播配置或状态变更,结合 Spring Cloud Config 使用。

8. Spring Cloud Contract- 作用:支持消费者驱动的合约测试,确保微服务之间的契约的一致性。

  • 功能:通过定义合约,生成测试代码,实现服务间 API 的可靠性验证。

9. Spring Cloud Data Flow- 作用:用于构建和管理数据流和任务处理应用。

  • 功能:提供可视化的界面来管理数据流、任务调度和执行。

10. Spring Cloud Kubernetes- 作用:为 Kubernetes 环境提供支持,实现服务发现、配置管理、负载均衡等功能。

  • 功能:结合 Kubernetes 的特性,简化微服务在 Kubernetes 环境的部署和管理。

11.常用中间件

总结

学习Java需要掌握的内容较多,但是通过思维导图可以将这些内容进行组织和归纳,帮助学习者更好地理解和掌握Java的知识。思维导图可以帮助学习者更清晰地了解Java的各个方面,并将其融会贯通,形成一个整体的认知。同时,思维导图也可以帮助学习者更好地进行复习和回顾,将学习的知识和概念整理出来,以便更好地记忆和应用。总之,使用思维导图可以提高学习效率,帮助学习者更好地学习和理解Java。

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

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

相关文章

Jmeter基础篇(22)服务器性能监测工具Nmon的使用

一、前言 我们在日常做压测的过程中,不仅仅需要监控TPS,响应时间,报错率等这些系统基础性能数据,还需要对服务器的性能(如CPU、磁盘、内存、网络IO等)做监控,以求对系统运行过程中的硬件性能有…

Unity3D学习FPS游戏(12)敌人检测和攻击玩家

前言:上一篇实现了敌人能动,有了点乐趣,但是敌人和玩家没什么对抗性。本篇将实现敌人追击玩家,并攻击玩家。 敌人攻击玩家 敌人检测玩家目标思路-碰撞检测的Trigger触发实现 敌人攻击目标思路-模仿玩家发射子弹的思路实现 效果 敌…

利用滑动窗口解题

目录 前言: 第一题:209. 长度最小的子数组 - 力扣(LeetCode) 第二题:1004. 最大连续1的个数 III - 力扣(LeetCode) 第三题:3. 无重复字符的最长子串 - 力扣(LeetCode&…

车载空气净化器语音芯片方案

开发背景: 随着人们生活质量的不断提升和环保意识的日益增强,车内空气质量成为了广大车主关注的焦点。长时间封闭的车厢环境,加之城市空气污染、新车内饰材料释放的有害气体等因素,使得车内空气质量往往不尽如人意,严重…

《MYSQL45讲》误删数据怎么办

对误删数据分类的话,有 1.delete 误删行 2.drop table 或者truncate table 语句误删表 3.使用drop database 误删数据库 4.使用rm命令误删整个MYSQL实例 一,误删行 一下操作前置条件是:binlog的格式是row,并且binglog_row_im…

不对称信息

你买了一辆二手车,你并不知道它出过几次事故,但它之前的车主却对此了如指掌。来买保险的公司都是那些出险概率很大的(比如矿工、化工厂),但那些安全的公司很少去买保险,这两种问题都属于信息不对称问题。 …

94个属于一区且接受医工交叉领域投稿的期刊汇总|个人观点·24-11-13

小罗碎碎念 继汇总病理AI的基础模型、病理组学&影像组学的公开数据集以后,我们再来盘一盘医工交叉领域有哪些热门期刊可以投稿。我会分区进行介绍,每个区则会进一步划分学科种类,方便大家选择适合自己的投稿期刊。 这期推文先分享大类属…

网站小程序app怎么查有没有备案?

网站小程序app怎么查有没有备案?只需要官方一个网址就可以,工信部备案查询官网地址有且只有一个,百度搜索 "ICP备案查询" 找到官方gov.cn网站即可查询! 注:网站小程序app备案查询,可通过输入单位…

MySQL45讲 第二十讲 幻读是什么,幻读有什么问题?

文章目录 MySQL45讲 第二十讲 幻读是什么,幻读有什么问题?一、幻读的定义二、幻读带来的问题(一)语义问题(二)数据一致性问题 三、InnoDB 解决幻读的方法四、总结 MySQL45讲 第二十讲 幻读是什么&#xff0…

FatLab:我的编程课程系列

FatLab 是一款教程类软件。 大概是因为我的编程生涯始于自学,FatLab便也保持了这种气息:从一个“自然生长”的角度提供了一套C语言教程。 教程方面,目前仅完成了《C语言基础要素》系列。正如其名,这个系列仅探讨了语言中非常基础…

冗余连接2 hard题 代随C#写法

此题在卡码网109与力扣685题亦有记载 有一说一C#写法我没咋搞懂 就看明白了思路 这里贴一个答案待后续我醒悟了再来看罢 难就难在对整体数据结构classUnion(并查集)的理解不熟并且 对于输入输出这个迭代过程理解上也比较吃力 109. 冗余连接II 题…

【QT】QSS

个人主页~ 一、QSS QSS可以说是拿了CSS的一部分过来用,是CSS的简化版本 1、基本语法 选择器 {属性名:属性值; }将界面上所有的QPushButton文本颜色都改为红色 QPushButton {color:red; }2、设置方式 (1)指定控件样式设置 在widget.cpp中…

java模拟键盘实现selenium上下左右键 table中的左右滚动条实现滚动

在这篇文章中,我们将学习如何使用Java编程语言模拟键盘输入,特别是模拟上下左右方向键的操作。这是一个很有趣的项目,尤其适合刚入行的开发者。我们将分步进行,接下来,我们会通过表格展示整个实现过程,然后…

JQuery封装的ajax

1. 注意&#xff1a; 首先要导jq的包json对象可以用 . 来调用keyjava只能给前端传页面&#xff0c;或者打印的内容String jsonstr json.toJSONString(resultJSON); //将对象转为JSON对象 Json格式和参数解释&#xff1a; <script src"js/jquery-1.10.2.min.js&quo…

文献解读-DNAscope: High accuracy small variant calling using machine learning

关键词&#xff1a;基准与方法研究&#xff1b;基因测序&#xff1b;变异检测&#xff1b; 文献简介 标题&#xff08;英文&#xff09;&#xff1a;DNAscope: High accuracy small variant calling using machine learning标题&#xff08;中文&#xff09;&#xff1a;DNAsc…

vue中如何关闭eslint检测?

ESLint作为一个用于JavaScript代码的验证工具&#xff0c;主要用于检查代码语法和编码规范。本文旨在指导那些希望在Vue.js项目中禁用ESLint验证功能的用户。对于需要这一操作的朋友&#xff0c;以下内容将提供参考。 vue中如何关闭eslint检测&#xff1f; 有了eslint的校验&…

用vscode编写verilog时,如何有信号定义提示、信号定义跳转(go to definition)、模块跳转这些功能

&#xff08;一&#xff09;安装插件SystemVerilog - Language Support 安装一个vscode插件即可&#xff0c;插件叫SystemVerilog - Language Support。虽然说另一个插件“Verilog-HDL/SystemVerilog/Bluespec SystemVerilog”也有信号提示及定义跳转功能&#xff0c;但它只能提…

️️一篇快速上手 AJAX 异步前后端交互

AJAX 1. AJAX1.1 AJAX 简介1.2 AJAX 优缺点1.3 AJAX 前后端准备1.4 AJAX 请求基本操作1.5 AJAX 发送 POST 请求1.6 设置请求头1.7 响应 JSON 数据1.8 AJAX 请求超时与网络异常处理1.9 取消请求1.10 Fetch 发送 Ajax 请求 2. jQuery-Ajax2.1 jQuery 发送 Ajax 请求&#xff08;G…

❤React-React 组件通讯

❤ React 组件通讯 组件通讯将教我们的内容&#xff1a; 能够使用道具接收数据W能够实现父子组件之间的通讯能够实现兄弟组件之间的通讯能够给组件添加道具校验能够说出生命周期常用的钩子函数能够知道高阶组件的作用 1、 组件通讯介绍 组件是独立且封闭的单元&#xff0c;…

【初阶数据结构与算法】链表刷题之移除链表元素、反转链表、找中间节点、合并有序链表、链表的回文结构

文章目录 一、移除链表元素思路一思路二 二、合并两个有序链表思路&#xff1a;优化&#xff1a; 三、反转链表思路一思路二 四、链表的中间节点思路一思路二 五、综合应用之链表的回文结构思路一&#xff1a;思路二&#xff1a; 一、移除链表元素 题目链接&#xff1a;https:…