怎么学习Java Web? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Niris
V2EX    Java

怎么学习Java Web?

  •  
  •   Niris 2011-05-14 08:09:23 +08:00 7424 次点击
    这是一个创建于 5265 天前的主题,其中的信息可能已经有所发展或是发生改变。
    在v2ex潜了一段时间,发现很多搞java web(然后转向其他语言)的。
    想请教下诸位,如果要学习java web,应该按照什么顺序?看哪些书?

    我的情况:
    学习JS中(自我感觉还还可以吧),没有其他语言基础。
    死大一枚。参与的web小组里,诸位学长都是用java写后台。(可能因为我对java缺乏了解吧,对java没什么好感……但毕竟组里都是学java的,不明白的地方也有个人请教,好过自己摸黑过河吧?参与小组前对python,ruby这些倒是更有兴趣,我的想法是有一定基础后自学。)

    情况就是这样,不知诸位有什么意见建议想法看法?
    13 条回复    1970-01-01 08:00:00 +08:00
    roamlog
        1
    roamlog  
       2011-05-14 09:03:48 +08:00 via iPhone
    学 jsp servlet jdbc javabean 这些,书的话推荐 head first jsp & servlet
    roamlog
        2
    roamlog  
       2011-05-14 09:05:37 +08:00 via iPhone
    如果把这几个弄懂的话,可以学一下几个框架,不难,struts 2,spring,hibernate 等
    fengluo
        3
    fengluo  
       2011-05-14 09:10:26 +08:00
    java之类的培训视频网上很多啊~看一遍跟着做做就差不多了~
    xiluo
        4
    xiluo  
       2011-05-14 09:35:19 +08:00
    get started from altering a tiny java web project
    dreamer
        5
    dreamer  
       2011-05-14 10:00:44 +08:00
    不建议一开始就学 JAVA,JAVA 不够灵活,而且很多有关 JAVA 的书都写得晦涩难懂。

    如果对 Python 或者 Ruby 有兴趣的话,完全可以自学,它们的文档都很丰富,还有不少 Free ebook 可以下载。

    关于 Python 的书有 Learn Python The Hard Way: http://learnpythonthehardway.org/

    Ruby 的书有 Programming Ruby: http://www.ruby-doc.org/docs/ProgrammingRuby/

    在学习过程中遇到问题多用 Google 搜索,或者去 Stack Overflow 提问,一般都可以得到解决。在你进阶到高手之前,身边有没有可以请教的人都无所谓。
    beston
        6
    beston  
       2011-05-14 10:02:19 +08:00
    python,ruby这些倒是更有兴趣
    ---------------------------------------
    既然感兴趣,建议直接学python,ruby
    chloerei
        7
    chloerei  
       2011-05-14 10:09:15 +08:00
    《程序员职规划之道》http://book.douban.com/subject/4923179/

    学主流语言对职业规划是下策
    Niris
        8
    Niris  
    OP
       2011-05-14 21:52:45 +08:00
    感谢诸位关于学习以及方向上的建议。

    考虑去图书馆把入门书籍都拿来翻两页,再下一步…
    Droog
        9
    Droog  
       2011-07-12 18:39:48 +08:00
    @dreamer 不灵活?这个怎么讲?第一次听到这种说法!
    dreamer
        10
    dreamer  
       2011-07-13 09:12:02 +08:00
    @Droog

    首先,JAVA 的语法很死板,只是简单编写一个「Hello World」都需要写那么一堆不相干的声明式代码,很容易让你陷入思维定式。

    其次,JAVA 没有一个简单的交互式环境。你在编写第一个 JAVA 程序之前要先去配置一堆环境变量,研究 javac 怎么用 做很多完全和编程无关的事情之后你才可以真正开始写第一行代码。而编程最重要的应该是「写代码」,「运行」和「调试」,你需要尽快地了解这门语言本身,而不是去玩周边的配置。

    个人认为,JAVA 完全是软件工业化的产物,它更多地是考虑最终软件的质量。因为程序员的水平参差不齐,所以它会设置很多严格的语法规则来保证每个程序员「生产」出来的代码不会有严重的错误。这对于软件本身是好的,但是不利于拓展程序员的思维,会把程序员变成一个生产标准件的螺丝钉。
    holmesabc
        11
    holmesabc  
       2011-07-13 10:29:12 +08:00
    @dreamer

    没这么夸张吧。

    “简单的交互式环境”,这个是什么,JDK么?加两条环境变量,不是“要先去配置一堆环境变量”,没有“一堆”,要不了10秒种的事。

    还有估计搞java的很少去用什么记事本这类的去写代码吧。大多数都会去用IDE,这样就可以不用一来就去看什么java,javac之类命令了。而且同样可以“尽快地了解这门语言本身”,如果非要用HelloWorld来说的话,eclipse,建个工程,建个类,钩上自动添加main(),再在main()里面加一句输出 System.out.println("HELLOWROLD");
    然后点运行。OK,你要的效果有了。

    还有你说的“简单的交互式环境”,个人感觉只要系统不带运行环境的,就应该不算什么简单了吧。再以Hello World说的话,windows下要说简单的 那就echo helloworld,就有效果,还绝对不用去“写那么一堆不相干的声明式代码”。linux的话应该有shell,(不了解。。)

    话题回来,to lz

    对于LZ来说,我也不建议去学jEE这方面,毕竟专门搞web的,何必一定要java,感觉JEE也大部分就是用@roamlog 说的那些框架。要是我,宁愿学SE去搞写服务器后台,像游戏服务器之类的。

    还有何必别人学什么,你也去学什么呢!web上有方便的python ruby php,为何不用。
    dreamer
        12
    dreamer  
       2011-07-13 11:11:38 +08:00
    @holmesabc

    我说的简单的交互式环境是类似 Ruby 的 irb 的东西,或者像这样:

    php -r 'echo "Hello World!";'

    JAVA 下面好像没有 echo 这个方法吧?

    另外,个人不喜欢一开始把精力放在工具上,而且 IDE 往往都比较臃肿。
    roamlog
        13
    roamlog  
       2011-07-13 12:02:27 +08:00
    1,讨论语言的优劣还是得放到具体环境中吧,没然没什么意思,也就一些语法糖比较来比较去的。。。
    2,但如果放到具体的一些环境中的话,很多时候根本没必要讨论语言的优劣了,因为每种语言都不是全能型,都有特写的适应领域。。。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2180 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 40ms UTC 00:50 PVG 08:50 LAX 17:50 JFK 20:50
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86