《Spring Recipes》第二章笔记:Customizing Bean Initiali...
2019独角兽企业重金招聘Python工程师标准>>>
《Spring Recipes》第二章笔记:Customizing Bean Initialization and Destruction
问题
解决方案
实现InitializingBean或者DisposableBean接口
public class Cashier implements InitializingBean, DisposableBean {
... ...public void afterPropertiesSet() throws Exception {openFile();}public void destroy() throws Exception {closeFile();}
}
在<bean>元素的init-method或destroy-method属性指定方法名称
<bean id="cashier1" class="com.apress.springrecipes.shop.Cashier"
init-method="openFile" destroy-method="closeFile"><property name="name" value="cashier1" /><property name="path" value="c:/cashier" />
</bean>
使用注解
public class Cashier {
...@PostConstructpublic void openFile() throws IOException {File logFile = new File(path, name + ".txt");writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(logFile, true)));}@PreDestroypublic void closeFile() throws IOException {writer.close();}
}
注意:
<beans ...>
...
<bean class="org.springframework.context.annotation.CommonAnnotationBeanPostProcessor" /><bean id="cashier1" class="com.apress.springrecipes.shop.Cashier">
<property name="name" value="cashier1" />
<property name="path" value="c:/cashier" />
</bean>
</beans>
b.添加<context:annotation-config />配置:
<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:annotation-config />
...
</beans>
转载于:https://my.oschina.net/pkpk1234/blog/57859
《Spring Recipes》第二章笔记:Customizing Bean Initiali...相关推荐
- 《Spring Recipes》第二章笔记:Creating Beans by Invokin...
2019独角兽企业重金招聘Python工程师标准>>> <Spring Recipes>第二章笔记:Creating Beans by Invoking an Insta ...
- 算法图解第二章笔记与习题(选择排序)
算法图解第二章笔记与习题(选择排序) 文章目录 算法图解第二章笔记与习题(选择排序) 2.2 数组和链表 2.2.1 链表 2.2.2 数组 2.2.3 数组和链表的读取.插入和删除操作的时间复杂度 ...
- 计算机网络(中科大郑烇)第二章笔记
文章目录 第二章 应用层 0.总结 1.应用层协议原理 2.Web and HTTP 2.1 Web与HTTP的一些术语 2.2 HTTP概述 2.3 HTTP连接 2.4 HTTP请求报文 2.5 ...
- Linux就该这么学第二章笔记~
文章目录 linux就该这么学第2章笔记 二.常用命令 2.1命令格式 2.2常用系统工作命令 2.3系统状态检测命令 2.4查找定位文件命令 2.5文本文件编辑命令 2.6文件目录管理命令 linu ...
- 计算机组成原理|第二章(笔记)
目录 第二章 计算机的发展及应用 2.1 计算机的发展史 2.1.1 计算机的生产和发展 2.1.2 微型计算机的出现和发展 2.1.3 软件技术的兴起与发展 2.2 计算机的应用 2.3 计算机的展 ...
- SpringBoot集成Spring Security —— 第二章自动登录
文章目录 一.修改login.html 二.两种实现方式 2.1 Cookie 存储 2.2 数据库存储 2.2.1 基本原理 2.2.2 代码实现 三.运行程序 在上一章:SpringBoot集成S ...
- 《Head First设计模式》第二章笔记 观察者模式
背景 客户有一个WeatherData对象,负责追踪温度.湿度和气压等数据.现在客户给我们提了个需求,让我们利用WeatherData对象取得数据,并更新三个布告板:目前状况.气象统计和天气预报. W ...
- 【离散数学】第二章 笔记(完)
写在前面 是复习的笔记.截图是老师的课件. 2.1 谓词 谓词的概念与表示: 谓词:用来刻划一个个体的性质或多个个体之间关系的词,常用大写字母P, Q, R-来表示. 客体:可以独立存在的事物称为客体 ...
- TCP/IP第二章笔记链路层协议
二.链路层 2.1 引言 链路层由三个目的: 主要为IP模块发送和接受IP数据包: 为ARP模块发送请求和接受ARP应答: 为RARP发送RARP请求和接收RARP应答: TCP/IP协议支持不同的链 ...
最新文章
- python 正则括号的使用及踩坑
- HDU 1285--确定比赛名次【拓扑排序 amp;amp; 邻接表实现】
- 马上要毕业了,要就业了。。担忧啊
- 敲诈英伟达的竟然是一群未成年???
- iSCSI 2-环境搭建一
- c语言求今年第m月的天数,《C语言及程序设计》实践参考——当年第几天(数组方案)...
- URAL 1992 CVS 可持久化链栈
- html5绿色视频播放器,7款很棒的 HTML5 视频播放器
- 【学习笔记】吉司机线段树
- 使用Cisco Packet Tracer之图解无线网络全网互联
- python怎么读取txt数据_对python .txt文件读取及数据处理方法总结
- Kali离线安装Nessus及过程中可能遇到的问题解决方案
- python简单网格五子棋_python实现简单五子棋游戏
- 尚医通 (二十)就诊人用户管理 | 平台用户管理
- Mybase7延长试用期
- mysql支持多语言_MySQL整理以存储未知语言的多语言数据
- Ultra-Fast-Lane-Detection-V2最新车道线检测算法
- Fedora 14 安装 DDD过程
- 0_PROLOGUE_superbeyone_新浪博客
- JAVA 极光推送后台实现触发,推送自定义消息、通知、定时推送、批量推送
热门文章
- react实现浏览器自动刷新_react调用什么刷新页面
- 鸿蒙系统适配的电脑,鸿蒙来了!华为正式发布操作系统 适配手机电脑多类型设备...
- html5 新标签xss,HTML5 localStorageXSS漏洞
- pytroch model??(查看官方模型写法)
- java表示学生信息的类Student,并输出相关信息
- 计算机关闭远程桌面 共享功能,win7旗舰版系统优化禁止用远程桌面共享的解决方法...
- php把这两个二维数组合并,两个二维数组的合并
- tomcat上的javaweb项目如何将ip地址更换为域名_Java Web 路线规划
- 基于Pytorch的BERT-IDCNN-BILSTM-CRF中文实体识别实现
- Top3获奖金10万,Seq2seq对话系统设计方案