首页 文章 精选 留言 我的
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/335664

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

EF架构~豁出去了,为了IOC,为了扩展,改变以前的IRepository接口

使用了4年的IRepository数据仓储接口,今天要改变了,对于这个数据仓储操作接口,它提倡的是简洁,单纯,就是对数据上下文的操作,而直正的数据上下文本身我们却把它忽略了,在我的IRepository接口里根本没有数据上下文对象,这是不完整的,也许你会说,我使用了基类,数据基类里有数据上下文,是的,我也是那样用的,但有时,这种方法有些死板了,真的,当你碰到IOC时,这种方式的短板就出来了,即,每个反射出来的Repository对象都是独立的,每个对象里的上下文也都是独立的,这是重点,由于上下文是独立的,所以,很多事我们都没法干,这包括<JOIN关联查询,非MSDTC的事务>,看了上面的这么多原因,所以,才决定,扩展我的IRepository接口,当然,严格说,这违背了面向对象的原则,接口不提倡扩展,只提倡新建,呵呵. 全新的IRepository接口 View Code 在 DbContext数据基类中的实现 public void SetDbContext(IUnitOfWork unitOfWork) { this.Db = (DbContext)unitOfWor...

对 Workflow 架构改进的猜想

开发 workflow 已经是两年前的事了,那是我第一家公司的第一个有形产品,也是我主导开发的。在这里,真的要感谢以前的主管,使我从一个程序员爬到了技术主导的位置。 workflow 的项目背景是这样的:公司是个集团公司,主产业是制造和电子,开发人员有几百号,我们属于第二个事业部,用这个系统的有管理层,业务层大约上万人,每个月的数据量为 200多万笔,这个产品只是内销。就是在这样的背景下公司组了 20 个人的团队,在两年的时间开发了 workflow 系统, 它的开发语言是 Java, 总体架构是 Struts+Hibernate+Spring, 有 J2EE 的部分,也有 J2SE 的部分,采用的标准是 WMfC. 当时数据库只有一个(Oracle 数据库),在单独的服务器上,配置很高,Web 服务器也是单独的高档机,还有就是客户端的 Application. 典型的三层架构。这样的系统能够有多大的吞吐量呢,性能如何能,可想而知。系统的性能没有禁得住应用的考验,于是我们反思了,从新考虑了系统架构。发现瓶颈在数据库,不过那时我就离职了,在公司整整呆了 2年零6个月。 事隔这么久,只有猜...

相关文章

发表评论

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。