首页 > 其他分享 >IoC入门案例

IoC入门案例

时间:2023-05-07 15:11:54浏览次数:40  
标签:入门 dao BookDao example 案例 org save IoC public

跟着黑马,简单写一个小的测试程序,学习一下IoC

第一步,导入Spring的坐标Spring-context,对应的版本是2.1.10.RELEASE

黑马刚开篇讲的是,springframework,需要用到这个maven依赖

 <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.2.10.RELEASE</version>
        </dependency>

Ps.别忘了加一下junit测试依赖

第二步,配置所需的bean

解释一下各类的标签作用吧

bean标签表示配置bean
id属性表示给bean起名字
class属性表示给bean定义类型

第三步,获取IoC容器

第四步,获取bean

运行测试结果

我是根据黑马这期课程学的,有兴趣的朋友可以自己尝试一下
https://www.bilibili.com/video/BV1Fi4y1S7ix?p=6&vd_source=05d486328adc7a106efad2adad535e45

附上目录和代码吧

applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!--1.导入Spring的坐标Spring-context,对应的版本是2.1.10.RELEASE-->
    <!--2.配置bean-->
<!--    bean标签表示配置bean-->
<!--    id属性表示给bean起名字-->
<!--    class属性表示给bean定义类型-->

    <bean id="bookDao" class="org.example.dao.impl.BookDaoImpl"></bean>

    <bean id="bookService" class="org.example.service.impl.BookServiceImpl"></bean>

</beans>

App2.java

package org.example;

import org.example.dao.BookDao;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class App2 {
    public static void main(String[] args) {
        //3.获取IoC容器
        ApplicationContext ctx = new  ClassPathXmlApplicationContext("applicationContext.xml");

        //4.获取bean
        BookDao bookDao = (BookDao) ctx.getBean("bookDao");

        bookDao.save();



    }
}

BookDaoImpl

package org.example.dao.impl;


import org.example.dao.BookDao;

public class BookDaoImpl implements BookDao {
    public void save() {
        System.out.println("book dao save ...");
    }
}

BookDao

package org.example.dao;

public interface BookDao {
    public void save();
}

BookServiceImpl

package org.example.service.impl;


import org.example.dao.BookDao;
import org.example.dao.impl.BookDaoImpl;
import org.example.service.BookService;

public class BookServiceImpl implements BookService {
    //5.删除业务层中使用new的方式创建的dao对象
    private BookDao bookDao = new BookDaoImpl();

    public void save() {
        System.out.println("book service save ...");
        bookDao.save();
    }
    //6.提供对应的set方法
    public void setBookDao(BookDao bookDao) {
        this.bookDao = bookDao;
    }
}

BookService

package org.example.service;

public interface BookService {
    public void save();
}

标签:入门,dao,BookDao,example,案例,org,save,IoC,public
From: https://www.cnblogs.com/yzx-sir/p/17379344.html

相关文章

  • 【笔记】跟吴恩达和IsaFulford学提示词工程(初级开发者入门课程)
    标签:#Prompt#LLM创建时间:2023-04-2817:05:45链接:课程(含JupyterNotebook),中文版讲师:AndrewNg,IsaFulford阅读提示这是一篇入门的教程,入门的意思是指大部分内容,可能你都已经知道了,但是知道不等于掌握,Prompt是一门实践经验主义科学,LLM是个黑盒,你只要不断去“实践”才能......
  • Nginx 入门实战(3)--Nginx 常用配置参数说明
    Nginx中包含众多的参数,这些参数影响Nginx的行为;本文主要介绍一些常用的参数。1、Nginx配置文件基本结构Nginx的配置文件为conf/nginx.conf,配置文件由配置指令/参数组成,有些指令/参数位于main的位置(如:events、http),有些指令/参数位于其他参数下(如:server位于http下);......
  • ICT实战系统集成-LAB2-openEuler 命令行基础操作入门
    ICT实战系统集成-实验02-openEuler命令行基础操作入门1思考题1.1创建一个/iamthebest目录;1.2在/iamthebest目录下创建/cat和/dog两个目录;1.3将/etc/passwd文件复制到/iamthebest目录;并查看被复制文件的操作权限;1.4尝试执行cp-i/etc/passwd.你会发现什么?为什么......
  • 【SSH】SSH框架(三)——Spring IOC和AOP的容器框架
    一、前言      在上一篇博客《【SSH】SSH框架(二)——Struts2框架的简单认识》中小编向大家简单的介绍了SSH框架中的第一个S,也就是Struct2。接下来小编将会向大家分享第二个S——Spring。二、Spring是干什么用的?      其实在小编以前做过的项目中也使用过Spring,那个时候......
  • spring3.0 mvc和rest入门例子
    关键字:spring3.0mvc和rest入门例子现在写个简单的小例子出来给初学者学习下。srping3也支持rest,所以例子也包括这部分内容。先看web.xml配置<!--像js,css,gif等静态文件,需要配置为默认的servlet--><servlet-mapping><servlet-name>defaul......
  • Docker 入门使用 (二)
    配置国内的源>/etc/docker/daemon.json{"registry-mirrors":["https://mirror.ccs.tencentyun.com","http://registry.docker-cn.com","http://docker.mirrors.ustc.edu.cn","http://hub-mirror.c.163.com......
  • iBatis简单入门教程
       iBatis简单入门教程 iBatis简介:iBatis是apache的一个开源项目,一个O/RMapping解决方案,iBatis最大的特点就是小巧,上手很快。如果不需要太多复杂的功能,iBatis是能够满足你的要求又足够灵活的最简单的解决方案,现在的iBatis已经改名为Mybatis了。官网为:ht......
  • Oracle到国产数据库DM的迁移案例
    Oracle到国产数据库DM的迁移案例 阿依纳伐 发表于2020/12/2510:37:49  3.5k+  0  0 【摘要】对于达梦数据库,我在19年之前还没有听过,第一次听到达梦,金仓数据的时候还是我们打算开始做鲲鹏专家服务的技术研讨会上,数据库专家在说国产数据库的提到达梦和金仓,感觉完......
  • 嵌入式开发入门-51单片机基础知识(9)- DS18B20
    一、DS18B20简介1、DS18B20是一个数字温度传感器,单总线传输数据,测量温度范围为-45℃-125℃,测量精度可配置为9位,10位,11位,12位,默认配置12位,分别对应0.5℃、0.25℃、0.125℃和0.0625℃。二、温度测量1、由于DS18B20通电后,处于空闲状态,不进行温度测量和转换,所以必须发出转......
  • SpringWeb Flux入门
    新建项目,加入依赖:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-webflux</artifactId></dependency><dependency><groupId>org.springframew......