zoukankan      html  css  js  c++  java
  • Spring.NET 学习笔记

      早就想学习Spring.NET的。个人习惯喜欢直接学习原始资料,所以就直接从源码开始。利用Git从Github上获取sping.net的源码。然后根据里面的资料开始学习。

      从Readme(spring-net eadme.txt)开始。虽然不难读懂,但还是翻译一下。

    SPRING.NET FRAMEWORK 预发布版2.0.0说明。

    http://www.springframework.net/

    一 介绍

    包含如下功能:

    1 提供完善的控制反转容器

    2 提供面向侧面编程的框架

    3 Expression Language for lightweight scripting

    4 与UI解耦的验证框架

    5 ASP.NET Framework

    - 提供以下元素的依赖注入:页面、自定义控件、单向数据绑定。。。

    6 ASP.NET MVC和ASP.NET WebAPI Framework

    - 提供MVC3和MVC4的依赖注入

    7 通过使用通用 XML配置和属性支持对不同事务API的事务声明管理

    8 简化了ADO.NET的使用。DAO支持类和Spring式的事务管理功能的集成

    9 对服务的抽象

    - 根据.NET Remoting,Web Service 或者.NET 服务组件输出.NET对象。并且创建基于endpoint URL和服务接口的客户端代理。

    10 NHibernate 3.2和.3.3 集成了简化NHibernate和事务声明管理

    11 Exporter能为被应用于JavaScript的依赖注入或者AOP暴露统一对象

    12 NUit 和 MSTest的集成

    - 提供依赖注入的测试案例和Sping 容器的加载器和缓存。。。数据访问和事务管理特性有助于集成测试

    13 WCF 的集成。 -  提供了依赖注入和应用AOP通知WCF服务

    14 集成了Quarzt 。通过使用依赖注入和Spring事务支持配置任务调度

    15 集成了MSMQ。通过提供帮助类完成消息的发送和接收来简化MSMQ的使用。集成了Spring事务管理特性。

    16 集成NMS。通过提供帮助类完成消息的发送和接收来简化NMS的使用

    17 集成TIBCO EMS。

    18 集成NVelocity。简化了配置过程

    Spring.NET 是基于Java的Sping框架的一个端口。Java/J2EE Spring 框架则是基于Rod Johnson(Wrox,2002)发布的“Expert One-on-One J2EE Design and Development”的代码。

    二 支持的.NET FRAMEWORK 版本

    Spring.NET 2.0.0 支持.NET3.5和4.0。在目录bin

    net3.5和bin et4.0中分别放置了对应.NET 3.5 和 4.0的Dll

    三  已知的问题

     暂无

    四 发布信息

    发布的内容:

    1 "src" 包含c#的源代码

    2 "test"包含测试Sping.NET的代码

    3 “lib/Net”包含Sping框架依赖的第三方库

    4 "lib/NHibernate31"包含NHibernate 3.2的Dlls

    5 "lib/NHbernate32 "包含NHibernate 3.3的Dlls

    6 "doc"包含被引用的文档,MSDN风格的帮助,以及Sping.NET的xsd

    7 “examples”包含的应用

    8 "build-support"额外的应用用来帮助NAnt便捷的构建框架

    9 "dev-support"包含帮助开发的工具和代码,比如VS的项目模板

    调试版本使用/DEBUG:full,发布版本使用/DEBUG:pdbonly 标志

    五 Dll的分布

    “bin”目录包含应用程序中用到的dll。 Dependencies are those other than on the .NET BCL.(不知道准确意思。。。)

    “Spring.Core”)(765kb)

    -包含:控制反转容器。集合类

    -依赖:Common.Logging

    "Spring.Aop"(150kb)

    -包含:面向切面编程框架

    -依赖:Spring.Core,Common.Logging

    “Spring.Data”(320kb)

    -包含:事务和ADO.NET框架

    -依赖:Sping.Core,Sping.Aop

    “Spring.Data.NHibernate32”(90kb)

    -包含:NHibernate3.2的集成

    -依赖:Sping.Core,Spring.Aop,Spring.Data,NHibernate

    “Spring.Data.NHibernate33”(90kb)

    -包含:NHibernate3.3的集成

    -依赖:Spring.Core,Spring.Aop,Spring.Data,NHibernate

    “Spring.Serbvices”(70kb)

    -包含:Web Services,Remoting,和基于服务的企业级组件

    -依赖:Spring.Core,Spring.Aop

    “Spring.Web”(165kb)

    -包含:基于ASP.NET的应用框架

    -依赖:Spring.Core,Spring.Aop,System.Web.Extensions

    “Spring.Web.Mvc”(8kb)

    -包含:ASP.NET MVC2的集成

    -依赖:Spring.Core,Spring.Web

    “Spring.Web.Mvc3”(8kb)

    -包含:ASP.NET MVC3的集成

    -依赖:Spring.Core,Spring.Web

    “Spring.Web.Mvc4”(8kb)

    -包含:ASP.NET MVC4 和WebAPI的集成

    -依赖:Spring.Core,Spring.Web

    “Spring.Testing.NUnit”(24kb)

    -包含:NUnit的集成

    -依赖:Spring.Core,Spring.Data,NUit

    “Spring.Testing.Microsoft”(24kb)

    -包含:MSTest 的集成

    -依赖:Spring.Core,Spring.Data,MSTest

    “Spring.Messaging”(65kb)

    -包含:MSMQ的集成

    -依赖:Spring.Core,Spring.Data,System.Messaging

    “Spring.Messaging.Nms”(100kb)

    -包含:NMS 的集成

    -依赖:Spring.Core,Spring.Data,Apache NMS

    “Spring.Scheduling.Quqrtz”(44kb)

    -包含:Quartz 1.0的集成

    -依赖:Spring.Core,Spring.Data,Quartz

    “Spring.Data”(44kb)

    -包含:NVelocity的集成

    -依赖:Spring.Core,NVelocity

     六 如何开始?

    文档可以在"docs"目录中找到Spring参考文档

    有文档参考的应用可以在“examples”中找到:

    1 IoCQuickStart.MovieFinder。一个简单的事例用来展示Ioc容器的行为

    2 IoCQuickStart.AppContext。展示各个IApplicationContext特性

    3 IoCQuickStart.EventRegistry。展示松耦合事件处理特性

    4 AopQuickStart。显示AOP特性

    5 CachingQuickStart 。展示告诉缓存的抽象

    6 SpringAir。展示Spring.Web的特性

    7 Calculator 。展示Spring.Services的特性

    8 WebQuickStart。展示如何一步一步的使用Spring.Web的特性

    9 Web.Extensions.Example。展示ASP.NET AJAX的集成

    10 DataQuickStart。展示Spring.Data的数据访问特性

    11 TxQuickStart。展示Spring事务特性

    12 Data.NHibernate.Northwind。展示如Spring的NHibernate特性

    13 WCFQuickStart。展示如何通过WCF使用DI和AOP

    14 NMSQuickStart。使用NMS的简单应用

    15 MSMQ QuickStart。应用MSMQ的简单应用

    16 MvcQuickStart。展示如何配置Mvc2支持

    17 Mvc3QuickStart。展示如何配置Mvc3支持

    18 Mvc4QuickStart。展示如何配置Mvc4支持

    七 如何构建

    使用VS.NET:

    有两个版本的解决方案文件

    VS.NET2008 使用Spring.Net.2008.sln

    VS.NET2010S使用Spring.Net.2010.sln

    注意:

    如果在 使用Vista/Win7 上开启了UAC。你可能会遇到类似如下错误,

    "C:Spring.NetSpring.NET-1.3.2Spring.NET estSpringSpring.Core.TestsSpring.Core.Tests.dll.config"
    ........uildVS.Net.2008Spring.Core.TestsDebug /y /s /q-Command exited with Code 9009. Spring.Core.Tests.2008

    你需要以管理员身份运行Visual Studio

    使用NAnt:

    在开始构建前你需要安装ASP.NET2,3和4。这是因为不能够在分发(不知道这么翻译合适不。。。)

    ASP.NET 的Dll

    构建所用脚本已经包含在下载的包中。

    构建源代码和运行单元测试类,搭建测试

    如果你需要构建强签名程序集,你可以通过如下命令生成秘钥(假设sn.exe路径正确),

    sn -k Spring.Net.snk

    你需要将Spring.NET.snk文件放到源代码文件夹得根目录中。当你执行如下命令时所有构建都将被强命名,

    nant -D:project.build.sing=true

    InnovaSys Document X!是用来生成SDK文档的

    八  支持

    在 Http://forum.springframework.net/ 论坛你可以提交问题,请求帮助,并且可以和其他Spring.NET用户交流。可以。

    可以在http://fisheye.springframework.org/browse/spring-net上找到bug和问题跟踪。

    可以在https://fisheye.springframework.org/browse/spring-net浏览代码库。

    可以在github上获得源码https://github.com/SpringSource/spring-net。

    我们总是乐于接受在论坛上的反馈。如果你认为你发现了一个bug,有改进建议或功能请求,请在JIRA上提交(见上面的链接)

    在您提交bug前,如果可能,首先在http://www.springframework.net/downloads/nightly/上下载快照,查看bug是否已经被

    修复。如果问题依旧存在,不要忘了提及您所使用的Spring.NET版本,并且告诉我们如何重现问题。更加理想的是

    附加一些代码在JIRA上。

    九 致谢

    InnovaSys Document X!

    InnovSys 慷慨的提供了一个许可证,让我们能够生成SDK文档以及集成于Visual Studio的配套设施

      

      这个文档已经为学习Spring.NET指明了明确的方向。接下来的工作:

    1 结合“doc”里面的文档逐个看懂“examples”下的18个demo。大致知道“src”里的每个项目能够做什么

    2 逐个分析“src”里的项目代码

    3 了解nant

    4 如果遇到以前没有涉及到的技术需要查阅资料作为学习分支

  • 相关阅读:
    影子的宽度&&盒子的个数
    【NOIP2017】【洛谷3958】奶酪cheese(并查集)(dfs)
    【USACO Jan 2011】【洛谷P3008】道路和航线 Roads and Planes
    增肥计划
    【洛谷1379】八数码
    【洛谷1985】【USACO07OPEN】翻转棋
    【NOI1995】极值问题
    车的放置
    【AtCoder
    Design Tutorial: Inverse the Problem
  • 原文地址:https://www.cnblogs.com/MagicJie/p/3611299.html
Copyright © 2011-2022 走看看