分享一些 Java 后端的个人干货

学习 Java 也有了不少时间,入 Java 后台的坑也有了一段时日。这段时间里,听过许多前辈的经验与分享,也看过许多大佬的文章和作品。找了个时间整理和总结了一下我个人到目前为止一路以来的听到看到或者自己感悟到的干货。

这篇文章可能更多的是面对初学者,当然,只要有人看了我的这篇文章后能有所收获,我就心满意足了。

本文主要有那么几个部分:
  • 学习路线
  • 推荐一些书籍和公众号
  • 推荐一些网站,工具和资料

一. 学习路线

对于想往 java 后台这个方向发展的同学,可以按照以下路线入门:


1240
  • 先把 java 基础部分学完,重点关注多态继承等面向对象的概念,异常,IO,容器等,这部分建议通过视频来学习(毕向东,马士兵老师等的视频都是很经典的,虽然可能年代稍久远,但是万变不离其宗)。有些人可能会推荐看书来学习(如《head first java》等),但是个人认为,如果对于初学者,看书可能相对来说比较难理解,也很容易出现看不下去的情况,而许多优秀的教学视频更加生动,也更加容易理解。
  • 然后就可以开始 javaweb 的学习了,Jsp,Servlet 相对来说比较老旧,但是对于初学者理解 HTTP 请求,理解前后端的交互,理解 MVC 模式,以及对以后框架的学习还是非常有帮助的;除此之外,这个时候还需要掌握数据库的知识,以及一些基础的前端知识。
  • 等到以上都搞定之后,你就可以开始你的第一个 javaweb 项目了,可以尝试完成一个具有登陆注册,增删查改等基本功能的小项目,融入自己的想法,或者在网上或者 github 上也可以找到许多练手的例子。
  • 以上只是 javaweb 的基础部分,接下来你还要完成框架的学习,spring + springMVC + mybatis 是现今比较流行的框架组合,到了这部分,就要好好花多点时间来钻研学习了,框架的学习同样建议看视频来先过一遍,初步熟悉了解,再通过代码实践,项目实战以及书本来加强巩固。

关于后面的进阶,网上也有许多 “ Java 技能图谱 ” “ Java 学习路线 ” ,这里给大家推荐两个地址参考:
Interview-Notebook
Java 工程师成神之路

二. 书籍

网上关于 Java 的书单很多,这里给大家推荐几本

书名介绍
《JSP & Servlet 学习笔记》非常适合入门 JSP Servlet 的一本书,通俗易懂,书里写的一个微博小项目也很适合在学习的时候跟着一起做
《Java核心技术·卷 I》比较适合入门的一本经典 java 书籍,相比 java 编程思想等更浅显易懂,也可以作为工具书使用
《Spring 实战》spring 的一本经典书籍,讲的十分全面,十分值得一看
《算法》简单明了的书名,java 实现的算法书,比起《算法导论》更适合入门,自然也十分易懂
《Head First 设计模式》非常有趣的一本书,可以把每一个设计模式讲得十分生动
《图解 HTTP》让你了解程序员都必须懂的 HTTP
《深入理解 Java 虚拟机(第2版)》进阶书籍,提升Java功力之良药,当然也比较难懂
《高性能 MySQL》MySQL的中高级教程,所以 MySQL 入门就不要看这个啦
《Java并发编程实战》看“并发”俩字就知道这是一本 Java 进阶书籍
《Java 8 实战》Java 8 的新增功能是 Java 发生的一次很大的变化,这本书也全面讲解了 java 8 的新特性

三. 公众号

没事就看看,利用碎片时间,比刷微博,刷知乎好啊

码农翻身

1240

作者刘欣,擅长用讲故事的方式来讲解知识点,经常分享好玩有趣的编程知识和职场的经验教训。

纯洁的微笑

1240

总结了很多关于 spirngboot,springcloud,JVM 等的知识,还有一系列杂谈, 作者 github 的 Spring Boot 示例代码项目拥有 4K star,可以去关注看看

