Spring--IOC注解用法初探
创建一个UserDao接口,和一个UserDaoImp的实现类
UserDao接口
package com.zjw.spring.demo1;
public interface UserDao {
public void save() ;
}
UserDaoImp实现类
IOC注解时需要在类上加上Component(“标识”)
为属性添加注解时需要在属性声明式添加@Value(“属性的值”)
属性有set方法时需要在set方法上加上@Value(“属性的值”)
标识为创建该类时使用
package com.zjw.spring.demo1;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Component("userDao")
public class UserDaoImp implements UserDao {
@Value("zjw")
private String name;
@Override
public void save() {
System.out.println("UserDaoImp save()方法执行了。。。"+name);
}
}
applicationContext.xml
在需要注解的类上加上context:component-scan,并且添加所在的包
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
<!-- Spring的IOC注解入门 -->
<!-- 使用IOC的注解开发,配置扫描 -->
<context:component-scan base-package="com.zjw.spring.demo1"></context:component-scan>
</beans>
SpringDemo1测试类
package com.zjw.spring.demo1;
import org.junit.jupiter.api.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
/**
* Spring的IOC注解开发测试类
* @author zhujunwei
* 2019年4月18日 上午9:47:58
*/
public class SpringDemo1 {
/**
* 传统方式
*/
@Test
public void demo1() {
UserDao userDao = new UserDaoImp();
userDao.save();
}
/**
* Spring的IOC注解方式
*/
@Test
public void demo2() {
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
UserDao userDao = (UserDao) applicationContext.getBean("userDao");
userDao.save();
}
}
运行demo2方法时结果
UserDaoImp save()方法执行了。。。zjw
Spring--IOC注解用法初探的更多相关文章
- Spring常用注解用法总结
转自http://www.cnblogs.com/leskang/p/5445698.html 1.@Controller 在SpringMVC 中,控制器Controller 负责处理由Dispat ...
- spring IOC注解与xml配置
转载自:https://blog.csdn.net/u014292162/article/details/52277756 IOC 1小案例 将对象的依赖交给配置文件来配置(配置文件的名字是可以任意的 ...
- spring IOC注解方式详解
本文分为三个部分:概述.使用注解进行属性注入.使用注解进行Bean的自动定义. 一,概述 注释配置相对于 XML 配置具有很多的优势: 它可以充分利用 Java 的反射机制获取类结构信息,这些信息可以 ...
- spring ioc 注解配置
要注意spring 版本与jdk的兼容性 applicationContext-resource.xml: <beans xmlns="http://www.springframewo ...
- spring IOC 注解@Required
@Required注解适用于bean属性的setter方法,使用@Required的方法必须在xml中填充,负责报错 例如下面的例子中,student中的setAge和setName有@Require ...
- spring IOC 注解@Resource
1.@Resource(重要)a)加入 :j2ee/common-annotations.jar b)默认按名称,名称找不到,按类型 默认按照名称setName1到xml中找和id相同的,没有的话再找 ...
- spring IOC 注解@Autowired
自动装配:按照类型来找 会在xml中找类型一样的, 比如 setMessage(SetName setName)上面有@Autowired,会到xml中找<bean id="setna ...
- Mybatis是如何将Mapper接口注册到Spring IoC的
1. 前言 有时候我们需要自行定义一些注解来标记某些特定功能的类并将它们注入Spring IoC容器.比较有代表性的就是Mybatis的Mapper接口.假如有一个新的需求让你也实现类似的功能你该如何 ...
- Spring _day02_IoC注解开发入门
1.Spring IoC注解开发入门 1.1 注解开发案例: 创建项目所需要的jar,四个基本的包(beans core context expression ),以及两个日志记录的包,还要AOP的包 ...
- Java Spring IOC用法
Java Spring IOC用法 Spring IoC 在前两篇文章中,我们讲了java web环境搭建 和 java web项目搭建,现在看下spring ioc在java中的运用,开发工具为In ...
随机推荐
- lvm相关命令及/etc/fstab开机挂载
名词解释: PV: 物理卷(physicalvolume)物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区.磁盘等)比 ...
- JavaScript 之 高级程序设计 基础篇 (一)
导读 此篇文章为作者拜读JavaScrpit 第四版(红宝石)的笔记内容.适用于有经验的程序员阅读:作者 java开发出身.在之前前后端不分离的时代 使用esayUI JQuery的时代 经常写 js ...
- CART回归树基本原理(具体例子)
id3不能直接处理连续性的特征,需要将连续性的转化成离散的,但是会破坏连续性特征的内在结构. 一.概念 CART全称叫Classification and Regression Tree.首先要强调的 ...
- 傻妞教程——对接使用redis储存,更快的读写速度
Redis的特点 1.Redis支持数据的持久化,可以将内存中的数据保存在磁盘中. 2.Redis数据读写速度非常快,因为它把数据都读取到内存当中操作. 3.Redis支持数据的备份,即master- ...
- Flink - [08] 状态一致性
题记部分 一.什么是状态一致性 有状态的流处理,内部每个算子任务都可以有自己的状态.对于流处理器内部来说,所谓的状态一致性,其实就是我们所说的计算结果要保证准确.一条数据也不应该丢失,也不应该重复 ...
- 大数据之路Week08_day02 (Flume架构介绍和安装)
Flume架构介绍和安装 写在前面在学习一门新的技术之前,我们得知道了解这个东西有什么用?我们可以使用它来做些什么呢?简单来说,flume是大数据日志分析中不能缺少的一个组件,既可以使用在流处理中,也 ...
- linux ssh 免密登录
1.服务器端开启密钥登录模式 $ vim /etc/ssh/sshd_config # 是否允许 root 远程登录 PermitRootLogin yes # 密码登录是否打开 PasswordAu ...
- 使用ssh连接virtual Box里的虚拟机
使用ssh连接virtual Box里的虚拟机 需求:virtual Box提供的文件拖放功能在从虚拟机拖向主机时,会出现一些卡顿,因此考虑使用ssh代替其文件传输功能. 高级 -> 端口转发 ...
- MySQL 的默认字符集为什么是 latin1?
是处于历史原因还是其他? 为什么至今不选择utf-8? West European Character Sets
- Springboot连接Greenplum,分页查询
1.springboot分页查询greenplum数据报错: org.mybatis.spring.MyBatisSystemException: nested exception is org.ap ...