Java Hour 55 Spring Framework 2
上一章节估计被官方的说明文档扯晕了,其实说白了不就是个IOC 注入的容器么,用过了微软Enterprise Library 的Unity 的我还会怕这个。自己随便写个demo, 将知识的主题框架先构建起来就不会那么无力感了。
最简单的实现
这里我们抛弃掉一切干扰因素,随手自己实现个Spring 的应用,其中有很多不科学和不合理之处,但不妨碍我们先让代码run 起来。
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="weather" class="mike.weather.core.WeatherBusiness"></bean>
</beans>
相应的接口:
public interface IWeatherBusiness {
Weatherinfo getWeather();
}
相应的实现类:
public class WeatherBusiness implements IWeatherBusiness {
public final Weatherinfo getWeather() {
System.out.println("Hello Weather!");
WeatherDAO weatherDAO = new WeatherDAO();
return weatherDAO.getWeatherInfo();
}
测试方法:
@SuppressWarnings("resource")
public static void main(final String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext(new String[] { "beans.xml" });
WeatherBusiness weatherBusiness = context.getBean(WeatherBusiness.class);
weatherBusiness.getWeather();
}
小结:
1 这里的xml 文件路径是可配置的。
2 这里的配置文件的id 是可用的。
3 真实的使用可以在这个基础上改进。
Java Hour 55 Spring Framework 2的更多相关文章
- Java Hour 54 Spring Framework 1
总之,Srping Framework 很好很强大. 1 Spring Framework 介绍 省下你和transcation APIs, JMX APIs, JMS APIs 交流的功夫. 1.1 ...
- Java工程师之Spring Framework深度剖析专栏
系列前言 关于本系列 本系列章节目录 Spring Framework核心篇 重新来认识你的老朋友Spring框架 Spring容器装配Bean的三种方式 Spring Framework核心概念之B ...
- 框架应用:Spring framework (四) - 事务管理
事务控制 事务是什么?事务控制? 事务这个词最早是在数据库中进行应用,讲的用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位. 事务的管理是指一个事务的开启,内容添加, ...
- Spring Framework 5.0 新特性
Spring Framework 5.0是在Spring Framework 4.0之后将近四年内一次重大的升级. 在这个时间框架内,主要的发展之一就是Spring Boot项目的演变. Spring ...
- Spring Framework框架容器核心源码逐步剖析
目录 构建Spring环境 Spring 版本 5.1.3.RELEASE 测试类 Spring 配置文件 测试方法Main 快速进入Debug查看IOC容器构建源码 Spring IOC源码步骤分析 ...
- Spring Framework核心概念之Bean生命周期管理
目录 Spring Bean的生命周期 相关接口的分类 测试SpringBean生命周期的Demo程序 小结 Spring Bean的生命周期 Spring容器既Application或者WebApp ...
- Benefits of Using the Spring Framework Dependency Injection 依赖注入 控制反转
小结: 1. Dependency Injection is merely one concrete example of Inversion of Control. 依赖注入是仅仅是控制反转的一个具 ...
- Spring Framework简单介绍
Spring Framework 学习java编程不知不觉已经三年时间了,開始的时候,总是喜欢看着视频,然后按部就班的敲打着键盘,每当系统正常执行后.心里乐开了花.最開始的时候,所有的代 ...
- 将 Java Spring Framework 应用程序迁移到 Windows Azure
我们刚刚发布了一个新教程和示例代码,以阐述如何在Windows Azure中使用 Java 相关技术.在该指南中,我们提供了分步教程,说明如何将 Java Spring Framework 应用程序( ...
随机推荐
- 离线渲染中的不规则光源(Meshlight)
之前一直在考虑这样一个问题,在实际生活中的光源都是有体积的,但是图形学中,很多时候我们用简单的点光源,面光源,或者方向光来模拟实际生活中这些光源,势必会产生一些误差,同时导致很多效果不好做.那么在离线 ...
- goquery
使用goquery 会用jquery的,goquery基本可以1分钟上手,下面是goquery文档 http://godoc.org/github.com/PuerkitoBio/goquery 1. ...
- jQuery.parseJSON(json) 使用方法
jQuery.parseJSON(json) 接受一个JSON字符串,返回解析后的对象. 返回值:String传入一个畸形的JSON字符串会抛出一个异常.比如下面的都是畸形的JSON字符串:{test ...
- 10GE---超长距离的万兆以太网
万兆以太网 锁定 本词条由“科普中国”百科科学词条编写与应用工作项目 审核 . 以太网标准是一个古老而又充满活力的标准.自从1982年以太网协议被IEEE采纳成为标准以后,已经历了20年的风风雨雨.在 ...
- c++ 的vector
使用例子:std::vector<std::string> xmlNodeList; 下面介绍-- vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组 ...
- mapreduce job提交流程源码级分析(一)(原创)
首先,在自己写的MR程序中通过org.apache.hadoop.mapreduce.Job来创建Job.配置好之后通过waitForCompletion方法来提交Job并打印MR执行过程的log.H ...
- iOS工程如何支持64-bit(转)
苹果在2014年10月20号发布了一条消息:从明年的二月一号开始,提交到App Store的应用必须支持64-bit.详细消息地址为:https://developer.apple.com/news/ ...
- 微信新版支持读取iPhone M7/M8协处理器运动数据 与好友PK一下运动量吧
iPhone的创新是有目共睹的,Healthkit的推出预示着苹果进军健康领域,iPhone M7/M8协处理器可以收集和分析用户的健康数据,那么好的硬件自然不会被势在打造完整生态圈的微信给错过,这不 ...
- java笔记--关于线程死锁
关于线程死锁 什么是死锁: 在编写多线程的时候,必须要注意资源的使用问题,如果两个或多个线程分别拥有不同的资源, 而同时又需要对方释放资源才能继续运行时,就会发生死锁. 简单来说:死锁就是当一个或多个 ...
- axis2 webservice 发布、调用与项目集成
发布 1.在apache官网下载axis2包,下载Binary Distribution和War Distribution两个zip. 2.将war放入tomcat webapps下部署.并输入 ht ...