为什么 Java web view 层 都是使用模板而不使用 jsp - V2EX
cc959798
V2EX    Java

为什么 Java web view 层 都是使用模板而不使用 jsp

  •  1
     
  •   cc959798 Dec 14, 2018 6568 views
    This topic created in 2722 days ago, the information mentioned may be changed or developed.

    严格来说 jsp 也是一种模板,但是现在感觉很多都不再用了,感觉 jsp 和其他模板是差不多的,为什么都在用其他模板比如 freemark 之类的

    33 replies    2018-12-15 23:09:11 +08:00
    Kaiv2
        1
    Kaiv2  
       Dec 14, 2018 via Android
    jsp 实际生成了 class,其他的不了解
    lueffy
        2
    lueffy  
       Dec 14, 2018
    我现在都直接 html
    lueffy
        3
    lueffy  
       Dec 14, 2018
    jsp/ftl 前后端不分离 前端的工作分不出去
    youngxhui
        4
    youngxhui  
       Dec 14, 2018 via Android
    应该是性能问题吧
    lhx2008
        5
    lhx2008  
       Dec 14, 2018 via Android
    并不是差不多,各有各的优点。
    现在都流行前后端分离了,要不然前端没事做
    nimabibi
        6
    nimabibi  
       Dec 14, 2018 via iPhone
    性能偏差,很多框架使用需要额外做些工作
    dyyx
        7
    dyyx  
       Dec 14, 2018
    jsp 挺好用的
    jsp 的最大缺点就是 太灵活 可以在里面直接调用 java 代码 容易混乱
    使用 velocity freemark 等模板引擎可以脱离 web 容器
    ntdll
        8
    ntdll  
       Dec 14, 2018
    如果你看到我司的历史遗留项目,每个 JSP 里写了上百行的 Java 代码,我想你在重构的时候,不会想再用这个东西的。
    Terry05
        9
    Terry05  
       Dec 14, 2018
    就是渲染性能问题 velocity freemarker 之类的模板语言要比原生的 JSP 性能要好很多,但在现在前后端分离的时代,这种东西已经没有具体意义了
    JackEggie
        10
    JackEggie  
       Dec 14, 2018
    jsp 里面的 java 代码咋调试? jsp 里面的 js 代码咋调试?
    likuku
        11
    likuku  
       Dec 14, 2018
    那么... 就按自己意思混着用体验个 1 ~ 2 年吧。
    519718366
        12
    519718366  
       Dec 14, 2018
    把大段业务逻辑写在 jsp 里的,直接拉出去祭天
    小公司内部系统基本都是后端包了页面的活,jsp 再加上一两个模版引擎是必须的~
    我们项目里 freemark 就是用来发 html 邮件的~ jsp 就是我们后端狗写页面用的
    HuHui
        13
    HuHui  
       Dec 14, 2018 via Android
    太重了,不好组织结构
    Tengdw
        14
    Tengdw  
       Dec 14, 2018
    jsp 也是模板,thymeleaf freemarker 之类的不觉得写起来比 jsp 爽多了吗?
    coang
        15
    coang  
       Dec 14, 2018
    jsp 太灵活了.. 以至于大量后端不会写前端的时候 直接在 jsp 上边调用 service 层 或者调用 util 代码.. 恶心的不要不要的
    lucahan
        16
    lucahan  
       Dec 14, 2018
    前后端分离,别说 jsp,我们连 thymeleaf,freemarker 之类的都不用。
    momowei
        17
    momowei  
       Dec 14, 2018
    jsp 性能差???我觉得很多人印象流了
    siebenundvierzig
        18
    siebenundvierzig  
       Dec 14, 2018
    1.渲染性能问题,这类前端模板渲染页面时比原生的 JSP 快
    2.大量的 JSP 代码不易于组织与重构
    misaka19000
        19
    misaka19000  
       Dec 14, 2018
    解耦
    zqguo
        20
    zqguo  
       Dec 14, 2018
    不都是前后端分离了么 ?
    MineDog
        21
    MineDog  
       Dec 14, 2018 via Android
    JSP 和后端耦合太重吧
    zpf124
        22
    zpf124  
       Dec 14, 2018   1
    原因不是 jsp 性能如何如何。

    是 JCP 当时的协议规定 jsp 必须运行在 web 容器中,大家都选择了遵守约定不自写模板解析引擎去解析 jsp 模板。

    而且 jsp 的性能并不差...
    HiJackXD
        23
    HiJackXD  
       Dec 14, 2018 via iPhone
    楼上部分朋友逻辑也不科学,jsp 也可以严格使用 mvc 模式使用。而且性能要说比 freemaker 低,我是不信的。最主要还是因为依赖 servlerlt 容器。
    aitaii
        24
    aitaii  
       Dec 14, 2018 via iPhone
    Jsp 是 serverlet 也就是 java
    temp178
        25
    temp178  
       Dec 14, 2018 via Android
    依赖 servlet,需要编译,且没有独立好用的 api,也不便于封装和二次开发,反正不觉得他比正常的模板引擎有啥优点
    aa6563679
        26
    aa6563679  
       Dec 14, 2018 via iPhone
    jsp 编译成 class,相当于 Java 程序直接输出页面数据了,性能怎么会差
    V2exUser
        27
    V2exUser  
       Dec 14, 2018 via Android
    是 vue 不好用?还是不想下班?
    surick
        28
    surick  
       Dec 15, 2018
    讲道理以前直接 jsp+jQuery+bootstrap 一把梭并不觉得比现在前后分离搭那些前端轮子慢
    kassadin
        29
    kassadin  
       Dec 15, 2018
    不是快慢问题吧,是专业的人干专业的事。
    从前端设计模板到 jsp 的过程学会后并不难,但很麻烦
    让前端自己套的话需要完整 server,略懂 jstl,直撸 jsp,还得拉着后端同学去部署才能看到效果
    后端套的话不知道差异点,完整覆盖重新套工作量大,还是得拉着前端同学结对编程,版本记录也比较乱
    俩边测试也麻烦,出了问题不说互相甩锅吧,得结对排查
    分离一下,依照约定的 api 自己就能独立完完成,实际工作中互相依赖的少了,也都轻松了
    o0
        30
    o0  
       Dec 15, 2018 via iPhone
    一只不会 java 但不得不接触其它项目 jsp 的前端菜鸡,表示很痛苦。
    yidinghe
        31
    yidinghe  
       Dec 15, 2018 via Android
    我遇到过的坑,一个 CMS 用 JSP 保存文章,最后内存爆掉,因为每篇文章都是单独的一个类!
    jackson18
        32
    jackson18  
       Dec 15, 2018
    vm 之类的都是可以做页面静态化,性能会好些
    zhyzhy
        33
    zhyzhy  
       Dec 15, 2018
    jsp 最后似乎就是变成了 servlet 然后疯狂 println 出去
    About     Help     Advertise     Blog     API     FAQ     Solana     5327 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 273ms UTC 07:24 PVG 15:24 LAX 00:24 JFK 03:24
    Do have faith in what you're doing.
    ubao msn 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