锁定老帖子 主题:Spring--也许正成为一个EJB
该帖已经被评为良好帖
|
|
---|---|
作者 | 正文 |
发表时间:2011-04-15
不太理解这帖子也只能被评为良好帖子!
如所言:“如果你设计了一个API,却很容易让人误用(或者是进行了错误的宣传),那么责任是使用者还是开发者呢?”,楼主自己误用了(当然也还有相当一部分人误用了),把原因全部推倒Spring上面,然后就认为Spring不好。 其他为了接口而接口、配置文件的问题,希望楼主好好研究一下Spring再来评论,Spring是不存在这些问题的。 |
|
返回顶楼 | |
发表时间:2011-04-15
spring能在一定的范围内解决一定的问题,使用起来优点多于缺点
|
|
返回顶楼 | |
发表时间:2011-04-15
最后修改:2011-04-15
引用 楼主能评价出来spirng的一些误用.滥用.说明你用过,但是你评价出来的这几点.也正好说明你也只是用到了spirng的皮毛.
也就是说.你用的这些个皮毛.其实完全没必要使用spirng都可以实现,或者有更好的办法实现.说以楼主才发了这个帖子. 大家没必要跟帖了.万事万物,一物克一物,天生我才必有用.spring的精华不是楼主你这么两三句就给其否定了. 不知道是我表达有问题,还是别的原因。 我一直在说,如果用Template,Transaction这些东西,我觉得很OK了,简化了开发,没有任何问题。 但现在就是你说的那些皮毛的内容,却大量被使用,而且不管场合地使用。 就象你说的,现在有多少没有必要用Spring实现的东西,都被硬套上了Spring。 现在大家回头看一下团队的代码,哪些内容是用了精华的东西,哪些内容是为了接口而接口,我不好臆断到底有多少,但绝对不少。 Spring也有精华所在,我也没有去否认这些东西。 我只是想提醒大家,Spring现在被滥用的很严重,而且很多地方有误导的情况,希望大家使用的时候,多想一下。 |
|
返回顶楼 | |
发表时间:2011-04-15
楼主的见解很深刻,就我个人认为,spring在做中小型项目里,其开发时间及学习成本太高。
我一直在寻求一种更快捷但不失灵活的J2EE开发方法,Spring内部提供的功能还是很好的,但使用来做开发难免复杂。 也正如楼主所说,现在用Spring的人基本都是知道大家用而自己用,没有深入理解Spring的思想(当然,要理解不是一件很容易的事情),也谈不上能把这工具用好啦 当然,我一直没有在工作中使用过Spring,也没有深刻认识到非得要用这东西! |
|
返回顶楼 | |
发表时间:2011-04-15
非常赞同“面向接口编程”应该改为“面向抽象编程”
|
|
返回顶楼 | |
发表时间:2011-04-15
Spring使用元注解也可以避免复杂的XML方式的配置,Spring就是一个工具提供了很多功能,如何使用就完全看使用者对工具掌握的熟练程度了
|
|
返回顶楼 | |
发表时间:2011-04-15
fhjxp 写道 不太理解这帖子也只能被评为良好帖子!
如所言:“如果你设计了一个API,却很容易让人误用(或者是进行了错误的宣传),那么责任是使用者还是开发者呢?”,楼主自己误用了(当然也还有相当一部分人误用了),把原因全部推倒Spring上面,然后就认为Spring不好。 其他为了接口而接口、配置文件的问题,希望楼主好好研究一下Spring再来评论,Spring是不存在这些问题的。 我说过Spring存在这些问题吗?我把问题推到Spring上了吗? 我一直在说,大家误用了Spring,而且很严重。 Spring有很多地方,设计的不错。但同样,有些设计也是比较容易误用的,当然这是一个选择问题,我不赞同,并不代表它有问题,毕竟要面对的场景不同,只是个人观点而已。 我更喜欢ServiceLocator,Lookup,Extension Point这些设计。 每种设计都不完美,但如果把一个东西不管场合去用,那么怎么说呢? |
|
返回顶楼 | |
发表时间:2011-04-15
wl95421 写道 引用 本来想注册一个马甲来写这个帖子的,因为估计自己会被骂得很惨。
引用 依赖注入并不是不好,但Spring的依赖注入并不是很好
虽然我没用过Ejb,但是Spring的DI目前来看应该是事实上的标准了吧?我没听过有其他的框架做的比Spring更好. 楼主也说Spring有大量的配置文件. 我专门数了下我用Spring3MVC做的项目中Spring配置文件. 不算dataSource相关的配置的话 Spring的配置只有5行. SrpingSource出的STS甚至帮你把写这5行spring配置文件的步骤都省了... 楼主说的Spring大量配置文件也许指的是Spring2.0以前的Spring了 当时Spring的确需要大量的xml配置. 尤其恼火的是每个接口都要手动注入. 项目大了看着N个几百行的xml文件维护起来痛不欲生. 但是时代在进步,Spring也在进步. 现在再讲Spring配置文件过多就不合时宜了. 至于那些说接口编程模式没用的.楼主中间的一段话已经说的很明白了 引用 另外说一句,“面向接口编程”,这话里的接口不是java的interface,如果真正翻译一下,应该是“面向抽象编程”,也就是说,将功能抽象出来,然后通过对外的内容提供功能,至于对外的内容是interface,还是class,要看具体的情况。
请好好的理解这句话的意思 我举个例子,如果你需要处理一个业务逻辑.一个dao里是完成不了的 但我们可以在service上完成.在同一个类里调用多个dao再加上Transactional就可以了 然后在controller调用service接口. 当然你也可以说我直接用存储过程啊.所以service层根本就不需要. 我说一个很简单的东西专门写一个存储过程麻烦不麻烦啊.维护起来麻不麻烦啊. 总的来说Spring是个好东西. 骂他的人很多,喜欢他的人也多,但是都在用他. |
|
返回顶楼 | |
发表时间:2011-04-15
spring其实就是一个在特定时间,特定场景解决问题的东西,只是现在被滥用的情况确实非常的多,好多项目就是为了spring而spring。
|
|
返回顶楼 | |
发表时间:2011-04-15
引用 但是时代在进步,Spring也在进步.
现在再讲Spring配置文件过多就不合时宜了. 这个涉及到大家使用Spring的习惯。 至于AutoWire和Annotation,我个人也不是很支持。 如果真正要用,可能XML比Annotation更好一些。 当然这个问题比较扯了,不在这里讨论了。 也许你团队用Spring好一些,问题少一些,但是据我所知,情况未必乐观。 |
|
返回顶楼 | |