自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 资源 (1)
  • 收藏
  • 关注

转载 C++成员函数指针的应用

C++中,成员指针是最为复杂的语法结构。但在事件驱动和多线程应用中被广泛用于调用回叫函数。在多线程应用中,每个线程都通过指向成员函数的指针来调用该函数。在这样的应用中,如果不用成员指针,编程是非常困难的。   刚遇到这种语法时也许会让你止步不前。但你会发现,使用恰当的类型定义之后,复杂的语法是可以简化的。本文引导你了解成员函数指针的声明,赋值和调用回叫函数。   成员函数指针的声明

2013-11-05 09:45:37 487

原创 H.323

求助编辑百科名片  H.323在传统电话系统中,一次通话从建立系统连接到拆除连接都需要一定的信令来配合完成。同样,在IP电话中,如何寻找被叫方、如何建立应答、如何按照彼此的数据处理能力发送数据,也需要相应的信令系统,一般称为协议。目前在国际上,比较有影

2011-10-02 13:59:03 739

转载 消息队列(Message Queue)简介及其使用

利用 MSMQ(Microsoft Message Queue),应用程序开发人员可以通过发送和接收消息方便地与应用程序进行快速可靠的通信。消息处理为您提供了有保障的消息传递和执行许多业务处理的可靠的防故障方法。MSMQ与XML Web Services和.Net Remotin

2011-07-08 17:08:28 822

转载 如何理解.net中的垃圾回收机制

.NET Framework 的垃圾回收器管理应用程序的内存分配和释放。每次您使用 new 运算符创建对象时,运行库都从托管堆为该对象分配内存。只要托管堆中有地址空间可用,运行库就会继续为新对象分配空间。但是,内存不是无限大的。最终,垃圾回收器必须执行回收以释放一些内存。垃圾回收器优化引擎根据正在进行的分配情况确定执行回收的最佳时间。当垃圾回收器执行回收时,它检查托管堆中不再被应用程序使用的对象并

2011-06-17 14:04:00 436

转载 在ASP.NET中处理大文件上传

使用过ASP.NET的开发者都知道,FileUpload控件是一把双刃剑——既可能成为我们的救世主,也能变成我们的敌人。其中一个很常见的问题就是如何处理超过4MB的大文件上传。微软的ASP.NET MVP Jon Galloway最近发表了一篇文章,其中讨论了FileUpload控件的种种使用技巧。了解了这些之后,我们即可在理论上处理任何大小的文件上传。允许大文件上传Jon提到,使用F

2011-06-08 16:42:00 452

转载 ASP.Net中设置web.config文件上传大文件方法

修改Webcong文件:useFullyQualifiedRedirectUrl="true"executionTimeout="6000"useFullyQualifiedRedirectUrl="false" minFreeThreads="8" minLocalRequestFreeThreads="4" appRequestQueueLimit="100" enableVersionHea

2011-06-08 16:24:00 711

转载 Spring.NET学习笔记——目录

<br />前言<br /> <br />Spring.NET学习笔记——前言 <br /> <br />   <br />第一阶段:控制反转与依赖注入IoC&DI<br /><br /><br /> Spring.NET学习笔记1——控制反转(基础篇) Level 200<br />Spring.NET学习笔记2——环境搭建(基础篇) Level 200<br />Spring.NET学习笔记3——实现一个简易的IoC框架(练习篇) Level 100<br />Spring.NET学习笔记4——对象的创

2011-04-10 20:30:00 824

转载 Spring.NET企业架构实践之 JQuery + FlexiGrid + ASP.NET MVC + NVelocity + WCF + LINQ + NHibernate 综合应用

