首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
华为云
V2EX  ›  Java

初学 javaWeb,是从 ssh 框架学起还是直接学习 ssm?

  •  
  •   Nick2VIPUser · 266 天前 · 8640 次点击
    这是一个创建于 266 天前的主题,其中的信息可能已经有所发展或是发生改变。

    以前做过爬虫和 django 项目。

    现在在学习 javaWeb 开发。

    看了一下午的 struts,也从 Eclipse 用到 IntelliJ IDEA,被复杂的配置和环境弄晕了。

    网上看说现在的项目大多数都是 ssm 和 spring-boot,要学可以直接入手 ssm。

    想问各位老哥新人是否有学习 ssh 的必要性?

    大家在 JavaWeb 方面是什么样的学习路径呢?

    另外如果有教程和实战案例推荐那就感激不尽了。

    46 回复  |  直到 2018-03-04 13:16:04 +08:00
        1
    p2pCoder   266 天前   ♥ 5
    学 Java 很容易一上来就是框架,servlet jsp 首先学好吧
        2
    xuhaoyangx   266 天前   ♥ 2
    servlet jsp 写个项目。
    然后在 ssm,ssh 可以以后维护老项目看
        3
    hysys32   266 天前   ♥ 1
    ssh 几乎没怎么用了~~~一般都是老项目。。。
        4
    0Kelvin   266 天前   ♥ 2
    为什么不坚持 python 呢,java 人太多了点吧,看看数据挖掘、机器学习不好么
        5
    mikicomo   266 天前   ♥ 1
    我觉得 spring mybatis hibernate 学学好感觉基本八九不离十了= =,自己做东西用 springmvc 蛮好用的,不过要是公司用别的你也得学嘛
        6
    pangliang   266 天前   ♥ 2
    spring mvc 应该不是 servlet 那一套了吧?
        7
    fumichael   266 天前   ♥ 2
    公司还在用 struts2 开发新的项目,我自己学习 springmvc springboot,又不是一辈子都呆死在一家公司。
        8
    Flicker   266 天前 via Android   ♥ 1
    2 楼
        9
    panpanpan   266 天前 via iPhone   ♥ 1
    2 楼的说法是对的,我司有个面试官每次面试都问 servlet,能排除掉一堆不靠谱的,尤其是培训班速成的那种。
        10
    cyspy   266 天前 via Android   ♥ 1
    @0Kelvin 本科数学不挂科的就已经是一小部分人了
        11
    yinzhili   266 天前   ♥ 1
    我是建议研究 m 也就是 mybatis,意味着可以更多接触原生 SQL,很有好处。
        12
    enzohobmg   266 天前   ♥ 1
    好好学习 天天向上
        13
    Nick2VIPUser   266 天前
    @p2pCoder
    @xuhaoyangx
    @Flicker
    @panpanpan
    谢谢指路,打算先学一下 servlet jsp。
        14
    Nick2VIPUser   266 天前
    @0Kelvin 机器学习这块学历和专业知识要求有点高,自己差太远了。目前公司的项目主要是 Java+Python,所以学 java
        15
    Nick2VIPUser   266 天前
    @mikicomo 感谢,现在就是在网上一搜东西太多了,完全没有方向感
        16
    domty   266 天前   ♥ 1
    先把 j2ee 最基本的东西搞明白。
    然后把 Spring 是干嘛的搞明白。
    然后再去考虑映射层和持久化层的框架。

    开始学不用太关注细节,先把最主要的搞清楚就行。
        17
    woscaizi   266 天前 via iPhone   ♥ 1
    Hibernate 应该学一学,struts2 别学了,直接 spring mvc。
        18
    wusj   266 天前 via Android   ♥ 2
    学习 Servlets Jsp,可以看看《 Head First Servlets & JSP 》我觉得讲的通俗易懂
        19
    zzlhr   266 天前 via iPhone   ♥ 1
    spring boot 大法好
        20
    lonenol   266 天前   ♥ 1
    现在还有人用 jsp?你们不要吓我..
        21
    geekboy   266 天前 via Android   ♥ 1
    @lonenol 老项目 jsp,ssh 用不是很正常吗?
        22
    hysys32   266 天前 via iPhone   ♥ 1
    就从 ssm 开始吧,mybatis 要好得多,spring mvc 也简单和常用很多,jsp 嘛,还是要懂点的,虽然以后一般都用 el 表达式和 freemaker
        23
    anubiskong   266 天前   ♥ 2
    我能劝你别学 java 吗?
        24
    abcbuzhiming   266 天前   ♥ 1
    现在搞 web 的上来就是一堆框架,我说,就不能认真的去研究一下 http 再来吗
        25
    baozijun   266 天前 via iPhone   ♥ 1
    @abcbuzhiming servlet 搞完 http 也差不多了
        26
    Nick2VIPUser   266 天前
    @domty 对啊,现在就是把 javaweb 用的东西了解一下是怎么做的,以后公司上项目好给别人搭把手
        27
    Nick2VIPUser   266 天前
    @wusj 谢谢推荐!
        28
    Nick2VIPUser   266 天前
    @anubiskong 老哥能说说原因嘛?我目前学 java 主要是因为公司业务会用到 sprint-boot,所以打算对 javaweb 由浅入深的学一下。
        29
    Nick2VIPUser   266 天前
    @abcbuzhiming 因为之前做过 3 个 python django 的 web 项目,感觉 http 比较基本的东西应该差不多了,所以开始学框架。
        30
    CFO   266 天前 via Android   ♥ 1
    @pangliang 不是 servlet 是什么?
        31
    ittianyu   266 天前   ♥ 1
    学 java 怎么也要 6-8 个月的全职时间,一天 12 小时就差不多。我就是这样过来的,从 servlet 到 微服务。
        32
    sonyxperia   266 天前   ♥ 1
    现在 struts 和 hibernate 其实都不多了,除非老项目
        33
    sagaxu   266 天前 via Android   ♥ 4
    我建议跳过 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   266 天前   ♥ 1
    先学 并发编程,,了解常见的并发编程模型, 框架都是次要的, 转来转去 Spring 跟 Spring 相关的东西 都离不开线程池并发 AOP DI 那一套。然后了解下 Servlet, 搞清楚什么是线程安全,写 web 代码的时候 注意哪些问题, 然后找个 SSM 的简单项目搭起来,一边学习框架 一边学习 AOP 跟依赖注入 底层接口实现的相关原理跟 API,后续所有框架相关的东西 基本上都离不开这两个东西 。

    不要一开始就用 SpringBoot,Java 搞 web 确实很烦,配置很多 而且很多都是非常繁琐的东西 ,搞得学 Java 变成了学配置,但是配置还是要学的, 毕竟工作是工作,你玩不转配置,实际工作很吃亏 也很费时间,虽然学了配置不会对你编程技术提升有啥帮助,但是配置这东西 玩一下 会了,能给工作节省不少时间。

    最近打算用下 Spring Security OAuth 2,看了一堆官方文档,真是比吃屎还难受, 本来 OAuth2 就是个相当简单的东西,官方文档没给出啥好的示例,最后还是靠一些分析使用的文章搞了起来。
        35
    rim99   266 天前 via Android   ♥ 1
    @sagaxu 我恰好就按你这个路线走过来的。不过,异步和 netty 还没开始看。其实,mybatis 用的公司挺多的,还是学一下比较好。
        36
    q397064399   266 天前   ♥ 1
    @pangliang #6 很抱歉 还是那套 , 核心的 DispatchServlet 就是 Servlet 的实现类
        37
    bleaker   266 天前   ♥ 1
    比起学框架,应该先学 web framework 要解决的是哪些问题,要解决这些问题需要做哪些工作,做这些工作需要引入哪些概念,各种框架是如何用自己的模型去抽象这些概念的,这些抽象方式的利弊各有哪些。

    理解了工具为什么被设计成这样之后,才能更好的学习工具,否则很容易被工具层的各种概念搞晕。
        38
    weirdo   265 天前   ♥ 1
    servlet 和 jsp 吧
        39
    Nick2VIPUser   265 天前
    @sagaxu 非常感谢您的答案!很有用!
        40
    Nick2VIPUser   265 天前
    @q397064399 您说的好详细,感激不尽!关于配置那块我的思路跟您差不多呢~
        41
    Nick2VIPUser   265 天前
    @bleaker 是了,我学框架的首要就是搞懂框架的各个部分分别是干什么用的,在 web 开发中处于什么样的位置,这样才能在实际开发中更快上手。
        42
    pangliang   265 天前   ♥ 1
    @q397064399 恩, 如果是的话, @Nick2VIPUser 我的意见不仅不要跳过 servlet , 还要从 http 协议, socket 协议这些底层去学

    不需要你特别深入, 你需要知道这些底层是什么负责什么; 然后如果没有 servlet, 你用 socket 实现一个 http server 需要怎么做; 然后有了 servlet 帮你解决了什么; 然后没有 spring 你又有什么麻烦, spring 又帮你解决了什么; 这才是新人需要学的

    那些网上所谓的 24 天学会 xxx, 一上来告诉你 什么各种 bean, xml 怎么配置, 巴拉巴拉, 你只能一脸懵逼根本无法理解
        43
    pangliang   265 天前   ♥ 1
    并发编程, 是从技术角度考虑怎么解决压力等问题; servlet spring 等框架从业务角度考虑怎么优雅实现 http, 实现业务等问题; 两个角度不同, 缺一不可
        44
    Nick2VIPUser   265 天前
    @pangliang 谢谢老哥悉心指导!
        45
    chenhui7373   264 天前 via iPhone
    Core javaee
        46
    gaocc   259 天前
    请问楼主是什么样的 java 程度,java 编程思想看过的吧,能理解个五成以上就很不错了。servlet+jsp 是入门基本不用,但主要能体现一些开发思想,对以后深入了解 spring 也很有好处,想做技术的可以看,想以后做产品的可以不看。然后单位是用 springBoot 是吧,这东西很适合新人也适合老人,但使用事感受是不一样的,新人会觉得开发好简单就是写业务,老人会去翻文档,说搞出 springboot 的团队真厉害,就靠 spring4 的 java 代码自动配置就取缔了 xml 配置。然后咔咔咔自己去模仿着写自动配置,搞出自己觉得好的项目环境。
    说这么多,其实就为了适应 springboot 大不用去花时间去额外了解什么,多看看官方的 springboot 案例就好。等自己有空闲了可以夯实下个各类基础
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1971 人在线   最高记录 3821   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.1 · 26ms · UTC 08:54 · PVG 16:54 · LAX 00:54 · JFK 03:54
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1