首页 > 其他分享 >Spring的autoware自动装配,xml版

Spring的autoware自动装配,xml版

时间:2022-10-22 16:45:45浏览次数:48  
标签:xml oxygen Spring autoware bookDao import save com public

1.BookDaoImpl.class

这个类的对象将会被自动装配注入到BookServiceImpl类里面。

BookServiceImpl类里面讲调用BookDaoImpl类的方法。

package com.oxygen.dao.impl;

import com.oxygen.dao.BookDao;

public class BookDaoImpl implements BookDao {

    public void save() {
        System.out.println("Book Dao Save...");
    }
}

 

2.BookServiceImpl.class

此类和BookDaoImpl有依赖关系.

注意:在使用autowaire自动装配时,必须有个setter方法,也即setter注入。

package com.oxygen.service.impl;

import com.oxygen.dao.BookDao;
import com.oxygen.service.BookService;

public class BookServiceImpl implements BookService {
    private BookDao bookDao;

    //使用autowaire,需要有setter方法
    //如果没有setter,会报空指针异常
    public void setBookDao(BookDao bookDao) {
        this.bookDao = bookDao;
    }


    public void save() {
        System.out.println("Book Service save...");
        bookDao.save();
    }
}

 

3.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">
    
    <bean id="bookDao" class="com.oxygen.dao.impl.BookDaoImpl"/>
    <bean id="bookService" class="com.oxygen.service.impl.BookServiceImpl" autowire="byType"/>
    
</beans>

  

4.测试:

package com.oxygen;

import com.oxygen.service.BookService;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

/**
 * Hello world!
 *
 */
public class App 
{
    public static void main( String[] args )
    {

        ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
        BookService bookService = (BookService) context.getBean("bookService");
        bookService.save();
    }
}

 

标签:xml,oxygen,Spring,autoware,bookDao,import,save,com,public
From: https://www.cnblogs.com/majestyking/p/16816389.html

相关文章

  • spring七大功能模块
    1、CoreCore模块是Spring的核心类库,Core实现了IOC功能。2、AOPApringAOP模块是Spring的AOP库,提供了AOP(拦截器)机制,并提供常见的拦截器,供用户自定义和配置。3、orm提供对常......
  • 16.Springboot集成Websocket
    Springboot集成Websocket1.导入pom依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId><......
  • xml 解析技术介绍和解析xml文件
     xml解析技术介绍xml可扩展的标记语言。不管是html文件还是xml文件它们都是标记型文档,都可以使用w3c组织制定的dom技术来解析。document对象表示的是整个文档(......
  • SpringCloud-02 Eureka学习笔记
    ​一、Eureka简介1、什么Eureka?Netflix在涉及Eureka时,遵循的就是API原则.Eureka是Netflix的有个子模块,也是核心模块之一。Eureka是基于REST的服雾,用于定位服雾,以实现云端中......
  • SpringCloud-01 Rest学习环境搭建笔记
    @​​TOC​​写在前面由于刚开始创建第一个项目的时候,出现了版本冲突问题,所以最后没有启动下来,但是我大部分的图片都是用的第一次的,所以大家可以主观的把图片中父项目Spring......
  • SpringCloud-03 Netflix Ribbon学习笔记
    @​​TOC​​一、Ribbon简介1、什么是Ribbon?SpringCloudRibbon是基于NetflixRibbon实现的一套客户端负载均衡的工具,它可以很好地控制HTTP和TCP客户端的行为。简单的......
  • 三,SpringBoot Banner修改
     在上一节中已经知道怎么创建springboot项目了,是时候放松下了,于是乎看到别人bannner与众不同,我也想拥有,,,编辑不整是不可能的,废话不多说,直接开整1.去网站生成想要的banner图:......
  • Spring
    Spring:学习视频-狂神说Spring:视频链接Spring1、Spring概述1.1、简介Spring:春天--->给软件行业带来了春天2002年,RodJahnson首次推出了Spring框架雏形inter......
  • 解决vue请求springBoot项目时跨域问题
    由于浏览器同源策略的限制,如果请求url的协议、域名、端口号中有一项不同,就会产生跨域问题当我们在本地开始前后端分离项目时,必然会启动不用的端口,所以就会发生跨域问题比......
  • SpringBoot中如何集成Servlet呢?
    下文笔者将讲述两种SpringBoot集成Servlet的方法,如下所示:实现思路:方式1:使用全注解的方式开发1.1在启动类上面加上注解@ServletComponentScan1.2编写Servlet程序,并在S......