<br /> 今晚看了几篇项目应用的博客感受很深,晚上怎么都睡不着觉。于是乎,下面的博客诞生了 ^-^。<br />  我在想是不是要把我熟悉的Spring.NET框架与别的框架或技术结合起来。由于心血来潮,斗胆在园子里这么多大牛的面前班门弄斧了。长话短说,下面是我项目中用到的技术(图1):<br />1.JQuery的FlexiGrid插件<br />2.ASP.NET MVC<br />3.NVelocity 目前没有与MVC结合,只是用来简单的替换模板<br />4.WCF<br />5.LINQ<b

2011-04-10 20:27:00 989

转载 Spring.NET学习笔记26——整合NVelocity(应用篇)

<br />NVelocity是一个基于.NET的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由.NET代码定义的对象。<br />当NVelocity应用于web开发时,界面设计人员可以和.NET程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只关注页面的显示效果,而由.NET程序开发人员关注业务逻辑编码。NVelocity将.NET代码从web页面中分离出来,这样为web站点的长期维护提供了便利,

2011-04-10 20:24:00 674

转载 Spring.NET学习笔记25——整合Quartz.NET(应用篇)

<br />Quartz.NET是一个开源的作业调度框架,是OpenSymphony 的 Quartz API的.NET移植,它用C#写成,可用于WinForm和ASP.NET应用中。它提供了巨大的灵活性而不牺牲简单性。你能够用它来为执行一个作业而创建简单的或复杂的调度。它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等。  <br />      你曾经需要应用执行一个任务吗?这个任务每天或每周星期二晚上11:30,或许仅仅每个月的最后一天执行。一个自动执行而无须干预的任务在执行过

2011-04-10 20:22:00 892

转载 Spring.NET学习笔记22——整合WCF(应用篇)

<br />Spring.NET对WCF(Windows Communication Foundation)有很好的支持,Spring.Services程序集下封装了创建和调用WCF的方法。以往,我们使用svc文件来承载WCF;使用自动生产的代理来调用服务。这样便对产生了诸多依赖。而使用Spring.NET则会令应用程序得到良好的改善。<br /> <br />  让我们从实例中学习今天的内容:<br /><br />  首先创建服务契约和其实现<br /> <br />Contract [Se

2011-04-10 20:19:00 1108

转载 Spring.NET学习笔记21——整合Web Service(应用篇)

<br />  虽然目前.NET对WebService支持的非常好,Spring.NET认为还是有几个方面可以改进:<br />  第一、.NET在.asmx文件中保存WebService请求和服务对象的关联关系,这些.asmx文件不管有用没用都得放在那儿。<br />  第二、Spring.NET希望能通过IoC容器对WebService进行依赖注入。一般说来WebService总会依赖其它服务对象,所以,如果能用配置方式来选择服务对象,这个功能就相当强大了。 <br />  第三、目前在.NET中Web

2011-04-10 20:14:00 770

转载 Spring.NET学习笔记20——整合Remoting(应用篇)

<br />Spring.Services命名空间的目的是为业务服务提供位置的透明性。我们相信使用普通的接口和.NET类,用户应该可以用最简单的方式实现服务。我们也认为在将某个服务发布给客户端的时,应该只关心服务的配置,而无需关心服务的实现。在Spring.Services命名空间的支持下,可以用IoC容器中的服务导出对象将任一个普通对象发布为web服务、企业服务组件或远程对象。这里说的“普通对象”是指不继承或应用基础框架中任何特殊的基类(如MarshalByRefObject)或特性(如WebMethod

2011-04-10 20:11:00 617

转载 Spring.NET学习笔记19——整合NHibernate和ASP.NET MVC(基础篇)

<br />ASP.NET MVC Framework是微软官方提供的MVC模式编写ASP.NET Web应用程序的一个框架。MVC(Model-View-Controller)用于表示一种软件架构模式.它把软件系统分为三个基本部分:模型(Model),视图(View)和控制器(Controller)。<br />  今天带给大家的就是期待以久的ASP.NET MVC与Spring.NET和NHibernate的组合,视图打造.NET版的SSH(Spring-Struts-Hibernate)。是不是听到名

2011-04-10 20:03:00 1592

转载 Spring.NET学习笔记18——整合NHibernate(基础篇)

<br />NHibernate是一个基于.Net的针对关系型数据库的对象持久化(ORM)类库。NHibernate来源于非常优秀的基于Java的NHibernate关系型持久化工具。从数据库底NHibernate来持久化你的.Net 对象到关系型数据库。NHibernate为你处理这些,远胜于你不得不写SQL去从数据库存取对象。你的代码仅仅和对象关联,NHibernate自动产生SQL语句,并确保对象提交到正确的表和字段中去。<br />Spring.NET对NHibernate提供了很好的支持与封装。S

2011-04-10 19:58:00 1572

转载 Spring.NET学习笔记17——事务传播行为(基础篇)

<br />上篇我们学习了Spring.NET的事务机制。回顾一下,实现事务需要在方法上标记[Transaction]。在很多情况下,事务往往与业务分离。Spring.NET提供了事务代理帮我们管理这些事务,我们可以通过TransactionProxyFactoryObject使用声明式事务。在很多情况下TransactionProxyFactoryObject比ProxyFactoryObject易用,因为该类可以通过自身属性来指定事务通知和事务特性,所以不需要单独为事务通知定义对象。另外,与使用Prox

2011-04-10 19:49:00 1027

转载 Spring.NET学习笔记16——事务管理(应用篇)

<br /> 目前有很多种数据访问技术。在.NET FCL中,有三类API可以执行事务管理,分别是ADO.NET、企业服务和System.Transactions。其它的数据访问技术,如对象关系映射(object relational mappers)和结果集映射(result-set mapping)等等的应用也很广泛,每种技术也都有自己的事务管理API。事务管理的代码一般是直接和各种事务API绑定在一起的,所以在开发时必须根据所用的具体技术来决定采用哪种API。但是,这种代码与事务API的紧耦合决定了很

2011-04-10 19:47:00 932

转载 Spring.NET学习笔记15——AOP的配置(基础篇)

<br /> 上篇我学习了Spring.NET的四种通知类型,AOP的实现方案比较复杂,是通过代码实现的。而Spring.NET框架给我们提供了配置的方式来实现AOP的功能。到目前为止,我们已经讨论过使用ProxyFactoryObject或其它类似的工厂对象显式创建AOP代理的方法。如果应用程序需要创建很多AOP代理,比如当需要代理某个服务层的所有对象时,这种方法就会使配置文件变的相当庞大。为简化配置过程,Spring.NET提供了“自动代理”的功能,可以根据条件自动创建代理对象,也就是说,可以将多个对象

2011-04-10 19:41:00 1380 1

转载 Spring.NET学习笔记14——AOP的通知类型(基础篇)

<br /> 上篇我们学习了AOP的基本概念,我们回顾一下上篇提到的Advice(通知):所谓通知是指拦截到joinpoint(连接点)之后所要做的事情就是通知.通知分为前置通知,后置通知,异常通知,环绕通知。<br />Spring.NET的通知既可由某个类的所有对象共享,也可由该类型的单个实例独占。共享的通知称为基于类型(per-class)的通知,而独占的通知称为基于实例(per-instance)的通知。<br />基于类型的通知最为常用。很多常用功能很适合用基于类型的通知实现,比如说事务。它们不依

2011-04-10 19:35:00 779

转载 Spring.NET学习笔记13——AOP的概念(基础篇)

<br />  上篇我们简单的了解了AOP的应用场景,知道AOP编程的重要性。这篇我们先看一段代码,来开始今天的学习。<br /><br />  回顾与上篇类似的代码:SecurityService类的IsPass判断用户名为“admin”则有权限保存数据。OrderService为保存数据的类,实现IOrderService接口。<br /> <br /> public class SecurityService { public bool IsPass(string us

2011-04-10 19:31:00 502

转载 Spring.NET学习笔记12——面向切面编程(基础篇)

<br />AOP即面向切面编程(Aspect Oriented Programming的缩写),是OOP(面向对象编程)的一种延续形式。是通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术,它从一个不同于OOP的角度来看待程序的结构:OOP将应用程序分解为一系列表现为继承关系的对象;AOP则把程序分解为一系列方面(aspects)或者关注点(concerns)。AOP将诸如事务管理等本来横向分布在多个对象中的关注点进行了模块化处理(这些关注点也常称为横切(crossc

2011-04-10 19:28:00 668

转载 Spring.NET学习笔记11——自定义对象行为(基础篇)

<br />Spring.NET通过几个专门的接口来控制容器中对象的行为。说到对象的行为无非就要提到对象的生命周期控制。类似在WinForm开发,Form生命周期中,Load方法为Form的载入方法和Dispose方法为Form的销毁方法。Spring.NET都能完美的实现这些需求。   <br /><br />一、生命周期接口<br />  在使用Spring.NET框架的时候通常遇到怎样初始化和销毁非托管资源(如数据库连接)的麻烦,下面的解决方案可能对您有所帮助。<br />  1.初始化行为<br /

2011-04-08 14:28:00 617

转载 Spring.NET学习笔记10——方法的注入(基础篇)

<br />多数用户都会将容器中的大部分对象布署为singleton模式。当一个singleton对象需要和另一个singleton对象协作,或者一个非singleton对象需要和另一个非singleson对象协作时,Spring.NET都能很好的处理它们的依赖关系。但是,如果对象的生存周期不同,就可能会产生问题。例如,假设一个singleton对象A要使用一个非singleton(原型)对象B,A中的每个方法都会用到B的新实例。由于A是singleton对象,容器只有会创建它一次,也就是说只有一次给A的属

2011-04-08 14:25:00 646

转载 Spring.NET学习笔记9——打造简易的依赖注入框架(练习篇)

<br /> 我们在第三篇中学习里一个简易的IoC框架。今天我们接着上次的程序,实现带参数构造函数对象的实例和属性的注入 。<br />  我们知道可以通过反射获取类的构造函数及参数(GetConstructors方法);可以获取属性和属性的类型(GetProperties方法)。通过Activator的CreateInstance(Type type, params object[] args)方法可以创建带参数构造函数的实例。通过SetValue方法可以给属性赋值,这样一来,我们就上次的代码稍加改造就可

2011-04-08 14:20:00 648

转载 Spring.NET学习笔记8——集合类型的注入(基础篇)

<br /> Spring.NET还支持集合类型的注入。而且使用起来也比较方便。<br />  一、ILIst类型<br />  使用<list>元素作为ILIst的标签,value为集合中元素的值。也可以注入对象,甚至关联其它对象,使用 <ref/>元素表示关联的对象,object 属性为所关联对象的id或name。集合可以为空,用<null/>元素来标记。<br />  在<list>元素中设置 element-type 属性表示泛型T的类型,例如 element-type="int"  ,代表int型

2011-04-08 14:17:00 649

转载 Spring.NET学习笔记7——依赖对象的注入(基础篇)

<br />  一、属性注入<br />  上篇我们简单提到依赖注入的用途。回顾一下所讲内容,发现在object节点下使用了<property name="Tool" ref="computer"/>。而property 标签正是用来属性注入的。而ref是用来标识是关联到哪个object。而name属性是指属性名。如下:<object id="modernPerson" type="SpringNetIoC.ModernPerson, SpringNetIoC"><br />        <propert

2011-04-08 14:11:00 668

转载 Spring.NET学习笔记6——依赖注入(应用篇)

谈到高级语言编程,我们就会联想到设计模式;谈到设计模式,我们就会说道怎么样解耦合。而Spring.NET的IoC容器其中的一种用途就是解耦合,其最经典的应用就是:依赖注入(Dependeny Injection)简称DI,目前DI是最优秀的解耦方式之一。下面我就来谈谈依赖注入的应用场景。  我模拟了三种不同的场景,可以一起学习使用依赖注入的重要性。下面是应用场景的条件:人类使用工具劳动。 /**//// /// 抽象人类 /// public abstract cla

2011-04-08 14:05:00 609

转载 Spring.NET学习笔记5——容器中对象的作用域(基础篇)

<br />容器中对象的部署分为两种方式:singleton和非singleton(java里叫prototype)。这里的singleton指的是“单例模式”,就是说当一个对象被定义为singleton时,容器中就只会有一个共享的实例,任何时候通过id或别名请求该对象都会返回这个共享实例的引用(也就是说这个对象只会被创建一次)。当使用非singleton,或者说原型模式布署时,每次请求对象都会创建新的实例。在某些场合,如果需要为每个用户返回单独的用户对象或其它对象,非singlton布署模式就比较理想。S

2011-04-08 13:55:00 684

转载 Spring.NET学习笔记4——对象的创建(基础篇)

<br />学过了前面的课程,我们来一起学习Spring.NET的IoC容器对象的创建。<br />  创建对象一般有3种方式:1.构造器创建,2.静态工厂创建,3.实例工厂创建<br />  多数情况下,容器会根据对象定义中的type属性值去直接调用相应类型的某个构造器。另外,容器也可以调用工厂方法来创建对象,这时type属性的值就应该是包含工厂方法的类型(按:而不是要创建的类型,但通过该对象定义的名称获取的则是由工厂方法所创建的对象)。工厂方法的产品对象可以是工厂方法所在的类型,也可以是其它类型(按:很

2011-04-08 13:35:00 676

转载 Spring.NET学习笔记3——实现一个简易的IoC框架(练习篇)

<br />  讲了这么多理论,我们来手动实现一个简易的IoC框架的,这样可以加深IoC的理论知识。<br />   一、思路<br />在我们使用Spring.NET框架的时候,首先需要实例化Spring.NET容器, 然后调用IoC容器IObjectFactory接口中GetObject方法获取容器中的对象。通过这一点就可以告诉我们制作IoC容器需要写一个获取XML文件内容的方法和申明一个Dictionary<string, object>来存放IoC容器中的对象,还需要写一个能从Dictionary<

2011-04-08 13:30:00 540

转载 Spring.NET学习笔记2--环境搭建(基础篇)

我们先来一起学习一下怎样使用Spring.NET。  一、环境下载及安装  到Spring的官方网站下载Spring.NET框架的安装文件(Spring.NET-1.3.0-RC1.exe)。目前Spring.NET最新的版本是1.3。下载并解压后就可以了。我们使用Spring.NET框架经常用到的一下几个文件:Common.Logging.dll(必要)Spring.Core.dll(必要)Spring.Data.dllSpring.Aop.dll(可选)Spring.Data.NHibernate21.

2011-04-08 13:26:00 1132

转载 Spring.NET学习笔记1--控制反转(基础篇)

在学习Spring.NET这个控制反转(IoC)和面向切面(AOP)的容器框架之前,我们先来看一下什么是控制反转(IoC)。  控制反转(Inversion of Control,英文缩写为IoC),也叫依赖注入(Dependency Injection)。我个人认为控制反转的意思是依赖对象(控制权)发生转变,由最初的类本身来管理依赖对象转变为IoC框架来管理这些对象,使得依赖脱离类本身的控制,从而实现松耦合。我们先来看一段代码 namespace Dao{ public interface

2011-04-08 13:16:00 735

转载 什么是AOP?

<br />AOP(Aspect-Oriented Programming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定义从左到右的关系。例如日志功能。日志代码往往水平地散布在所有对象层次中,而与它所散布到的对象的核心功能毫无关系。对于其

2011-03-18 17:31:00 461

转载 进程、应用程序域、程序集、对象上下文

<br />简单的说,进程可以承载一组相关的.NET程序集,而应用程序域(简称AppDomain)是对该进程的逻辑细分。一个应用程序域进一步被细分成多个上下文边界,这些边界用来分组目的相似的.NET对象。使用上下文的概念,CLR便能够确保恰当地控制那些带特殊运行时要求的对象。<br /><br />传统的进程<br />用来描述一组资源和程序运行所必需的内存分配。对于每个被加载到内存的可执行程序,在她的生命周期中操作系统会为之单独且隔离的进程。由于一个进程的失败不会影响其他的进程,使用这种方式,运行库环境将

2011-03-08 17:21:00 496

转载 Java程序的编码规范

<br />所有的程序开发手册都包含了各种规则。一些习惯自由程序人员可能对这些规则很不适应,但是在多个开发人员共同写作的情况下,这些规则是必需的。这不仅仅是为了开发效率来考虑,而且也是为了后期维护考虑。<br />一、命名规范<br />定义这个规范的目的是让项目中所有的文档都看起来像一个人写的,增加可读性,减少项目组中因为换人而带来的损失。(这些规范并不是一定要绝对遵守,但是一定要让程序有良好的可读性)<br />> Package 的命名<br />Package 的名字应该都是由一个小写单词组成。<b

2011-03-08 16:21:00 293

原创 Java容器类的关系图

<br /> 

2011-03-06 14:43:00 565

转载 Http之Get/Post请求区别

1.HTTP请求格式:<br /><request line><br /><headers><br /><blank line><br />[<request-body>]<br />在HTTP请求中,第一行必须是一个请求行(request line),用来说明请求类型、要访问的资源以及使用的HTTP版本。紧接着是一个首部(header)小节,用来说明服务器要使用的附加信息。在首部之后是一个空行,再此之后可以添加任意的其他数据[称之为主体(body)]。<br />2.GET与POST区别<br />HTT

2011-01-30 14:59:00 363

转载 Ajax 原理图解

<br />Ajax其实已经使用很久了,但一直也没有时间正经的找本书系统看看,最近时间比较充裕可以好好补习一下了。本系列是基于Ajax和PHP结合进行讲解,主要是想和正在学习或想要学习Ajax的朋友分享下经验。希望大家多多拍砖共同交流。<br />众所周知,Ajax并不是一个新生的语言,它是一系列语言的结合体:HTML/XHTML、CSS、DOM、XML、XSLT、XMLHttp、JavaScript。可以说Ajax涉及的知识面的确是很广的,在Web开发中为我们提供了很方便的交互式用户体验模式。以往我们浏览

2011-01-30 14:10:00 499

转载 使用 jQuery 简化 Ajax 开发

jQuery 是一个JavaScript 库,它有助于简化 JavaScript™ 以及 Asynchronous JavaScript + XML (Ajax) 编程。与类似的 JavaScript 库不同,jQuery 具有独特的基本原理,可以简洁地表示常见的复杂代码。学习 jQuery 基本原理,探索其特性和功能,执行一些常见的 Ajax 任务并掌握如何使用插件扩展 jQuery。jQuery 是什么?请访问Ajax 技术资源中心,这是有关 Ajax 编程模型信息的一站式中心,包括很多文档、教程、论坛

2011-01-28 18:19:00 369

原创 【推荐】关于JS中的constructor与prototype【转】

<br />最初对js中 object.constructor 的认识:<br /> <br /><br /> <br /><br /> <br /> <br /> <br /><br /> <br /> <br />在学习JS的面向对象过程中,一直对constructor与prototype感到很迷惑,看了一些博客与书籍,觉得自己弄明白了,现在记录如下:<br />     我们都知道,在JS中有一个function的东西。一般人们叫它函数。比如下面的代码<br /> function Person(na

2011-01-22 23:42:00 1413

TC2.0(C语言编程)

此文件用于在TC2.0下C语言的编程,有需要的可以下载,在这里多谢大家多多支持。

2009-02-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除