Java 团长

1240

经常会出一些总结性的文章,知识面很广,一个适合用来补充知识点的公众号

程序员小灰

1240

用漫画的方式来讲解技术问题,看漫画,谁都喜欢吧~

四. 关于知识星球(原小密圈)

相信关注公众号多的人都知道这个,许多公众号作者都有在维护自己的知识星球。怎么说呢,知识星球本质上是一个付费论坛、社区,作为知识付费观念的一个体现,最重要的是要让自己觉得从中的获得的信息值得自己所付出的金钱,很多人花了 200 块,但是一段时间后觉得自己没什么收获,那自然是不值的。不过加入知识星球之前,首先也要做好获取信息的准备,很多人花了钱,看了一两眼,就将 APP 丢到了角落,又跑去刷微博了,那也自然是毫无用处的。收获自然是会有的,但是有多少就看每个人挖掘信息的能力了。
当然,什么东西涉及到付费,都要留个心眼,加入之前要仔细斟酌,不要被坑了。

五. 程序员的好帮手

分享一些有用的网站,工具~

1. Google Chrome

谷歌浏览器,不用多说了吧,程序员必备浏览器(或者还有 Firefox ?),响应快速,还有非常多好用的插件,这里先给大家推荐几个插件:

① Octotree

github 必备插件,没有之一,直接在Chrome侧边栏像打开文件夹一样的查看别人的项目,大大提高了效率

1240

同类型的插件还有 GitCodeTree ,用于码云

② JSONView

对接 api 接口的时候,返回 json 格式在原本的浏览器中的显示是杂乱无章的,利用这个接口,可以帮助你将 json 排版整理好

1240
③ FireShot

网页截图工具,支持滚动截屏,还可以直接保存为PDF,JPEG,GIF,PNG或BMP,功能众多

④ 划词翻译

翻译插件很多,这个是个人认为比较好用的一个划词翻译插件,响应快速,是提高效率的一个好工具

⑤postman

准确地来说,这是一个 Chrome 应用,它是一个发送请求的利器,用来调试 api,调试网络最好不过。

这里再给大家推荐一篇文章:吐血推荐珍藏的 Chrome 插件

2. IntelliJ IDEA

很多人都在劝戒说尽早放弃 eclipse 来投入 IDEA 的怀抱,IDEA 的确是非常的好用,不过我在这里也只是推荐,使用什么还是看个人喜欢。
IDEA 里面有非常多好用的插件,这里先给大家几个:

插件介绍
CamelCase变量命名类型快速转换,比如驼峰命名,下划线命名
CodeGlance右侧增加一块代码小地图
Translation翻译插件
Alibaba Java Coding Guidelines《阿里巴巴Java开发规约》扫描插件,让你的编码规范起来

3. GitHub

程序员交友网站,作为全世界最大的开源社区,GitHub 可以说是程序员的必备网站,学会使用 GitHub 也是程序员的必学科目。
这里给大家推荐一份 github 教程: learn-github-from-zero,作者 stormzhang

4. 掘金

一个高质量的技术社区,一方面也很喜欢掘金网页的 UI,现在也越来越多人加入进来。

5. LeetCode

简单来说就是一个刷题网站,里面有各种类型的算法题目,每天做那么一点,既能加强算法,也能保持编码手感以及训练写白板代码。
最近也是出了 leetcode 中国的网站,不过个人推荐还是使用国外版,毕竟人多,讨论什么的也多。

6. 七牛云

一个方便快捷的云存储平台,可以用作些小项目的云存储,同时它为所有用户提供了免费的额度,是一个很适合个人使用的云存储平台。

7. ProcessOn

一个很好用的在线作图网站,支持流程图、思维导图、原型图、UML、网络拓扑图等,不过呢,免费版每个账号只能新建 9 个文件,当然,如果不想花这个钱的话,作完一张图之后保存到本地,然后重新作图也是可以的。

8. Snipaste

一个方便快捷的截屏软件,个人非常喜欢

