[ Autofac打标签模式]开源DI框架扩展地址: https://github.com/yuzd/Autofac.Annotation/wiki *:first-child { margin-top: 0 !important; } .markdown-body>*:last-child { margin-bottom: 0 !important; } .markdown-body a:not([href]) { color: inherit; text-decoration: none;…
[ Autofac打标签模式]开源DI框架扩展地址: https://github.com/yuzd/Autofac.Annotation/wiki Componet标签把类型注册到DI容器 1. 把一个类型注册到DI容器 上面的例子就是把Student类型注册到容器 2. 把当前类型和父类注册到DI容器 上面的例子就是把Student2类型注册到容器 并且把Person类型也注册到容器根据Person类型拿到的是Student2的实体 3. 把当前类型和接口注册到DI容器 上面的例子就是把St…
[ Autofac打标签模式]开源DI框架扩展地址: https://github.com/yuzd/Autofac.Annotation/wiki *:first-child { margin-top: 0 !important; } .markdown-body>*:last-child { margin-bottom: 0 !important; } .markdown-body a:not([href]) { color: inherit; text-decoration: none;…
[ Autofac打标签模式]开源DI框架扩展地址: https://github.com/yuzd/Autofac.Annotation/wiki 前提条件 自己new一个对象不能实现拦截器功能,必须得从DI容器拿到的对象才能具备拦截器功能 可以参考 我写的文章介绍 拦截器原理简单介绍 用了Castle.Core组件 把你想要实现拦截器的目标类生成一个代理类. 然后织入拦截器,有2种方式 class + 方法为virtual的方式 这种方式需要 从容器中是根据一个classType来获取到目标…
为什么我喜欢打标签来配置AOP 1. 配置多很混乱,代码里面很难分辨出来哪些是AOP容器(比如属性注入) 2. 对于代码生成器生成的代码里面还需要手动加到配置里面 3. 连java spring现在都是清一色的注解来代替xml,这个就是趋势所在   我基于Autofac开发了一个基于标签来配置AOP的扩展   NUGET :Install-Package Autofac.Annotation   开源地址: https://github.com/yuzd/Autofac.Annotation 帮…
目录 分享基于EF6.Unitwork.Autofac的Repository模式设计 一.实现的思路和结构图 二.Repository设计具体的实现代码 三.Repository设计的具体的使用 四.思路总结 五.案例源码 分享基于EF6.Unitwork.Autofac的Repository模式设计 一.实现的思路和结构图 Repository的共同性 有一些公共的方法(增删改查), 这些方法无关于Repository操作的是哪个实体类,可以把这些方法定义成接口IRepository,然后有个…
*:first-child { margin-top: 0 !important; } .markdown-body>*:last-child { margin-bottom: 0 !important; } .markdown-body a:not([href]) { color: inherit; text-decoration: none; } .markdown-body .anchor { float: left; padding-right: 4px; margin-left: -2…
*:first-child { margin-top: 0 !important; } .markdown-body>*:last-child { margin-bottom: 0 !important; } .markdown-body a:not([href]) { color: inherit; text-decoration: none; } .markdown-body .anchor { float: left; padding-right: 4px; margin-left: -2…
一.三种实例化Bean的方式 1.使用类构造器实例化(默认无参数) <bean id="bean1" class="com.demo1.Bean1"></bean> 2.使用静态工厂方法实例化(简单工厂模式)静态方法 <bean id="bean2" class="com.demo2.Bean2Factory" factory-method="getBean2"><…
摘要:本文结合<Spring源码深度解析>来分析Spring 5.0.6版本的源代码.若有描述错误之处,欢迎指正. 在上一篇中提到过Spring中的标签包括默认标签和自定义标签两种,而两种标签的用法以及解析方式存在着很大的不同.本节开始详细分析默认标签的解析过程. 默认标签的解析是在parseDefaultElement函数中进行的,函数中的功能逻辑一目了然,分别对4种不同标签(import.alias.bean和beans)做了不同的处理. private void parseDefault…