Spring.net 依赖注入 简单例子
来源:互联网 发布:c语言动态心形代码 编辑:程序博客网 时间:2024/06/06 18:20
Spring.NET 依赖注入
<property name=
"Name"
value=
"jackyong"
/> 而property 标签正是用来属性注入
值类型的注入是需要使用property 节点的value属性
<property name=
"Name"
value=
"jackyong"
/>
<property name=
"Age"
value=
"25"
/>
同理,内联类型可以是循环引用的对象
<property name=
"Friend"
>
<
object
type=
"Jackyong.Spring.NET.Person, Spring.NET"
>
<property name=
"Name"
value=
"jackpeng"
/>
<property name=
"Age"
value=
"23"
/>
<property name=
"Friend"
ref
=
"person"
/>
</
object
>
</property>
构造器注入使用constructor-arg标签作为标示,同样具有于属性注入相同的方式,使用name,
ref
,value作为构造器注入的属性。
<constructor-arg name=
"argPerson"
ref
=
"person"
/>
<constructor-arg name=
"intProp"
value=
"1"
/>
ref
是用来表示是关联到哪个
object
name 属性是指属性的名称。
<constructor-arg name=
"argPerson"
ref
=
"person"
/>
<constructor-arg name=
"intProp"
value=
"1"
/>
代码:
一.定义person 模板
using
System;
using
System.Collections.Generic;
using
System.Linq;
using
System.Text;
namespace
Jackyong.Spring.NET
{
public
class
Person
{
public
string
Name {
get
;
set
; }
public
int
Age {
get
;
set
; }
public
Person Friend {
get
;
set
; }
}
}
//构造数据
using
System;
using
System.Collections.Generic;
using
System.Linq;
using
System.Text;
namespace
Jackyong.Spring.NET
{
public
class
PersonInitializtion
{
private
Person argPerson;
private
int
intProp;
public
PersonInitializtion(Person argPerson,
int
intProp)
{
this
.argPerson = argPerson;
this
.intProp = intProp;
}
public
void
WriteLine()
{
Console.WriteLine(intProp);
//构造函数注入的整型参数
Console.WriteLine(
string
.Format(
"intProp:{0}"
, intProp));
//构造函数注入的Person
Console.WriteLine(
string
.Format(
"argPerson Name:{0}"
, argPerson.Name));
Console.WriteLine(
string
.Format(
"argPerson Age:{0}"
, argPerson.Age));
//内联对象Friend
Console.WriteLine(
string
.Format(
"argPerson Friend Name:{0}"
, argPerson.Friend.Name));
Console.WriteLine(
string
.Format(
"argPerson Friend Age:{0}"
, argPerson.Friend.Age));
//内联对象的循环引用
Console.WriteLine(
string
.Format(
"argPerson Friend Friend Name:{0}"
, argPerson.Friend.Friend.Name));
Console.WriteLine(
string
.Format(
"argPerson Friend Friend Age:{0}"
, argPerson.Friend.Friend.Age));
}
}
}
using
System;
using
System.Collections.Generic;
using
System.Linq;
using
System.Text;
using
Spring.Context;
using
Spring.Context.Support;
namespace
Jackyong.Spring.NET
{
class
Program
{
static
void
Main(
string
[] args)
{
IApplicationContext ctx = ContextRegistry.GetContext();
PersonInitializtion initializtion = ctx.GetObject(
"PersonInitializtion"
)
as
PersonInitializtion;
initializtion.WriteLine();
}
}
}
<?xml version=
"1.0"
encoding=
"utf-8"
?>
<configuration>
<configSections>
<sectionGroup name=
"spring"
>
<section name=
"context"
type=
"Spring.Context.Support.ContextHandler, Spring.Core"
/>
<section name=
"objects"
type=
"Spring.Context.Support.DefaultSectionHandler, Spring.Core"
/>
</sectionGroup>
</configSections>
<spring>
<context>
<resource uri=
"config://spring/objects"
/>
</context>
<objects xmlns=
"http://www.springframework.net"
>
<
object
id=
"person"
type=
"Jackyong.Spring.NET.Person,Spring.NET"
>
<!--属性值类型注入-->
<property name=
"Name"
value=
"jackyong"
/>
<property name=
"Age"
value=
"25"
/>
<!--内联对象注入-->
<property name=
"Friend"
>
<
object
type=
"Jackyong.Spring.NET.Person, Spring.NET"
>
<property name=
"Name"
value=
"jackpeng"
/>
<property name=
"Age"
value=
"23"
/>
<property name=
"Friend"
ref
=
"person"
/>
</
object
>
</property>
</
object
>
<
object
id=
"PersonInitializtion"
type=
" Jackyong.Spring.NET.PersonInitializtion, Spring.NET"
>
<!--构造器注入-->
<constructor-arg name=
"argPerson"
ref
=
"person"
/>
<constructor-arg name=
"intProp"
value=
"1"
/>
</
object
>
</objects>
</spring>
</configuration>
- Spring.net 依赖注入 简单例子
- Spring依赖注入简单例子
- 简单的Spring依赖注入例子~~
- 简单的Spring依赖注入例子~~
- Spring简单的依赖注入例子
- 简单的Spring依赖注入例子~~
- Spring依赖注入例子
- 一起学spring--依赖注入---简单粗暴的例子展示
- Spring简单依赖注入演示
- Spring依赖注入简单版
- 简单的例子理解依赖注入(PHP)
- .NET 使用spring.net实现依赖注入
- 一个简单的例子说明java中spring框架的依赖注入
- 一个简单的例子说明java中spring框架的依赖注入
- 一个简单的例子说明java中spring框架的依赖注入
- spring.net依赖注入到Web页面
- java简单模拟Spring的依赖注入
- spring依赖注入原理的简单模拟
- PHP最佳实践
- linux学习笔记6
- synchronized详解
- 快速求一个32位无符号整数二进制中为1的个数
- 应用程序的SQL查询原理
- Spring.net 依赖注入 简单例子
- JavaSE第六十五讲:静态代理模式深度剖析
- MySQL & SQL 学习资源
- 梦之递归分治法
- 设计模式之策略模式
- 新起点
- 无法删除服务器 'old_server_name',因为该服务器用作复制过程中的发布服务器。 (Microsoft SQL Server,错误: 20582)
- 最全的HTTP头部信息分析
- 38_日志工具commons-logging与Log4J