利用Spring IOC DI 实现软件分层解耦

本文探讨了MVC设计思想在软件开发中的应用,特别是在JavaEE领域的经典三层架构。通过Spring框架的IOC和DI特性,实现了高内聚低耦合的设计目标,介绍了如何在各层间设计接口及Spring在EasyMall项目中的具体实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

软件分层思想回顾
在软件领域有MVC软件设计思想,指导着软件开发过程。在javaee开发领域,javaee的经典三层架构MVC设计思想的经典应用。而在软件设计思想中,追求的是"高内聚 低耦合"的目标,利用Spring的IOC 和 DI 可以非常方便的实现这个需求。

Spring IOC DI 改造EasyMall
在层与层之间设计接口,面向接口编程:

计算机生成了可选文字:SpringDem002 E M cn.tedu.em.dao > 国 MySqllJserDaojava 国 UserDao.Java
〉 国 XmllJserDao.Java 〉 国 UserService•Java > 国 UserServiceImpl.Java

国 UserServiceImplStaticProxy•Java u 乜 applicationContext.xml

不再直接创建对象,而是通过Spring注入:

计算机生成了可选文字:@Contr011er public class RegistServ1et { @Autowired
p e U S e r S e r V 1 ( e USerSerVICe; public void regist( ) {
new User(), " z s " " 财 帅 〔 U S e r u S e r
u S e r S e r V 1 C e . StUser(user);

计算机生成了可选文字:public class UserServ1ceImp1 implement s U s e r S e r v 1 ( e {
@Autowired private U S e r D a 0 u S e r Da 0 . public void upToVIP(User user)f

如果存在多个实现类,则通过指定名称声明的id,实现使用指定实现类的bean:

计算机生成了可选文字:impo cn.tedu.em.domaIn.User; public interface U s e r D a 0 {
public void addlJser(User user); public void updateUser(User user);
public void deleteUser(int i d ) , public U s e r queryuser(int i d ) ,

计算机生成了可选文字:@Repository public class Xm1UserDao implement s UserDaof

计算机生成了可选文字:@Repository ( “userDao” )
public class MySq1UserDao implement s UserDaof

计算机生成了可选文字:public class UserServiceImp1 implement s U s e r S e r v 1 ( e {
@Autowired p e U S e r D a 0 userDao;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值