普通二本院校计算机专业应届生,我来分享java后端开发的自学java经历
当我找到实习的时候,就决定要把自己的经验分享给大家。我会分享一下自己的真实经验。当然了,以下内容仅代表我的个人看法,如有不完善的地方还请见谅。接下来我就以下几个方面进行讲解。下面是兴哥的一位粉丝朋友的经历。
1.自我介绍
首先呢,我先介绍一下我的自身情况。我目前是河南某二本院校计算机科学与技术专业的大四学生,自学Java,准备走Java后端开发方向。现在,是杭州某科技公司的一名实习生。
2.我是什么时间开始决定走Java方向的
开始的比较晚,我是大三下学期才决定要走Java开发方向。也可以说是到了大三下学期才开始真正的学习计算机相关的知识。前面两年半的时间啊,体验了大学生活,体验了玩的乐趣。然后到大三下学期就开始焦虑,因为自己也不愿意考研又什么都不会,未来到底要干什么,成了我不得不考虑的问题。这又是一个普通的二本,也没啥特别突出的能力。思来想去呢,还是得走自己的专业相关的行业,可是这不是说我想走一下就能走成呗。尽管像多数人一样,我一直幻想着自己是天选之子。以前呢学校课上的学习,也只是让我稍微了解了编程是干什么的,因为前两年兴趣也不大,对这行了解的挺少的。所以,当我决定要成为一名程序员的时候,就开始打听程序员都有什么方向,使用的都有什么语言。慢慢的了解的多了,综合多方面考虑最终选择了Java方向。
3.我在找到实习前花了多长时间学习
前前后后从我开始学习到找到实习,如果按实际日期来算的话,得有个大半年的时间。但其实呢,中间啊我有相当多的时间不想学,偷懒实际呢学习时长前前后后加起来可能也就3-4个月的时间吧。这是换算成每天有效学习6到8个小时来说的。我当时最开始每天的有效时长可能也就2到3个小时,有时候上上课跟室友玩玩游戏打打球,一天可能就学1到2个小时,甚至有时候0个小时。
4.这期间我都学了哪些东西
这也是小伙伴们最关心的点了。我是先从Java基础也就是Java SE开始学的,这也是我花了很多的时间学习的地方。从大三下学期开始到结束,我还没看完这部分的视频,可以说呢是极其慢的。这部分内容呢,我觉得正常不要超过2个月,因为后面呢还可以慢慢巩固。像我这种断断续续血淋淋的情况,万万不可取。接着呢我学了MySQL的基础部分,也就是大家经常所说的增删改查,像索引、优化等数据库高阶部分的知识。我也是这几天在办公室偷偷摸鱼的时候看了一眼。还记得当时面试的时候,问到一些关于MySQL如何优化的问题。当时呢,我只能非常没有底气地说了一句“这方面我还没怎么了解”。接着呢我学习了Git、Docker、C语言等家务外部的一些知识。学家外部的时候呢已经是暑假了,当然觉得这部分很琐碎,所以就草草学过,以至于后期学习的时候呢遇到很多麻烦。所以呢还是建议小伙伴们呢,如果有时间的话,学外部部分时,特别是Socket,学的时候一定要认真。后面的框架会用到。
嗯,匆匆学完Java吧。之后呢,我就开设经典Java三部曲的FSM的学习,也就是Spring、Spring MVC、MyBatis。在这里呢,我以个人经验建议小伙伴们可以先学一下MyBatis,然后学MyBatis,然后学Spring,最后学Spring MVC。学完这些之后呢,我跟着B站做一个非常简单的整合SSM的商城框架,然后背背面试题,优化优化简历。其实简历上啥都不敢写,因为怕问到自己不会的,我就非常头疼的去面试。更出人意料的是,我竟然找到了一份实习工作,也算是运气爆棚了吧。
Java程序员需要掌握很多知识,因为Java是一门非常广泛应用于各种领域的语言。以下是一些需要了解的知识点:
- Java SE基础知识:这是Java编程的基础。Java SE包括了Java语言的基础语法,面向对象编程的思想,以及常用的API等。
- 数据结构和算法:作为一名程序员,数据结构和算法是必须要学好的。在Java中,主要涉及到常用的数据结构和算法,比如链表、栈、队列、二叉树、排序算法等。
- 数据库相关知识:Java程序员经常需要与数据库打交道,因此需要学习数据库相关的知识。常用的数据库有MySQL、Oracle、Microsoft SQL Server等。
- Spring框架:Spring是Java领域最流行的开发框架之一。它提供了很多开发中常用的功能,比如IoC容器、AOP、事务管理等。
- Spring MVC框架:Spring MVC是Spring框架的一部分,用于开发Web应用程序。它提供了一些常用的功能,比如请求映射、数据绑定、视图解析等。
- MyBatis框架:MyBatis是一款Java持久层框架,可以将Java对象映射到数据库表中。它提供了很多常用的功能,比如动态SQL、批量操作、缓存等。
- Git版本控制:Git是目前最流行的版本控制系统之一。Java程序员需要学习如何使用Git来管理代码、协同开发等。
- Linux基础知识:Linux是一种常用的操作系统,Java程序员需要掌握一些基本的Linux命令和操作知识,比如文件操作、进程管理、网络配置等。
- 前端开发相关知识:Java程序员经常需要与前端开发人员合作开发Web应用程序。因此需要学习一些与前端相关的知识,比如HTML、CSS、JavaScript等。
以上这些知识点只是Java程序员需要了解的一部分,还有很多其他的知识等待着程序员去学习和探索。
作为一门广泛应用于各种领域的语言,Java 的就业前景非常广阔。Java 程序员可以在各种行业中找到工作,包括互联网、金融、制造业等。一般来说,Java 程序员的薪资待遇也比较高,特别是在一些互联网企业中,Java 程序员的薪资待遇更是非常优厚。另外,Java 程序员还有很多晋升机会,可以成为技术经理、架构师等职位,薪资水平也会随着职位的提升而提高。总的来说,如果你掌握了 Java 相关的知识和技能,并且具备一定的实战经验,那么在就业市场上就会有很好的发展前景。
相关文章:
普通二本院校计算机专业应届生,我来分享java后端开发的自学java经历
当我找到实习的时候,就决定要把自己的经验分享给大家。我会分享一下自己的真实经验。当然了,以下内容仅代表我的个人看法,如有不完善的地方还请见谅。接下来我就以下几个方面进行讲解。下面是兴哥的一位粉丝朋友的经历。 1.自我介绍 首先呢…...
windows系统常见的操作命令及用法
来源:用ChatGPT搜索出来的 目录操作命令: dir:查看当前目录下的文件列表。 用法:dir [路径] [/w] [/p] [/a] [/o] cd:切换当前目录到指定路径。 用法:cd [路径] md/mkdir:创建新的目录。 用法…...
【计算机网络】网络命令的使用
文章目录 一、实验目的二、实验工具三、实验要求四、实验过程01 ping 命令的使用应用1:验证本地计算机上是否正确安装了 TCP/IP 协议应用2:测试某个目的主机可达性应用3:键入 ping,查看 ping 的其他参数含义 02 netstat 命令的典型…...
当互联网与产业的融合成为一种必然,平台化和商业化不再是必然
当互联网与产业的融合成为一种必然,我们在互联网时代司空见惯的平台化、中心化的发展模式便开始被瓦解。更为确切地说,经典意义上的平台化和中心化的商业模式不再有存在的必要。因为供求两端的对接不再是依靠平台和中心的撮合和中介来实现的,…...
【linux】冯诺依曼体系+操作系统
我们使用的计算机都是由一个个硬件所组成的,那么如何有条不紊的运行呢?那是因为有冯诺依曼体系约束着硬件,而操作系统来管理着他们,从而使得计算机的硬件和软件完美结合。 一、冯诺依曼体系 首先我们得了解什么是冯诺依曼体系结构…...
从0开始 莫比乌斯函数和反演 学习笔记
莫比乌斯 0 前言 建议先看这篇比较简略的文章(有大概了解) 莫比乌斯函数_为最后的荣光的博客-CSDN博客 再根据个人情况食用本篇博客 1 莫比乌斯函数 1 1 定义 首先对 n n n 唯一分解: 唯一分解: 唯一分解定理一篇就够了_求…...
IntersectionObserver“替代”滚动条监听
概要 IntersectionObserver 接口提供了一种异步观察目标元素与其祖先元素或顶级文档视口(viewport)交叉状态的方法。其祖先元素或视口被称为根(root)。 当一个 IntersectionObserver 对象被创建时,其被配置为监听根中…...
Maven下载安装及IDEA配置Maven的超详细教程
Maven下载安装及IDEA配置Maven的超详细教程 1、IntelliJ IDEA 下载、安装及配置过程2、maven下载、安装、配置过程2.1 mavan下载2.2 安装2.3 配置 3、在IDEA中配置Maven3.1 进入设置界面3.2 maven配置 4、IDEAmaven创建工程示例 Maven是一个能使我们的java程序开发节省时间和精…...
【JAVAEE】线程池基础知识⭐
目录 1.什么是线程池 2.为什么要使用线程池 3.怎么使用线程池 4.自定义一个线程池 5.为什么不推荐使用系统自带的线程池 5.1线程池构造方法的参数和含义 5.1.1拒绝策略 5.2线程池的工作原理 5.3为什么不适用系统自带的线程池 补充:工厂模式 1.什么是线程池…...
【源码解析】@ControllerAdvice实现异常捕获与响应增强处理的原理解析
全局异常处理 demo展示 Slf4j RestControllerAdvice public class GlobalExceptionAdvice {ExceptionHandler(RuntimeException.class)public R<Void> handleNotPermissionException(RuntimeException e, HttpServletRequest request) {String requestURI request.get…...
Visual Studio Code 插件的开发、调试及发布完整详细教程
本篇文章主要讲解:Vscode的拓展插件,从环境安装到生成项目文件再到调试及部署发布的完整开发教程。 日期:2023年5月10日 vscode 1.78.1 一、准备node环境及安装yo 项目初始化,优先安装yo、再通过yo创建code及插件项目。 基础条件 需要先安装node,且node环境已经正确安装…...
Qt音视频开发38-ffmpeg视频暂停录制的设计
一、前言 基本上各种播放器提供的录制视频接口,都是只有开始录制和结束录制两个,当然一般用的最多的也是这两个接口,但是实际使用过程中,还有一种可能需要中途暂停录制,暂停以后再次继续录制,将中间部分视频不需要录制,跳过这部分不需要的视频,而且录制的视频文件必须…...
bat脚本、dos命令
bat脚本 bat脚本就是DOS批处理脚本,就是将一系列DOS命令按照一定顺序排列而形成的集合,运行在windows命令行环境上。这个文件的每一行都是一条DOS命令 在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.…...
【星戈瑞】Sulfo-Cyanine5 mal红色荧光Cy5-maleimide
Sulfo-Cyanine5 mal是一种具有强荧光信号的染料,主要应用于生物荧光成像领域。它的化学式为C38H43KN4O9S2,分子量为803.00。这种染料具有良好的水溶性,可在水溶液中稳定存在。它的光学特性包括吸收峰位于646 nm和发射峰位于662 nm,…...
Dcip的学习1-计算器
文章目录 前言一、配置安装环境1.1 网址1.2 再次打开需要进行的操作1.3 NodeJS控制台的操作1.4 出现的页面 二、Dcip生成计算器2.1 软件的基本单位 - Unitform中添加内容 2.2 OnleftChange(); 前言 只是为方便学习,不做其他用途, 一、配置安装环境 1.1 …...
ChatGPT使用9大技巧详解
目录 技巧1:To Do and Not To Do 技巧2:增加示例 技巧3:使用引导词,引导模型输出特定内容...
随机变量X,分布函数X~F(x)的理解。
1.随机变量X 1.通常认知的"x"与随机变量X 我们通常意义上的 x 是自变量,y f(x) 中的自变量。 但是 X 更多意义是 对应法则 " f " ,X完整写法是 X(ω) ω ∈ Ω。 X这个对应法则,可以将样本点映射到实数轴上。 那么X这…...
11.构造器的查询.分块.聚合
学习要点: 1.构造器查询 2.分块.聚合 本节课我们来开始学习数据库的构造器查询以及分块和聚合查询。 一.构造器查询 1. table()方法引入相应的表,get()方法可以查询当前表的所有数据; //获取全部结果 $users DB::table(users)-&g…...
微服务保护——Sentinel
初识Sentinel 雪崩问题 微服务调用链路中的某个服务故障,引起整个链路中的所有微服务都不可用,这就是雪崩。 解决雪崩问题的常见方式有四种: 超时处理:设定超时时间,请求超过一定时间没有响应就返回错误信息,不会无休止等待舱壁…...
MySQL面试整理
https://houchen-study.oss-cn-hangzhou.aliyuncs.com/%E9%9D%A2%E8%AF%95/MySQL/MySQL%E9%9D%A2%E8%AF%95%E5%A4%A7%E5%85%A8%281%29.pdf 数据库基础知识 为什么要使用数据库? 什么是MySQL? 数据库的三大范式是什么? MySQL有关权限的表…...
UDP(Echoserver)
网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法:netstat [选项] 功能:查看网络状态 常用选项: n 拒绝显示别名&#…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...
令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...
鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/
使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题:docker pull 失败 网络不同,需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...
Map相关知识
数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...
如何更改默认 Crontab 编辑器 ?
在 Linux 领域中,crontab 是您可能经常遇到的一个术语。这个实用程序在类 unix 操作系统上可用,用于调度在预定义时间和间隔自动执行的任务。这对管理员和高级用户非常有益,允许他们自动执行各种系统任务。 编辑 Crontab 文件通常使用文本编…...
【Elasticsearch】Elasticsearch 在大数据生态圈的地位 实践经验
Elasticsearch 在大数据生态圈的地位 & 实践经验 1.Elasticsearch 的优势1.1 Elasticsearch 解决的核心问题1.1.1 传统方案的短板1.1.2 Elasticsearch 的解决方案 1.2 与大数据组件的对比优势1.3 关键优势技术支撑1.4 Elasticsearch 的竞品1.4.1 全文搜索领域1.4.2 日志分析…...
Windows 下端口占用排查与释放全攻略
Windows 下端口占用排查与释放全攻略 在开发和运维过程中,经常会遇到端口被占用的问题(如 8080、3306 等常用端口)。本文将详细介绍如何通过命令行和图形化界面快速定位并释放被占用的端口,帮助你高效解决此类问题。 一、准…...
