发表于: 2018-01-08 01:03:00
2 704
今日完成
1.学习spring;
1).Spring Hello World 实例
package com.tutorialspoint;
public class HelloWorld {
private String message;
public void setMessage(String message){
this.message = message;
}
public void getMessage(){
System.out.println("Your Message : " + message);
}
}
package com.tutorialspoint;
//使用ApplicationContext容器
import org.springframework.context.ApplicationContext;
///ClassPathXmlApplicationContext:该容器从 XML 文件中加载已被定义的 bean。在这里,你不需要提供 XML 文件的完整路径,只需正确配置 CLASSPATH 环境变量即可,因为,容器会从 CLASSPATH 中搜索 bean 配置文件
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class MainApp {
public static void main(String[] args) {
ApplicationContext context =
new ClassPathXmlApplicationContext("Beans.xml");//生成工厂对象
HelloWorld obj = (HelloWorld) context.getBean("helloWorld");//利用第一步生成的 bean 工厂对象的 getBean() 方法得到所需要的 bean。 这个方法通过配置文件中
// 的 bean ID 来返回一个真正的对象,该对象最后可以用于实际的对象。
obj.getMessage();//调用getmessage()方法输出信息
}
}
<?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="helloWorld" class="com.tutorialspoint.HelloWorld">//id是唯一的 bean 标识符 class是对象所在的完整路径
<property name="message" value="=Hello World"/>//property是指对象的属性 这里name是唯一的 bean 标识符,value指出要给对象
//id和name都是spring 容器中中bean 的唯一标识符。
id: 一个bean的唯一标识 , 命名格式必须符合XML ID属性的命名规范
name: 可以用特殊字符,并且一个bean可以用多个名称:name=“bean1,bean2,bean3” ,用 逗号或者分号或者空格隔开。如果没有id,则name的第一个名称默认是id
----------- http://blog.csdn.net/aitangyong/article/details/50629525
</bean>
</beans >
2).BeanFactory 容器和ApplicationContext 容器
BeanFactory 容器:
a.一个最简单的容器,主要的功能是为依赖注入 (DI) 提供支持;
b.这个容器接口在 org.springframework.beans.factory.BeanFactor 中被定义;
c.最常被使用的接口的实现是 XmlBeanFactory 类,这个容器从一个 XML 文件中读取配置元数据,由这些元数据来生成一个被配置化的系统或者 应用 ;
ApplicationContext 容器
a.是 spring 中较高级的容器
b.在 org.springframework.context.ApplicationContext interface 接口中定义。
c. 最常被使用的 ApplicationContext 接口实现:
I.FileSystemXmlApplicationContext:该容器从 XML 文件中加载已被定义的 bean。在这里,你需要提供给构造器 XML 文件的完整路径
II.ClassPathXmlApplicationContext:该容器从 XML 文件中加载已被定义的 bean。在这里,你不需要提供 XML 文件的完整路径,只需正确 配置 CLASSPATH 环境变量即可,因为,容器会从 CLASSPATH 中搜索 bean 配置文件。
III.WebXmlApplicationContext:该容器会在一个 web 应用程序的范围内加载在 XML 文件中已被定义的 bean。
3).Bean的定义
bean 是一个被实例化,组装,并通过 Spring IoC 容器所管理的对象;
被称作 bean 的对象是构成应用程序的支柱也是由 Spring IoC 容器管理的;
这些 bean 是由用容器提供的配置元数据创建的;
元数据概念:向Spring容器提供相关信息,以便实例化Bean,并指定如何对这些Bean进行装配。所提供的信息称为配置元数据(configuration metadata);
明天计划
1.完成Map集合的学习,后面学习spring需要用到;
2.学习spring
遇到问题
运行Spring Hello World 实例,弹出"no bean named 'helloworld' available"异常。
网上查询资料后得知是自己在写xml文件时id输入有误,大小写未区别。改正后运行正常;
收获
学到了spring的部分基础知识,对任务有了更多了解;
评论