自学Java半年多,我掌握了这些技术!!!

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: 自学Java半年多,我掌握了这些技术!!!

1.写在前面


今天是20211024日,在这里呢,首先祝天下万千程序员节日快乐啦!!!希望今天的程序员可以更加轻松、没有加班,同时也希望万千程序员的代码没有bugem....你在说屁呢???)。哈哈哈,张起灵再次祝——全世界——程序猿/——节日——快乐!!!😄😄😄

2.这一年感谢有了你们!!!


好了,下面我们言归正传,来聊聊这篇文章想和大家分享点什么。


首先呢,走到20211024日,回顾2021这一路走来,自己成长了很多、进步了很多、学到了很多。从今年2月份开始学习Java在企业中热门的技术,到现在不知不觉已经半年多了(大概就7个多月吧。。。),在这段时间中,我在学到Spring AOP的时候有想过放弃、在学Docker的时候心比较乱、在学Spring Cloud的时候感觉整个就学废了。。。唉,但是回过头想想,既然坚持要走这个方向(计算机👉 IT编程👉软件开发👉 Java后端),就不要那么轻易的去放弃,你以为刚上来月薪过万是很容易的嘛?


真的要去坚持、要敢于去拼去战斗,毕竟易大师说过:集中起来的意志可以击穿顽石;宝石骑士也告诫我们:我曾踏足山巅、也曾跌落低谷,二者都使我受益良多。在我想要放弃、要退缩的时候,为了平复心态、改变自己,就会去打打LOL、选择了这些英雄听到了他们的台词,内心真的被触动了。还有就是,每当我发布了一篇新的文章,都会有一定的浏览量、也会有很多朋友关注我、为我点赞、收藏我的文章,我想我的文章或许能够帮到你们学习Java中的一些技术,同时你们的关注点赞则是对我的肯定和鼓励!!!这里真的由衷的感谢你们💖💖💖、由衷的感谢你们💖💖💖、由衷的感谢你们💖💖💖

3.学到了什么?


上面说说说,,,说的有点煽情了,看不下去的朋友们估计已经点了返回了,哈哈哈。。。下面我就给大家分享一下我这半年多都学到了Java中哪些知识!!!


·       在此之前,大家要有数据库的知识储备,因为Java中操作数据库太频繁了,一般来说就是MySQL啦!!!这里你肯定要掌握CRUD的编写方式、连接数据库、建库建表、连接查询、字符集设定等等,关于这个,大家可以参考我的这个分类专栏:张起灵学MySQL

·       然后大家就可以学JavaSE了,这个就是Java的标准版(Java数据类型、OOP三大特性、抽象类、接口、常用APIString、泛型/集合、I/O流、内部类、JDBC、多线程、反射等等),学好这部分,走下面的阶段会更加的稳固,关于这个,大家可以参考我的这个分类专栏:张起灵学JavaSE

·       这个时候推荐大家可以去学一下Web前端三兄弟:HTMLCSSJavaScript,因为到后面是少不了写前端代码、和前端页面做整合的。关于这个,大家可以参考我的这个分类专栏:张起灵学HTML/CSS/JavaScript

·       搞定了JavaSE,下面要学一个东西叫JavaWeb,它其中主要就是Servletrequest/response请求响应对象、重定向/请求转发、监听器、过滤器、JSPAjaxjQueryMVC等等,这部分其实是为后面的框架学习打基础的,关于这个,大家可以参考我的这个分类专栏:张起灵学JavaWeb

·       学完JavaWeb之后,我们都知道当下比较火的一个东西叫框架,而框架其实可以说是在JavaWeb开发繁琐、不便的情况下,又做了新的、更强大的整合,但是在学框架之前,我们要先学另外一个东西:Maven,它是一个项目管理工具(管理jar包、管理依赖版本号等),能够帮助我们更快速搭建项目整体架构,关于这个,大家可以参考我的这个分类专栏:张起灵学Maven