9. 有道云笔记

平日里的学习记笔记是很重要的。为知,有道,印象等笔记软件都有用过,为什么推荐有道呢,一方面免费,一方面界面好看,一方面 markdown 渲染相对更好,除此之外还能够进行分享。不过有个缺点就是 markdown 编辑器的卡顿问题。
当然如果有更好的笔记软件也希望大家分享。

10. 阿里巴巴 Java 手册

阿里官方 Java 代码规范标准,涵盖了编程规约、单元测试规约、异常日志规约、MySQL规约、工程规约、安全规约等。经历过几次的迭代更新,目前更新为 1.3 终极版,之后又公布了该规约的插件(上文有提到),可以说是真正的干货了。


以上就是我的个人分享,目前暂时想到那么多,以后有新的东西再更新,希望能给大家带来帮助!

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

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

相关文章

.NET MAUI实战 Routing

1.详情本章继续分享.NET MAUI中的路由,这个概念依旧是在Prism里存在过的概念。如果使用过Prism框架的小伙伴使用该机制上手速度是非常快的。接下来一起来看看什么是路由。.NET 多平台应用 UI (.NET MAUI) Shell 包含基于 URI 的导航体验,该体验使用路由导…

分享Web应用运行的细节问题:预编译提高网站性能、跟踪用户习惯和解决线程同步...

在这个文章里,我将分享一下在iOpenWorks.com这个网站试运行中碰到的若干问题和解决方案,这些问题包含了:(1)如何通过ASP.NET MVC预编译提高性能;(2)如何知道网站在运行中&#xff0c…

mondrain配置mysql_mondrian 4.7 源码部署(示例代码)

mondrian是一个开源的数据分析工程, 网上有关mondrian3.X的源码部署比较多, 有关4.X的部署较少. 目前官方推荐使用的时mondrian3.7的修订版, 可以再github上下载到最近更新维护的mondrian-master, 下载下来后基本上只需要按部就班的使用maven build一下就可以正常使用了, 如有问…

腾讯云DevOps技术揭秘:新时代运维重器Tencent Hub最佳实践

随着云计算和容器技术的发展以及微服务架构的兴起,服务能够实现细粒度的部署,维护和伸缩。在使开发人员能快速开发的同时,这些技术也给系统和应用的运维带来了更大的挑战。DevOps理念也应运而生,强调研发和运维的流程及工具的自动…

.Net CoreRabbitMQ消息存储可靠机制(下)

前言上篇讨论过消息投递和消息消费过程中如何确保可靠传输,也提及到消息到达RabbitMQ中到被消费前也需要可靠的留存,可因许多的不确定因素会影响着消息的存在与否。消息中转点生产者发送消息到RabbitMQ中,如果交换机根据自身类型和RoutingKey…

nginx安装及负载均衡配置

Nginx (“engine x”) 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发…

智能停车O2O 独角兽初现:“ETCP停车”获5000万美金A轮融资

日前,国内第一智能停车平台“ETCP停车”宣布完毕A轮融资,由源代码资本、SIG、易车网、经纬中国和商企界知名人士联合投资超过5000万美金。同一时候获悉,ETCP作为中国智能停车行业龙头老大,不仅是该行业的创建者和领军品牌&#xf…

ASP.NET MVC使用Bootstrap系统(2)——使用Bootstrap CSS和HTML元素

阅读目录 Bootstrap 栅格(Grid)系统Bootstrap HTML元素Bootstrap 验证样式ASP.NET MVC创建包含Bootstrap样式编辑模板小结Bootstrap提供了一套丰富CSS设置、HTML元素以及高级的栅格系统来帮助开发人员快速布局网页。所有的CSS样式和HTML元素与移动设备优…

VS2017调试闪退之Chrome

原文:VS2017调试闪退之Chrome巨硬build后发了15.7.1满载期待的升级了。。结果NM泪奔................... 为啥 泪奔? 使用Chrome 调试闪退,MMP ,一想肯定是VS的锅咯,各种抓头发。。 试试看看VS配置发现 ,多了点东西。。 都勾上后&…

