普通二本院校计算机专业应届生,我来分享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有关权限的表…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战
前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...

Day131 | 灵神 | 回溯算法 | 子集型 子集
Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣(LeetCode) 思路: 笔者写过很多次这道题了,不想写题解了,大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...

(转)什么是DockerCompose?它有什么作用?
一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器。 Compose文件是一个文本文件,通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...
css3笔记 (1) 自用
outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size:0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格ÿ…...
Python 包管理器 uv 介绍
Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...

C++:多态机制详解
目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...
Spring Security 认证流程——补充
一、认证流程概述 Spring Security 的认证流程基于 过滤器链(Filter Chain),核心组件包括 UsernamePasswordAuthenticationFilter、AuthenticationManager、UserDetailsService 等。整个流程可分为以下步骤: 用户提交登录请求拦…...
用神经网络读懂你的“心情”:揭秘情绪识别系统背后的AI魔法
用神经网络读懂你的“心情”:揭秘情绪识别系统背后的AI魔法 大家好,我是Echo_Wish。最近刷短视频、看直播,有没有发现,越来越多的应用都开始“懂你”了——它们能感知你的情绪,推荐更合适的内容,甚至帮客服识别用户情绪,提升服务体验。这背后,神经网络在悄悄发力,撑起…...