飘寒 2011-08-02 11:14
浏览 202
已采纳

spring注解的困惑

 

spring目的是解耦合,使用配置文件方式,一旦出现要修改的地方可以轻松的修改,甚至不用改java文件,不用重新编译等。

1. 如果使用注解方式,比如:@Autowired,那么如果修改起来,还是要修改源文件,重新编译。

2. 对于一些简单的接口实现等,感觉使用自动注入和new区别不大,使用注解和new效果差不多,修改起来都很费事,比如把dao注入到service:

 

@Autowired

@Qualifier("xxDao")

IXXDao xxDao;

IXXDao xxDao = new XXDaoImpl();

     感觉要换个实现类,都要修改源文件,都要修改这里,注解也就是修改量小一些,这样的话注解给人的感觉是解耦合了,但操作起来感觉也不是很简便。

 

3. 使用注解,开发起来很方便,的确比配置文件快,但是维护感觉很郁闷啊,经常修改别人代码,总要ctrl+H搜索自动注入的类在哪。

 

开发很久了,一直用配置文件,最近改用注解了,对于注解有些小疑惑,希望大家讨论讨论,解惑解惑。


  • 写回答

6条回答 默认 最新

  • ElementaryJava 2011-08-02 13:19
    关注

    个人见解:
    当你的dao中xml配置有30-40个 那你的配置文件是不是很大了
    阅读起来就不怎么舒服了.
    有annotation 那么xml配置文件就简洁多了 只要一句自动扫描得配置就好了
    但是也有缺点,无法对.class 文件 进行注入 这是只能用xml了
    主要还是要看项目的约定,规定用annotation那就用annotation
    规定用xml就用xml :D

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!