请教快速上手 springboot 的学习路线

2021-02-08 18:45:42 +08:00
 winnerczwx
有 c#开发经验, 也稍微了解过 java
对于 java 版本, 还有 openJDK 和 oracleJDK, 以及 springboot1 和 springboot2 比较迷惑

据说 oracleJDK8 后商用需要付费, 如果想白嫖的话是不是只有 openJDK 可以选择呢

目前需求是快速开发一套 web api 服务, 想请教大佬应该怎么快速入手学习 springboot, 以及版本选择

因为进度比较赶, 项目也比较简单, 就是普通 api 接口(CURD), 也没并发需求, 所以初步只想学到"能用就行", 后续再深入学习

至于为什么要选择 java, 因为想趁这个项目正好学习 java

希望大佬们能分享一下学习路线, 感谢!
4118 次点击
所在节点    程序员
16 条回复
fiveelementgid
2021-02-08 18:50:54 +08:00
有 C#开发经验,坚决不学 Jvav,现在失业,等楼下老哥分享 Jvav 的经验 roadmap
我只吃瓜
coolair
2021-02-08 18:55:39 +08:00
Spring Boot+Spring Cloud+Vue+Element 项目实战:手把手教你开发权限管理系统 /徐丽健著.—北京:清华大学出版社,2019,这本书,跟着敲一遍,完事。
chendl111
2021-02-08 18:57:47 +08:00
fiveelementgid
2021-02-08 19:18:52 +08:00
@chendl111 你要问啥为啥?
请问你的 为啥 问的是以下哪一点
1.坚决不学 java 的原因
2.失业的原因
huyujievip
2021-02-08 21:53:57 +08:00
@fiveelementgid 老哥都说一下呗。
varrily
2021-02-08 21:56:12 +08:00
mikael
2021-02-08 21:58:15 +08:00
看官方文档
dadaoqueyi
2021-02-08 21:59:18 +08:00
推下自己的 springboot 教程,基于 springbooy2.x 。( https://github.com/mytianya/springboot-tutorials)[https://github.com/mytianya/springboot-tutorials]。不过你在问选择 jdk 的版本,那你应该先掌握 java 这门语言了
abcbuzhiming
2021-02-08 22:22:18 +08:00
1.把 java 语言的大部分特性撸一遍,你有 C#基础,java 不难的,当初 C#就是对标 java 的产物,加了一堆语法糖,导致大部分从 C#来 java 的人第一眼会觉得 java 很简陋。
2.oracle jdk 你自己用,oracle 还会给你发律师函吗,怕毛
3.spring boot 其实是 spring 官方在 spring 越来越膨胀后,为了让新手快速上手开发应用,搞出的一个类似模板应用一样的东西。
你只需要记住 spring 的灵魂是依赖注入就行了,需要什么功能,或者自定义什么功能,预先让 spring 载入变成了一个受 spring 管理的对象,然后你就可以把这个对象轻松的注入到任何你需要的地方。比起你自己 new 轻松一些,仅此而已
crclz
2021-02-08 23:26:20 +08:00
dot.net asp.net 的很多概念和 spring 的概念很相似,所以如果有 asp.net 基础,那么 spring 不难。外加 dot.net asp.net 的文档要全很多
fiveelementgid
2021-02-09 00:06:22 +08:00
@huyujievip
1.赌徒心理,富贵险中求 另辟蹊径,往下钻研
2.这个是上述 1 的结果,国内大厂基本都是 Java 而且很多岗位的名字就标注的是 Java 后端工程师招聘,主要还是巨硬 cross platform 整活太慢了,Linux 上 Java 已经吃了大半个市场。业务和技术栈也已经定型
zzzmh
2021-02-09 09:40:18 +08:00
第一没那么多讲究,openjdk oraclejdk,至少我没用处本质区别,java 建议用 8 或者 11,因为最有可能和公司里契合,springboot 选 2 里面的较新的版本。最后建议多写点实战项目,写点复杂逻辑,例如搭配 mybatis plus,除了增删改查,写点权限控制 拦截器什么的
lancelock
2021-02-09 10:37:30 +08:00
会 c#那就用 c#呗,除非你要转行,不然没啥必要非要用 java
jlwrp
2021-02-09 14:53:19 +08:00
找廖雪峰教程
jinzbone
2021-02-09 21:23:54 +08:00
建议看尚硅谷视频入门
sss15
2021-02-10 10:25:34 +08:00
同 C#转 java,有 C#经验,转 java 就只需要注意熟悉 java 的语法,和适应离开宇宙第一 IDE 后的阵痛期。然后就愉快的开发 java 了。
java 的版本,jdk1.8 是目前用的最多的,支持了 lambda 表达式,jdk 的选择用 1.8 是最稳的,其次可以选择的是 11 。其他版本的我理的不是很清楚,就不乱说了,注意 jdk 9 10 11 12 13 14 里面,11 是长期维护版本,其他版本中注意区分,有的版本仅维护半年或一年,然后就不维护了。
关于问题 openJDK,oracleJDK,甚至还有腾讯的 jdk,阿里的 jdk 等等,都是基于基础的 sdk 来的,对初学者来说几乎看不出差别,我也不清楚里面到底有什么区别,但是可以明确的是他们各自有对 GC 、性能做调整的。
springboot 项目基于 maven 创建,用 IDEA 就可以直接创建,然后 IDEA 这边的 pom 就类似 C#那边的 NuGet 包管理,只不过微软做了市场的界面,java 这边完全用 xml 在 pom 文件中配置,没有可视化而已。至于 springboot 版本的选择,随便用啊,反正初学也用不到那么深的核心功能。
springboot 就是提供了一个类似 C#的 mvc 的框架,第一次用的时候学会如何从 url 里接参数,如何接 post 的参数,然后知道如何返回一个 json 字符串就足够你开发 web api 了。
springboot 另外一个功能就是注入,任何你要用的 dao,service 都要通过他注入,注入的前提是他要能扫描到对应的类,怎么扫描呢,springboot 在入口处通过注解告诉他要扫描哪些包。
接下来就是 JAVA 如何对接数据库了,C#中有 EF 框架,java 中也有 MyBatis,用 MyBatis 也是一样的,在 pom 里先引入这个包,然后你只要按照规则建立 domain,dao,xml 三个文件就可以对应起来了。
最后的最后,记得先搜索并安装 IDEA 的插件,有插件和没插件的 IDEA 是两个工具。

写了一大堆,没什么逻辑,想到哪就写到哪了,希望对你有帮助

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/752428

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX