Spring 核心功能之一【IoC容器】依赖注入接口,层级包命名规范

简介: Spring 核心功能之一【IoC容器】依赖注入接口,层级包命名规范

1.图集导航


7c43d6d6aee44f38873ac16b2b76514f.png


1.1 为什么对包名的命名要有所规范呢!


  • 使用规范的命名有益于程序的开发和后期阅读
  • 通俗的说:就是自己写的代码别人也能看的懂,代码结构不会乱,知道自己写什么


2. 代码数据关联【可参考】


2.1 FilmDao接口

public interface FilmDao {
    void selectAll();
}

FilmDaoImpl 接口实现类

@Repository("filmDao")
public class FilmDaoImpl implements FilmDao {
    @Override
    public void selectAll() {
         System.out.println("dao-film");
    }
}

2.2 daomain 【Film类】

----现阶段还没有Spring整合MyBatis,该类现在用不到

//JavaBean
public class Film {
    private String fname ;
    private Double fprice ;
 //注:构造和set/get方法省略
}

2.3 FilmService 接口

1. public interface FilmService {
2.    void selectAll();
3. }


FilmServiceImpl 接口实现类

@Service("filmService")
public class FilmServiceImpl implements FilmService {
    //依赖注入
    @Resource(name="filmDao")
    private FilmDao film;
    @Override
    public void selectAll() {
        film.selectAll();
        System.out.println("service-film");
    }
}

2.4 FilmController 接口

1. public interface FilmController {
2.    void selectAll();
3. }


FilmControllerImpl 接口实现类


@Controller("filmController")
public class FilmControllerImpl implements FilmController {
    //依赖注入
    @Resource(name="filmService")
    private FilmService filmService;
    @Override
    public void selectAll() {
        filmService.selectAll();
        System.out.println("controller-film");
    }
}

2.5 FilmConfiguration 配置类

1. @Configuration  //声明配置类
2. @ComponentScan(basePackages = "com.czxy")  //加载所需要的包
3. public class FilmConfiguration {
4. }


2.6 TestFilm 测试类

@RunWith(SpringRunner.class) //Spring整合Junit
@ContextConfiguration(classes = FilmConfiguration.class)  //加载配置类
public class TestFilm {
    //依赖注入
    @Resource(name="filmController")
    private FilmController filmServlet;
    @Test
    public void test(){
        filmServlet.selectAll();
    }
}


测试结果


46ec9ccb30174baaaa11552f76d1dc00.png


3.图集总结


268019f6c78b41dd8d546aa97b412f92.png



相关文章
|
9月前
|
XML Java 测试技术
《深入理解Spring》:IoC容器核心原理与实战
Spring IoC通过控制反转与依赖注入实现对象间的解耦,由容器统一管理Bean的生命周期与依赖关系。支持XML、注解和Java配置三种方式,结合作用域、条件化配置与循环依赖处理等机制,提升应用的可维护性与可测试性,是现代Java开发的核心基石。
|
XML 人工智能 Java
Spring IOC 到底是什么?
IOC(控制反转)是一种设计思想,主要用于解耦代码,简化依赖管理。其核心是将对象的创建和管理交给容器处理,而非由程序直接硬编码实现。通过IOC,开发者无需手动new对象,而是由框架负责实例化、装配和管理依赖对象。常见应用如Spring框架中的BeanFactory和ApplicationContext,它们实现了依赖注入和动态管理功能,提升了代码的灵活性与可维护性。
303 1
|
XML Java 数据格式
京东一面:spring ioc容器本质是什么? ioc容器启动的步骤有哪些?
京东一面:spring ioc容器本质是什么? ioc容器启动的步骤有哪些?
|
11月前
|
Kubernetes Docker Python
Docker 与 Kubernetes 容器化部署核心技术及企业级应用实践全方案解析
本文详解Docker与Kubernetes容器化技术,涵盖概念原理、环境搭建、镜像构建、应用部署及监控扩展,助你掌握企业级容器化方案,提升应用开发与运维效率。
1378 108
|
12月前
|
存储 监控 测试技术
如何将现有的应用程序迁移到Docker容器中?
如何将现有的应用程序迁移到Docker容器中?
822 57
|
9月前
|
监控 Kubernetes 安全
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
蒋星熠Jaxonic,技术探索者,以代码为笔,在二进制星河中书写极客诗篇。专注Docker与容器化实践,分享从入门到企业级应用的深度经验,助力开发者乘风破浪,驶向云原生新世界。
829 52
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
|
9月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
917 6