自动装配

数据层:

业务层:

自动装配:

结果:

若是将自动装配的注解放在set函数处:

结果:

结果相同,若是将set方法去掉的话:

结果:

这样的话,set方法也得到解放了耶!

以上都是按照类型装配,也就是说,若是存在两个类型相同的对象,必会报错!

那么,在这种情况下,我们就需要引入名称进行装配了:

在两个相同类型不同对象的BookDao已经分别命名完成之后

较笨的方法,可以在可执行文件里面将BookDao命名为相应的命名名称进行调用(十分不推荐,了解即可)

使用注解@Qualifier("名称")进行调用:

注意!我们的自动装配的注解是不能删掉的!qualifier的使用必须有autowired的参与

使用@Value()可以实现简单类型的注入

例如:

要是想要更加灵活的话,我们可以这么做:

我们可以利用上jdbc.properties文件:

然后在配置文件里面利用注解调用到jdbc.properties:

然后就直接在实现类里面进行调用:

得到结果:

完成!这种方法耦合度低,需要记住!

Spring--注解开发+依赖注入的更多相关文章

  1. Java开发学习(十二)----基于注解开发依赖注入

    Spring为了使用注解简化开发,并没有提供构造函数注入.setter注入对应的注解,只提供了自动装配的注解实现. 1.环境准备 首先准备环境: 创建一个Maven项目 pom.xml添加Spring ...

  2. 07 Spring框架 依赖注入(四)基于注解的依赖注入

    前面几节我们都在使用xml进行依赖的注入,但是在实际的开发中我们往往偏爱于使用注解进行依赖注入,因为这样更符合我们人的思维,并且更加快捷,本节就来讲述Spring基于注解的依赖注入: 信息注入注解 @ ...

  3. spring 四种依赖注入方式以及注解注入方式

    平常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,spring提出了依赖注入的思想,即依赖类不由程 ...

  4. Spring:基于注解的依赖注入的使用

    1.什么是pojo?什么是bean? 首先,在之前几篇Spring的介绍文章当中,自己都提到了一个名词叫做POJO类,但是在回顾Spring的注解的使用的时候,去形容java当中的对象还有一个名词是叫 ...

  5. Spring Boot2(007):关于Spring beans、依赖注入 和 @SpringBootApplication 注解

    一.关于Spring beans 和 依赖注入(Dependency Injection) spring boot 和 Spring 全家桶无缝衔接,开发过程中可以很轻松地使用 Spring 全家桶的 ...

  6. spring六种种依赖注入方式

    平常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,spring提出了依赖注入的思想,即依赖类不由程 ...

  7. JavaEE开发之Spring中的依赖注入与AOP

    上篇博客我们系统的聊了<JavaEE开发之基于Eclipse的环境搭建以及Maven Web App的创建>,并在之前的博客中我们聊了依赖注入的相关东西,并且使用Objective-C的R ...

  8. JavaEE开发之Spring中的依赖注入与AOP编程

    上篇博客我们系统的聊了<JavaEE开发之基于Eclipse的环境搭建以及Maven Web App的创建>,并在之前的博客中我们聊了依赖注入的相关东西,并且使用Objective-C的R ...

  9. 浅尝Spring注解开发_Bean生命周期及执行过程

    Spring注解开发 浅尝Spring注解开发,基于Spring 4.3.12 包含Bean生命周期.自定义初始化方法.Debug BeanPostProcessor执行过程及在Spring底层中的应 ...

  10. Spring注解开发_Spring容器创建概述

    浅尝Spring注解开发_Spring容器创建概述 浅尝Spring注解开发,基于Spring 4.3.12 概述Spring容器创建的过程,包括12个方法的执行 浅尝Spring注解开发_自定义注册 ...

随机推荐

  1. Java基础——二维数组

    package com.zhao.demo; public class Demo08 { public static void main(String[] args) { //二维数组 int[][] ...

  2. Unity算法之A星- A*Pathfind Project插件的使用

    先上效果图 首先上  插件地址  (如果没有积分可以评论区联系我) 1.下载完毕后导入unity 导入后可以在Component里面看到多了一个Pathfinding选项 2.场景搭建 首先新建两个层 ...

  3. Morris遍历以及Morris前序中序后序遍历实现

    #include<iostream> using namespace std; struct TreeNode{ int val; TreeNode* right; TreeNode* l ...

  4. Dos基本命令及批处理

    如何操作DOS命令: 开始----运行----cmd----回车: win+R------运行----cmd----回车: 基本命令: 1.命令:color f0 color ?  寻求帮助 改变背景 ...

  5. 使用Latex错误集

    1.写公式的函数--align(最怕空行) (1)align用法示例 \begin{align} & \left\{ \begin{array}{ll} \sup\limits_{\tilde ...

  6. 学习笔记||使用Vue时踩过的坑2.0

    6.Vue指令之v-show篇 v-show的功能,其功能类似于v-if 1.判断某个元素是否显示或隐藏 <el-button v-show="list.power == 1" ...

  7. Linux 使用Samba或NFS实现文件共享

    SAMBA文件共享服务 Samba是一款开源的文件共享软件,经过简单配置就能够实现Linux系统与Windows系统之间的文件共享工作. 例1:配置Samba服务前,先删掉Samba服务主配置文件中的 ...

  8. xShell执行js脚本

    var CMD = 'ls'; var INTERVAL = 1; var MAX = 5; var CR = String.fromCharCode(13); var LF = String.fro ...

  9. 一,创建一个electron应用程序

    之前我们已经用html+css+js创建了一个项目,现在将这个项目用electron以应用程序呈现. 1,首先新建一个文件夹,从终端进入该文件夹: 2,在该文件夹下执行npm init,初始化该项目. ...

  10. jsp第6个作业—jdbc

    UsersDao.java package a; import java.sql.Connection; import java.sql.PreparedStatement; import java. ...