我正在学习Spring MVC。今天,试图了解如何实现 JDBC DAO,我在 Spring(Spring,而不是 Spring MVC)中找到了这个“Hello World”,并且我开始看到它(因为我认为要实现 DAO,我必须创建一个单独的 Spring执行数据访问的项目...)
http://www.tutorialspoint.com/spring/spring_hello_world_example.htm
好的,这是一个独立的应用程序,而不是 Web 应用程序,因此它没有 Web 应用程序结构(WEB-INF 文件夹、web.xml 文件和我的 Web 应用程序中的调度程序 servlet 配置文件)
在这个例子中我有一个Beans.xml配置文件,用于为不同的 bean 分配唯一的 ID,并控制具有不同值的对象的创建,而不影响任何 Spring 源文件...
例如在这个例子中我使用Beans.xml文件来传递“message”变量的“Hello World”消息值,这样我就可以打印这个值而不影响HelloWorld.java and 主应用程序.java files
<?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-3.0.xsd">
<bean id="helloWorld" class="com.tutorialspoint.HelloWorld">
<property name="message" value="Hello World!"/>
</bean>
</beans>
所以我有一些问题想问你:
-
这个文件是配置我的文件吗豆工厂?我认为,除了传递文本值作为变量的值之外,我还可以注入一个 bean 作为另一个 bean 的依赖项。
这样对吗?
-
在这个例子中,我可以不使用Beans.xml文件并使用来代替注释系统?
1) This Beans.xml(实际上你可以随意命名)是一个弹簧配置文件。它拥有一个配置元数据.
来自 Spring 官方文档:
5.2.1 配置元数据
如上图所示,Spring IoC 容器消耗
配置元数据的形式;该配置元数据代表
作为应用程序开发人员,您如何告诉 Spring 容器
实例化、配置和组装应用程序中的对象。
配置元数据传统上以简单直观的 XML 格式提供,但这不是唯一允许的配置元数据形式(参见第二个问题的答案)
是的,你是对的:你可以注入另一个 bean 作为参考。
来自 Spring 官方文档:
5.3 Bean概述
Spring IoC 容器管理一个或多个 bean。这些豆子是
使用您提供给的配置元数据创建
例如,XML 定义形式的容器。
在容器本身内,这些 bean 定义表示为
BeanDefinition 对象,其中包含(以及其他信息)
以下元数据:
包限定的类名:通常是所定义的 bean 的实际实现类。
Bean 行为配置元素,说明 Bean 在容器中的行为方式(范围、生命周期回调等)
向前)。
对其他 Bean 的引用bean 完成其工作所需的;这些参考文献也称为合作者 or
依赖关系.
在新创建的对象中设置的其他配置设置,例如,在管理 Bean 的 Bean 中使用的连接数
连接池,或者池的大小限制。
使用官方文档中其他 bean 的引用的简单示例:
<?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="exampleBean" class="examples.ExampleBean">
<!-- setter injection using the nested <ref/> element -->
<property name="beanOne">
<ref bean="anotherExampleBean"/>
</property>
<!-- setter injection using the neater 'ref' attribute -->
<property name="beanTwo" ref="yetAnotherBean"/>
<property name="integerProperty" value="1"/>
</bean>
<bean id="anotherExampleBean" class="examples.AnotherBean"/>
<bean id="yetAnotherBean" class="examples.YetAnotherBean"/>
</beans>
2)来自 Spring 官方文档:
5.2.1 配置元数据
...
基于 XML 的元数据并不是唯一允许的配置形式
元数据。 Spring IoC 容器本身与
实际写入此配置元数据的格式。
有关在 Spring 中使用其他形式的元数据的信息
容器,参见:
基于注释的配置:
Spring 2.5引入了对基于注解的配置的支持
元数据。
基于Java的配置:
从Spring 3.0开始,Spring提供了很多功能
JavaConfig 项目成为核心 Spring 框架的一部分。因此你
可以使用 Java 定义应用程序类外部的 beans
而不是 XML 文件。要使用这些新功能,请参阅@Configuration
, @Bean
, @Import
and @DependsOn
注释。
另请阅读以下内容:
没有 XML 的 Spring:Spring 注解与 Spring XML 文件的基础知识
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)