ios UISearchBar搜索框的基本使用

摘要: 小巧简洁的原生搜索框,漂亮而易用,如果我们的应用没有特殊需求,都可以使用它。iOS中UISearchBar(搜索框)使用总结 初始化:UISearchBar继承于UIView,我们可以像创建View那样创建searchBar UISearchBar * bar [[U…

Win8下怎样安装Win7 or Win7下怎样安装win8?

预计非常多人可能会用U盘安装工具去去做双系统的安装(Win8下安装Win7, Win7下安装Win8)。可是在安装过程中你 会发现一个问题:win7下安装win8,提示你mbr硬盘格式不能安装win8;win8下安装win7,提…

Linux 练习题-3文件与磁盘 问答

1、描述Liux下软链接和硬链接的区别创建命令不同,ln 命令创建硬链接,ln -s 创建软链接inode节点号不同,硬链接inode与源文件相同,软链接inode与源文件不同使用对象不同,硬链接只能对文件使用,软链接可以对文…

.NET Offer 快到碗里来!.NET 招聘季

关注我们谈到 .NET 在中国的推广和发展,.NET 开发者求职就业及 .NET 企业招人用人的问题往往常被提及。初学者会担心学习 .NET 之后的就业问题,.NET 开发者在求职过程中没有足够多的渠道来获取 .NET 招聘信息,而与此同时,采用 .NE…

java的collections_Java中Collection和Collections的区别

1) 排序(Sort)使用sort方法可以根据元素的自然顺序 对指定列表按升序进行排序。列表中的所有元素都必须实现 Comparable 接口。此列表内的所有元素都必须是使用指定比较器可相互比较的1 List list new ArrayList();2 int array[] {112, 111, 23, 456, 231};3 for (int i 0; …

jQuery事件绑定(一)

2019独角兽企业重金招聘Python工程师标准>>> 一、on方法 在Jquery1.7中添加,用来代替其他事件绑定方法。向匹配元素添加一个或多个事件处理程序 使用语法: $(selector).on(event,childselector,data,function) 参数: event&#x…

JDBC学习笔记之JDBC简介

1. 引言 JDBC API是一种Java API,可以访问任何类型的表格数据,特别是存储在关系数据库中的数据。 JDBC可以帮助我们编写下列三种编程活动的java应用程序: 1.连接到数据源,如数据库;2.发送查询和更新语句到数据库;3.检索并处理从数…

PaddleOCR在 windows下的webAPI部署方案

很多小伙伴在使用OCR时都希望能过采用API的方式调用,这样就可以跨端跨平台了。本文将介绍一种基于python的PaddleOCR识方案。喜欢的可以关注公众号,获取更多内容。# 一、 windows环境下部署###1.环境操作系统:windows10;主要软件环…

Vim的NerdTree插件

一个项目文件多起来时,左边的文件树菜单是必要的。参考:常用文件树快捷键所有命令及推荐键盘映射:官方 在vundle插件管理的方式,直接在~/.vimrc中的Plugin段落中加入Plugin "scrooloose/nerdtree"然后重启Vim并输入Plug…

java简单投票系统_JSP实现的简单Web投票程序代码

本文实例讲述了JSP实现的简单Web投票程序。分享给大家供大家参考。具体如下:这里使用文本文件作为数据存储的投票系统。1. vote.java:package vote;import java.io.*;import java.util.*;public class vote {public String filePath "";publi…

HTTP2指纹识别(一种相对不为人知的网络指纹识别方法)

这是关于网络指纹识别的两部分系列的第二部分上一部分我介绍了有关TLS 指纹识别方法(以及在不同客户端的指纹有何区别):https://mp.weixin.qq.com/s/BvotXrFXwYvGWpqHKoj3uQHTTP/2 指纹识别和Tls指纹类似也是一种 Web 服务器可以依赖指纹来识…