为什么Java Web框架都没有很好的脚手架?是因为Java不重视或者说不适合前段部分吗?
记得Django和Rails教程都介绍了通过实体生成一个简单的CRUD界面,现在用的ASP.NET MVC这块我觉得做得更好,不仅按照实体字段生成了输入框,对jquery validate集成的也不错。最近看spring mvc或者struts2都没有这块内容。当然可能这么说不合适毕竟spring有spring roo,但是我看过一点roo的教程,我觉得似乎侵入性太强了,可能侵入性这个词不合理,我的意思就是在asp.net mvc中,这个脚手架就是整个开发的一个流程,看spring roo的教程似乎有一种从写html代码换成Dreamware画界面那种感觉。这个应该看使用程度就知道了,使用过ASP.NET MVC中的都会去用脚手架,但是Java web开发中很少人用spring roo。如果说这个功能不需要的话为啥几乎所有web框架都提供。
我开始以为是因为Java本身语言特性的问题,但是我发现php大多框架都支持脚手架,就不太明白了。
我本以为现在国内的开发环境也越来越成熟,越来越正规,就算某种语言有过什么弯路,但是如果不是本质性的问题,比如php很大程度上还算一个面向过程的语言。除此之外现在大家基本功能都应该健全了,毕竟php,Java,.net都是存在超过十年的语言了。
是我某些地方想错了吗?是这些东西真的无所谓吗?我记得以前看某个人的评论说“java是十年前的web技术,php是五年前的,python才是现在的技术”,我还是还觉得是个笑话,Java可是一个oop的多范式语言,语言特性上应该比php好,python虽然某些特性上比较好,但是毕竟是动态语言,好吧php也是动态语言,很多地方静态语言+好的IDE不比动态语言差。难道我理解错了?
虽说java被Oracle接管之后可能有些墨迹,但是人家php的框架也不是官方发布的不是?难道java用户都没有自己写个中小型网站的需求?还是说直接换个语言更方便?
不好意思可能写成牢骚文了。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(24)
其实 java 也有这样的web快速开发框架:
Play2 Framework + play2-crud Plugin
http://www.playmodules.net/module/play2-crud
谢谢,但是play工作机会太少了,比Rails都少啊。
回复
其实我只是不明白既然说Java最大优势就是开源的,人人都可以修改,为什么等了这么久Java都不支持lambda,如果说不需要为什么Java8要提供?而且我在用asp.net时有Orchard,DNN,Kigg,ProDinner,SmartStore.NET等一系列开源的web项目,但是在Java下,问个同学,他都不知道有啥大型开源项目,自己只找到BroadleafCommerce,magnolia-cms或许你觉得差的不多,但是我觉得我能知道去codeplex.com找到合适的学习开源项目,而一些做Java的并没有这种意识就是问题。额,我可能以偏概全了。或者说在github上不像codeplex.com都是asp.net的项目,找起来不容易。而且mono是免费的,entityFramework和ASP.NET MVC都是开源的,当然,开源协议可能不是很合适。
回复
哎,虽然这么说,但是在二线城市可能用ASP.NET MVC的只有三四家公司,而ssh的就多达40多家。京东,天涯甚至stackoverflow这些互联网公司转向Java也是不争的事实。我连加个豆瓣.net小组入眼的标题都是我要不要转Java。博客园很多讨论的都是webform,国内云计算公司没有一家提供.net的运行环境,虚拟主机windows都要比同配置价格都要比linux贵20%,我跟别人说.net是一个设计精良的框架,VS是最好用的IDE,可有啥用啊。人说那为啥用的人那么少?Java95年面世,c#是2000年面世,都10几年的老家伙了,你跟别人说c#在市场时间短不合适啊。我是真不明白,也没办法啊。
@小毛虫 额,抱歉我记错了,是说stackoverflow采用越来越多的Linux服务器,参见【京东今天还在用 .NET 架构的原因是什么?】@酱油程序员:各位叫着StackOverflow或者Joel Spolsky打脸的同志们,其实StackOverflow也有约来越多的东西在用Linux,参见 …
http://zhi.hu/BGxp(分享自 @知乎)
stackoverflow要转JAVA? 哪里来的消息啊
回复
哎,虽然这么说,但是在二线城市可能用ASP.NET MVC的只有三四家公司,而ssh的就多达40多家。京东,天涯甚至stackoverflow这些互联网公司转向Java也是不争的事实。我连加个豆瓣.net小组入眼的标题都是我要不要转Java。博客园很多讨论的都是webform,国内云计算公司没有一家提供.net的运行环境,虚拟主机windows都要比同配置价格都要比linux贵20%,我跟别人说.net是一个设计精良的框架,VS是最好用的IDE,可有啥用啊。人说那为啥用的人那么少?Java95年面世,c#是2000年面世,都10几年的老家伙了,你跟别人说c#在市场时间短不合适啊。我是真不明白,也没办法啊。
java web框架大多数都是很容易扩展,你需要的自动生crud代码完全可以在原有的框架上扩展
微软替你做了太多。做java的总喜欢自己搭配,哪怕有框架,也得再封装一次,不绝对依赖特定框架。一般的crud输入输出框还真没办法满足需求,还是自家公司定制一份的好。
我也考虑过有些场景生成的crud并不合适,但是为什么其他框架都提供呢?我现在做的一个管理配置的界面,要配置各种ip或者参数,这个CRUD页面真的很实用。 另外抛开自动生成的界面ASP.NET生成的界面除了和Jquery Validate的集成外仍然有很多可用的地方,还有参见我另一个问题:http://www.oschina.net/question/944546_137377
我也觉得执着于CRUD是很不好的.一个简单的CRUD写起来也并不费事.即使数量再多,我也不会去生产代码.像你说的,无法满足需求,确实是.
回复
java有各种模板工具,例如freemakre,velocity,如此等等,你所谓的脚手架curd之类,根本算不上什么框架,随便找个懂模板的程序员就可以写一个,不是不健全,更与java无关,而是这类东西太简单了,完全不值一提@
回复
帮忙看看http://www.oschina.net/question/944546_137377其中@Html.ValidationMessageFor(m => m.age)按照实体上面类似Java中注解@Past生成Jquery Validate标签,这些用freemarker如何实现?没用过Freemarker如何按照注解生成标签呢?
回复
我公司的curd输入类名,连三层java,html,js,css,一下子都生成出来了,有什么可争的,至于验证什么的,制定好验证规则就行了,前段验证后端验证可以一起搞!javaer不提这个真的是没必要提,因为没多大可说的!
用过django、rails和java,我只能说,不能把脚本语言那种敏捷思维带入到java中,不适用的。而且做了这么多年的java,无论是遇到做网站的甲方还是做软件的甲方,这种生成的CRUD界面根本无法满足需求!
回复
十年之后Java会比.net更惨,.net用的大型客户也不是一个两个,工商银行,西班牙电信,像微软,红帽这类公司本身就是一个商业服务公司,如果你说他不能带来什么,也只是不能给你带来什么而已
回复
技术用于是为需求服务的.什么特性什么先进性并不重要.如果大家都认为Java会很惨就好了...
回复
你的目的是。。。
首先, 用.NET开发带来的便利性是不容置疑的. 特别是VS IDE可以极大的提高生产力. 其次, .NET用的少很正常。单从成本来说一大批小公司就被拒之门外了(用盗版软件的除外)。微软平台windows server, sql server, visual studio都是要收费的,而且不便宜, 小公司根本用不起. 能用上.NET的基本都是大公司(dell, 甲骨文, 摩根大通等...)
对了, 微软还有一个BizSpark计划(微软免费赠送软件), 想用微软技术创业的可以了解下.
.net先进于java不止一点点
好先进的,我同学公司因为买不起开发工具被逼学php
.net先进于java不止一点点
等会儿让你看结果