Java框架spring 学习笔记(十):bean管理(注解和配置文件混合使用)
配置文件和注解混合使用
- 创建对象操作使用配置文件方式实现
- 注入属性的操作使用注解方式实现
编写BookDao.java和OrderDao.java文件
BookDao.java
package com.example.spring;
public class BookDao {
public void book(){
System.out.println("Book Dao.");
}
}
OrderDao.java
package com.example.spring;
public class OrderDao {
public void order(){
System.out.println("Order Dao.");
}
}
创建对象操作使用配置文件方式实现
编写配置文件Beans.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"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <!--开启注解扫描,到包里面扫描类、方法、属性上面是否有注解-->
<context:component-scan base-package="com.example.spring"></context:component-scan> <!-- 在配置文件中创建对象 -->
<bean id="bookService" class="com.example.spring.BookService"></bean>
<bean id="bookDao" class="com.example.spring.BookDao"></bean>
<bean id="orderDao" class="com.example.spring.OrderDao"></bean> </beans>
注入属性的操作使用注解方式实现
编写BookService.java
package com.example.spring;
import javax.annotation.Resource;
public class BookService {
//注解方式注入属性,得到对象
@Resource(name = "bookDao")
private BookDao bookDao;
@Resource(name = "orderDao")
private OrderDao orderDao;
public void service(){
System.out.println("Book Service.");
//调用方法
bookDao.book();
orderDao.order();
}
}
编写Application.java
package com.example.spring; import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext; public class Application {
public static void main(String[] args) {
//bean配置文件所在位置 D:\\IdeaProjects\\spring\\src\\Beans.xml
//使用AbstractApplicationContext容器
AbstractApplicationContext context = new ClassPathXmlApplicationContext("file:D:\\IdeaProjects\\spring\\src\\Beans.xml");
//得到配置创建的对象
BookService bookService = (BookService) context.getBean("bookService");
bookService.service();
}
}
运行输出
Book Service.
Book Dao.
Order Dao.
Java框架spring 学习笔记(十):bean管理(注解和配置文件混合使用)的更多相关文章
- Java框架spring 学习笔记(十八):事务管理(xml配置文件管理)
在Java框架spring 学习笔记(十八):事务操作中,有一个问题: package cn.service; import cn.dao.OrderDao; public class OrderSe ...
- Java框架spring 学习笔记(十四):注解aop操作
回见Java框架spring Boot学习笔记(十三):aop实例操作,这里介绍注解aop操作 首先编写一个切入点HelloWorld.java package com.example.spring; ...
- Java框架spring 学习笔记(二):Bean的作用域
Spring 框架Bean支持以下五个作用域: 下面介绍两种作用域,singleton和protoype singleton作用域 singleton作用域为默认作用域,在同一个ioc容器内getBe ...
- spring学习笔记之---bean管理
bean管理(xml) (一)spring的工厂类 FileSystemXmlApplicationContext 读取磁盘配置文件 (二)bean实例化的三种方式 (1)使用类构造器实例化(默认无参 ...
- spring学习笔记之---bean管理的注解方式
bean管理的注解方式 (一)使用注解定义bean (1)常用注解 (2)实例 1.在pom.xml中进行配置 <dependencies> <dependency> < ...
- Java框架spring 学习笔记(九):Spring的bean管理(@Required、@Component、@Autowired、@Resource注解)
注解:代码里面特殊的标记,使用注解可以完成相关功能 注解写法:@注解名称(属性名.属性值) @Required 用在set方法上,一旦用了这个注解,那么容器在初始化bean的时候必须要进行set,也就 ...
- Java框架spring 学习笔记(十九):事务管理(注解管理)
注解管理的方式要比xml配置方式要简单很多 只需在配置文件中添加事务注解 <?xml version="1.0" encoding="UTF-8"?> ...
- Java框架spring 学习笔记(三):Bean 的生命周期
当一个 bean 被实例化时,它可能需要执行一些初始化使它转换成可用状态.当bean不再需要,并且从容器中移除时,需要做一些清除工作.为了定义安装和拆卸一个 bean,我们只要声明init-metho ...
- Java框架spring 学习笔记(十二):aop实例操作
使用aop需要在网上下载两个jar包: aopalliance.jar aspectjweaver.jar 为idea添加jar包,快捷键ctrl+shift+alt+s,打开添加jar包的对话框,将 ...
随机推荐
- 黄聪:C#获取网页HTML内容的三种方式
C#通常有三种方法获取网页内容,使用WebClient.WebBrowser或者HttpWebRequest/HttpWebResponse. 方法一:使用WebClient static void ...
- Vmware虚拟中克隆主机没IP地址?怎么解决?
Vmware虚拟中克隆主机没IP地址?怎么解决? 修改网卡的配置文件: 清空如下的文件: 重启主机即可!
- oracle死锁的处理办法
摘自:https://www.cnblogs.com/xuke/p/4053396.html http://blog.itpub.net/30036720/viewspace-2121034/ ora ...
- Pytest高级进阶之Fixture
From: https://www.cnblogs.com/feiyi211/p/6626314.html 一. fixture介绍 fixture是pytest的一个闪光点,pytest要精通怎么能 ...
- 尝试 Markdown 写测试用例
我的原帖https://testerhome.com/topics/9412 大家都知道我们社区的帖子提倡用Markdown格式编写,正好项目进入稳定期,尝试用Markdown写下测试用例.有几个目的 ...
- 7.STM32中GPIO理解
端口概述 在STM32中,每个I/O端口可以由软件配置成为输入/输出模式.复位期间或刚复位后,I/O端口被配置成浮空输入模式.所有的GPIO引脚有一个内部弱上拉和弱下拉,当配置为输入时, 它们可以被激 ...
- JID介绍
JID: 一个XMPP实体的地址称为Jabber Identifier或JID,作用类似于IP地址.一个合法的JID包括节点名,域名资源名,其格式为:jid=[node'@']domain['/'re ...
- [security CRT] VB实现自动下载脚本
#$language = "VBScript" #$interface = "1.0" crt.Screen.Synchronous = True ' This ...
- 刘志梅201771010115.《面向对象程序设计(java)》第十四周学习总结
实验十四 Swing图形界面组件 实验时间 20178-11-29 1.实验目的与要求 (1)设计模式:反复使用.经过分类编目的.代码设计经验的总结. 在Alexander的模式分类和软件模式的分类 ...
- (转)SQLServer_十步优化SQL Server中的数据访问四
原文地址:http://tech.it168.com/a2009/1125/814/000000814758_all.shtml 第八步:使用SQL事件探查器和性能监控工具有效地诊断性能问题 在SQL ...