以前做过爬虫和 django 项目。
现在在学习 javaWeb 开发。
看了一下午的 struts,也从 Eclipse 用到 IntelliJ IDEA,被复杂的配置和环境弄晕了。
网上看说现在的项目大多数都是 ssm 和 spring-boot,要学可以直接入手 ssm。
想问各位老哥新人是否有学习 ssh 的必要性?
大家在 JavaWeb 方面是什么样的学习路径呢?
另外如果有教程和实战案例推荐那就感激不尽了。
1
p2pCoder 2018-02-24 17:46:32 +08:00 5
学 Java 很容易一上来就是框架,servlet jsp 首先学好吧
|
2
xuhaoyangx 2018-02-24 17:47:34 +08:00 2
servlet jsp 写个项目。
然后在 ssm,ssh 可以以后维护老项目看 |
3
hysys32 2018-02-24 18:05:18 +08:00 1
ssh 几乎没怎么用了~~~一般都是老项目。。。
|
4
0Kelvin 2018-02-24 19:06:53 +08:00 2
为什么不坚持 python 呢,java 人太多了点吧,看看数据挖掘、机器学习不好么
|
5
mikicomo 2018-02-24 19:13:02 +08:00 1
我觉得 spring mybatis hibernate 学学好感觉基本八九不离十了= =,自己做东西用 springmvc 蛮好用的,不过要是公司用别的你也得学嘛
|
6
pangliang 2018-02-24 19:19:23 +08:00 2
spring mvc 应该不是 servlet 那一套了吧?
|
7
fumichael 2018-02-24 19:41:27 +08:00 2
公司还在用 struts2 开发新的项目,我自己学习 springmvc springboot,又不是一辈子都呆死在一家公司。
|
8
Flicker 2018-02-24 20:04:23 +08:00 via Android 1
2 楼
|
9
panpanpan 2018-02-24 20:10:54 +08:00 via iPhone 1
2 楼的说法是对的,我司有个面试官每次面试都问 servlet,能排除掉一堆不靠谱的,尤其是培训班速成的那种。
|
11
yinzhili 2018-02-24 20:18:32 +08:00 1
我是建议研究 m 也就是 mybatis,意味着可以更多接触原生 SQL,很有好处。
|
12
enzohobmg 2018-02-24 20:33:04 +08:00 1
好好学习 天天向上
|
13
Nick2VIPUser OP |
14
Nick2VIPUser OP @0Kelvin 机器学习这块学历和专业知识要求有点高,自己差太远了。目前公司的项目主要是 Java+Python,所以学 java
|
15
Nick2VIPUser OP @mikicomo 感谢,现在就是在网上一搜东西太多了,完全没有方向感
|
16
domty 2018-02-24 22:07:02 +08:00 1
先把 j2ee 最基本的东西搞明白。
然后把 Spring 是干嘛的搞明白。 然后再去考虑映射层和持久化层的框架。 开始学不用太关注细节,先把最主要的搞清楚就行。 |
17
woscaizi 2018-02-25 00:45:54 +08:00 via iPhone 1
Hibernate 应该学一学,struts2 别学了,直接 spring mvc。
|
18
wusj 2018-02-25 07:33:37 +08:00 via Android 2
学习 Servlets Jsp,可以看看《 Head First Servlets & JSP 》我觉得讲的通俗易懂
|
19
zzlhr 2018-02-25 08:00:50 +08:00 via iPhone 1
spring boot 大法好
|
20
lonenol 2018-02-25 08:07:38 +08:00 1
现在还有人用 jsp?你们不要吓我..
|
22
hysys32 2018-02-25 08:51:54 +08:00 via iPhone 1
就从 ssm 开始吧,mybatis 要好得多,spring mvc 也简单和常用很多,jsp 嘛,还是要懂点的,虽然以后一般都用 el 表达式和 freemaker
|
23
anubiskong 2018-02-25 09:17:57 +08:00 2
我能劝你别学 java 吗?
|
24
abcbuzhiming 2018-02-25 10:24:44 +08:00 1
现在搞 web 的上来就是一堆框架,我说,就不能认真的去研究一下 http 再来吗
|
25
baozijun 2018-02-25 10:48:04 +08:00 via iPhone 1
@abcbuzhiming servlet 搞完 http 也差不多了
|
26
Nick2VIPUser OP @domty 对啊,现在就是把 javaweb 用的东西了解一下是怎么做的,以后公司上项目好给别人搭把手
|
27
Nick2VIPUser OP @wusj 谢谢推荐!
|
28
Nick2VIPUser OP @anubiskong 老哥能说说原因嘛?我目前学 java 主要是因为公司业务会用到 sprint-boot,所以打算对 javaweb 由浅入深的学一下。
|
29
Nick2VIPUser OP @abcbuzhiming 因为之前做过 3 个 python django 的 web 项目,感觉 http 比较基本的东西应该差不多了,所以开始学框架。
|
31
ittianyu 2018-02-25 11:12:40 +08:00 1
学 java 怎么也要 6-8 个月的全职时间,一天 12 小时就差不多。我就是这样过来的,从 servlet 到 微服务。
|
32
sonyxperia 2018-02-25 14:00:39 +08:00 1
现在 struts 和 hibernate 其实都不多了,除非老项目
|
33
sagaxu 2018-02-25 14:26:49 +08:00 via Android 6
我建议跳过 servlet,直接从 springboot 开始,熟悉之后再学点 springcloud。hibernate 完全不需要学,往上 spring-data-jpa 走起,往下有 JdbcTemplate,裸写 jdbc 也行。mybatis 和 jsp 之类也可以直接跳过,用到了再学。
另外一条路线是异步 web,建议入 vertx 的坑,完全忽略 j2ee 那些概念,更接近 nodejs 的理念。入坑 vertx,可以完全忽略 spring,也可以继续用 spring 做 di 和配置管理。 netty 需要好好研究一下,java 并发编程实践也要仔细读两遍,这些比 http 协议和 servlet 重要的多。 |
34
q397064399 2018-02-25 15:37:25 +08:00 1
先学 并发编程,,了解常见的并发编程模型, 框架都是次要的, 转来转去 Spring 跟 Spring 相关的东西 都离不开线程池并发 AOP DI 那一套。然后了解下 Servlet, 搞清楚什么是线程安全,写 web 代码的时候 注意哪些问题, 然后找个 SSM 的简单项目搭起来,一边学习框架 一边学习 AOP 跟依赖注入 底层接口实现的相关原理跟 API,后续所有框架相关的东西 基本上都离不开这两个东西 。
不要一开始就用 SpringBoot,Java 搞 web 确实很烦,配置很多 而且很多都是非常繁琐的东西 ,搞得学 Java 变成了学配置,但是配置还是要学的, 毕竟工作是工作,你玩不转配置,实际工作很吃亏 也很费时间,虽然学了配置不会对你编程技术提升有啥帮助,但是配置这东西 玩一下 会了,能给工作节省不少时间。 最近打算用下 Spring Security OAuth 2,看了一堆官方文档,真是比吃屎还难受, 本来 OAuth2 就是个相当简单的东西,官方文档没给出啥好的示例,最后还是靠一些分析使用的文章搞了起来。 |
35
rim99 2018-02-25 15:37:37 +08:00 via Android 1
@sagaxu 我恰好就按你这个路线走过来的。不过,异步和 netty 还没开始看。其实,mybatis 用的公司挺多的,还是学一下比较好。
|
36
q397064399 2018-02-25 15:38:07 +08:00 1
@pangliang #6 很抱歉 还是那套 , 核心的 DispatchServlet 就是 Servlet 的实现类
|
37
bleaker 2018-02-25 16:04:25 +08:00 1
比起学框架,应该先学 web framework 要解决的是哪些问题,要解决这些问题需要做哪些工作,做这些工作需要引入哪些概念,各种框架是如何用自己的模型去抽象这些概念的,这些抽象方式的利弊各有哪些。
理解了工具为什么被设计成这样之后,才能更好的学习工具,否则很容易被工具层的各种概念搞晕。 |
38
weirdo 2018-02-25 18:01:50 +08:00 1
servlet 和 jsp 吧
|
39
Nick2VIPUser OP @sagaxu 非常感谢您的答案!很有用!
|
40
Nick2VIPUser OP @q397064399 您说的好详细,感激不尽!关于配置那块我的思路跟您差不多呢~
|
41
Nick2VIPUser OP @bleaker 是了,我学框架的首要就是搞懂框架的各个部分分别是干什么用的,在 web 开发中处于什么样的位置,这样才能在实际开发中更快上手。
|
42
pangliang 2018-02-26 09:35:42 +08:00 1
@q397064399 恩, 如果是的话, @Nick2VIPUser 我的意见不仅不要跳过 servlet , 还要从 http 协议, socket 协议这些底层去学
不需要你特别深入, 你需要知道这些底层是什么负责什么; 然后如果没有 servlet, 你用 socket 实现一个 http server 需要怎么做; 然后有了 servlet 帮你解决了什么; 然后没有 spring 你又有什么麻烦, spring 又帮你解决了什么; 这才是新人需要学的 那些网上所谓的 24 天学会 xxx, 一上来告诉你 什么各种 bean, xml 怎么配置, 巴拉巴拉, 你只能一脸懵逼根本无法理解 |
43
pangliang 2018-02-26 09:43:55 +08:00 1
并发编程, 是从技术角度考虑怎么解决压力等问题; servlet spring 等框架从业务角度考虑怎么优雅实现 http, 实现业务等问题; 两个角度不同, 缺一不可
|
44
Nick2VIPUser OP @pangliang 谢谢老哥悉心指导!
|
45
chenhui7373 2018-02-26 18:02:52 +08:00 via iPhone
Core javaee
|
46
gaocc 2018-03-04 13:16:04 +08:00
请问楼主是什么样的 java 程度,java 编程思想看过的吧,能理解个五成以上就很不错了。servlet+jsp 是入门基本不用,但主要能体现一些开发思想,对以后深入了解 spring 也很有好处,想做技术的可以看,想以后做产品的可以不看。然后单位是用 springBoot 是吧,这东西很适合新人也适合老人,但使用事感受是不一样的,新人会觉得开发好简单就是写业务,老人会去翻文档,说搞出 springboot 的团队真厉害,就靠 spring4 的 java 代码自动配置就取缔了 xml 配置。然后咔咔咔自己去模仿着写自动配置,搞出自己觉得好的项目环境。
说这么多,其实就为了适应 springboot 大不用去花时间去额外了解什么,多看看官方的 springboot 案例就好。等自己有空闲了可以夯实下个各类基础 |
47
PoetAndPoem 2019-08-01 18:50:28 +08:00 via Android
国内互联网用 mybatis 较多,企业级应用用 hibernate 居多
|