·       拿下Maven之后,下面就开启框架之旅了,我们都知道很早以前有一个牛逼的框架组合体叫SSHSpring + Struts + Hibernate),具体的我也没详细了解,只是听说目前企业里基本不用了,用的更多的就是SSMSpringBootSpringCloud这些,那么在Maven之后要学的就是SSMSpring + SpringMVC + MyBatis)了,它们分别对应了JavaEE开发中的三层架构:业务逻辑层、界面/视图层、持久层。关于这三块内容,大家可以参考我的这几个分类专栏张起灵学MyBatis张起灵学Spring张起灵学SpringMVC

·       SSM完结之后,按理说应该走向分布式、微服务了,但是在此之前,我觉得应该先学两个东西:LinuxGit,随着我们学的东西越来越多、开启的服务也会越来越多,这些服务如果都部署在Windows端就会造成压力过大、性能堪忧、效率低下等问题,那么我们能不能考虑将一些服务部署(RedisRabbitMQNginx等等)在另一个操作系统中呢?答案是肯定的,首先其实就是Linux了。而Git则是一个分布式的代码管理工具、做版本控制、是一个代码托管中心,到了这个阶段,我们要知道随着代码量的不断增多,能不能想个办法将其放在某个远程服务器上,当我们用的时候将它拿过来、更新的时候也对远程同步、不用的时候就放在那里,解决此问题的就是Git了。关于这两块内容,大家可以参考我的这几个分类专栏:张起灵学Linux张起灵学Git

·       铺垫完成,开启SpringBootSpringBoot为简化开发而生、一个快速构建Spring项目的脚手架,去除大量xml繁杂配置、减少过多的Maven依赖、自动装配、起步依赖、集成RedisRabbitMQ等热门技术,这些都说明了SpringBoot的王者地位。关于这个,大家可以参考我的这个分类专栏:张起灵学SpringBoot

·       搞定了MavenGitLinuxSpringBoot这些,可以说我们彻底跨进了分布式、微服务的大门,入坑可就别想出去咯(嘻嘻嘻)。下面就可以学一个热门、重要且牛逼的技术——RedisNoSQL、缓存中间件),Redis可以说无所不能、项目中离不开它,其中包括数据类型、事务机制、持久化、集群配置、缓存问题、分布式锁等等。关于这个,大家可以参考我的这个分类专栏:张起灵学Redis

·       Redis之后,再来一个重要且牛逼的技术——RabbitMQ(消息队列、消息中间件),常用来实现异步处理、应用解耦、流量削峰,其中包括核心概念(交换机、队列、BindingRoutingKey、生产者、消费者、事务机制、死信队列、延迟队列、集群部署等等)。关于这个,大家可以参考我的这个分类专栏:张起灵学RabbitMQ

·       然后呢,可以再来学一个高性能的Web服务器——Nginx,这个东东是可以帮助Tomcat减轻压力的,它是一个反向代理服务器,可以做到负载均衡、请求转发、动静分离、集群部署等等。关于这个,大家可以参考我的这个分类专栏张起灵学Nginx

·       这个时候,我们可以学一下MyBatis的兄弟:MyBatis-PlusMyBatis-Plus就是在MyBatis上只做增强、不做改变,为简化而生、为提高效率而生,减少了xml的映射文件的编写,甚至可以达到不用编写xml就可以实现CRUD操作,很是方便,极大的提高了开发效率。关于这个,大家可以参考我的这个分类专栏:张起灵学MyBatis-Plus

·       到了这里,大家可以去学SpringCloud了,这个玩意其实就是分布式、微服务的一站式解决方案,其中由多个组件构成(Feign服务接口调用、Hystrix服务降级/熔断、Gateway服务网关、Nacos服务注册/配置中心等等)。关于这个,大家可以参考我的这个分类专栏:张起灵学SpringCloud

·       我在学完SpringCloud之后,又学了两个东西(说实话,学到这里真的已经懵逼了,,,不知道自己学了点啥):DockerElasticsearchDocker就是解决了运行环境和配置问题的软件容器,方便做持续集成并有助于整体发布的容器虚拟化技术。(一次构建、随处运行);而Elasticsearch是一个开源的高扩展的分布式全文搜索引擎,能够安全可靠地获取任何来源、任何格式的数据,然后实时地对数据进行搜索、分析和可视化。关于这两块内容,大家可以参考我的这几个分类专栏:张起灵学Docker张起灵学Elasticsearch

·       然后呢如果说还能肝,大家可以顺带着学学JUCJVW、数据结构与算法这些进阶大厂的技术,反正我真的已经。。。(大家懂我意思吧?),关于JUC入门内容,大家可以参考我的这几个分类专栏:张起灵学JUC

·       学的多,忘的多,懵逼的更多(真的是懵逼树上懵逼果,懵逼树下Java和我,但问题是Java好好的,我懵逼了啊。。。),到这里也就接近尾声了,我也要着手准备面试/笔试了,时间过的真的好快,大家不知不觉中都已成了大牛级别的任务,而我却还在原地踏步、不知道自己学了点啥。那么关于Java面试这块内容,大家可以参考我的这个分类专栏:张起灵学Java面试

4.完结撒花~~~


张起灵最后再说一句:1024程序员节,属于我和未来的你!!!

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
11天前
|
监控 Java 物联网
Java串口通信技术探究1:深入理解RXTX库
Java串口通信技术探究1:深入理解RXTX库
25 2
|
4天前
|
Kubernetes Java 调度
Java容器技术:Docker与Kubernetes
Java容器技术:Docker与Kubernetes
16 0
|
4天前
|
存储 安全 Java
深入理解Java字节码与反编译技术
深入理解Java字节码与反编译技术
13 0
|
5天前
|
监控 Java Maven
揭秘Java Agent技术:解锁Java工具开发的新境界
作为JDK提供的关键机制,Java Agent技术不仅为Java工具的开发者提供了一个强大的框架,还为性能监控、故障诊断和动态代码修改等领域带来了革命性的变革。本文旨在全面解析Java Agent技术的应用场景以及实现方式,特别是静态加载模式和动态加载模式这两种关键模式。
26 0
|
11天前
|
存储 缓存 前端开发
Java串口通信技术探究3:RXTX库线程 优化系统性能的SerialPortEventListener类
Java串口通信技术探究3:RXTX库线程 优化系统性能的SerialPortEventListener类
36 3
|
11天前
|
安全 IDE Java
Java串口通信技术探究2:RXTX库单例测试及应用
Java串口通信技术探究2:RXTX库单例测试及应用
27 4
|
11天前
|
存储 前端开发 安全
13:会话跟踪技术Session的深度应用与实践-Java Web
13:会话跟踪技术Session的深度应用与实践-Java Web
25 3
|
11天前
|
存储 前端开发 搜索推荐
12:会话跟踪技术Cookie的深度应用与实践-Java Web
12:会话跟踪技术Cookie的深度应用与实践-Java Web
24 4
|
12天前
|
供应链 Java API
Java 8新特性解析及应用区块链技术在供应链管理中的应用与挑战
【4月更文挑战第30天】本文将深入探讨Java 8的新特性,包括Lambda表达式、Stream API和Optional类等。通过对这些新特性的详细解析和应用实例,帮助读者更好地理解和掌握Java 8的新技术。
|
13天前
|
存储 安全 Java
【亮剑】`ConcurrentHashMap`是Java中线程安全的哈希表,采用锁定分离技术提高并发性能
【4月更文挑战第30天】`ConcurrentHashMap`是Java中线程安全的哈希表,采用锁定分离技术提高并发性能。数据被分割成多个Segment,每个拥有独立锁,允许多线程并发访问不同Segment。当写操作发生时,计算键的哈希值定位Segment并获取其锁;读操作通常无需锁定。内部会根据负载动态调整Segment,减少锁竞争。虽然使用不公平锁,但Java 8及以上版本提供了公平锁选项。理解其工作原理对开发高性能并发应用至关重要。