框架中的注解开发与解耦合思想矛盾吗?

[复制链接]
查看11 | 回复6 | 2021-1-27 05:15:04 | 显示全部楼层 |阅读模式
首先先声明一下我是一个还处于学习阶段的小白,近期在一些框架的学习中产生了这样的疑惑:
框架能够帮助我们优化代码、简化开发、并且降低耦合程度,尤其是对于传统javaEE项目中,在dao层书写sql代码曾一度被诟病说sql+java写在一起耦合死了,不利于后期的维护。
于是我学习了MyBatis框架的xml开发,其将sql语句配置到映射文件中的做法虽然麻烦了点,却也完成了解耦合,但是后边学习了的MyBatis注解开发我就不明白了,直接把sql语句写在了注解中,这不就又回去了吗,只不过是少了dao这一层的实现类而已欸?
不知能否有大佬详解谢谢~

分 -->
回复

使用道具 举报

千问 | 2021-1-27 05:15:04 | 显示全部楼层
这要看你怎么理解你的sql,如果你把sql看成与独立于代码的一个东西,那sql是需要单独写在其他地方的。如果你把sql看作是事务的一部分,那sql跟着代码就可以了。
一般维护都是基于业务的,所以sql写在代码里没什么问题
回复

使用道具 举报

千问 | 2021-1-27 05:15:04 | 显示全部楼层
解耦合这些理论很容易理解,难的是你知道什么算耦合什么不算耦合,应用开发里各种业务都有,事物与事物之间的关系千变万化,错综复杂,理清楚之间的关系才是难的地方
回复

使用道具 举报

千问 | 2021-1-27 05:15:04 | 显示全部楼层
不矛盾的。
回复

使用道具 举报

千问 | 2021-1-27 05:15:04 | 显示全部楼层
引用2楼鸣鸣Amadues的回复:这要看你怎么理解你的sql,如果你把sql看成与独立于代码的一个东西,那sql是需要单独写在其他地方的。如果你把sql看作是事务的一部分,那sql跟着代码就可以了。
一般维护都是基于业务的,所以sql写在代码里没什么问题

原来是这样谢谢解答~
回复

使用道具 举报

千问 | 2021-1-27 05:15:04 | 显示全部楼层
sql和dao,是一对一的关系,不存在你说的思想矛盾
回复

使用道具 举报

千问 | 2021-1-27 05:15:04 | 显示全部楼层
MyBatis支持注解和xml方式,并没有说必须二选其一用,所以你可以混着用,个人理解注解方式的存在主要是针对单表做操作,xml用于复杂的操作
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行