0 0

6层结构问题10

    public abstract class abstractDALFactory
    {
        private static abstractDALFactory factory = null;
      
        public static abstractDALFactory CreateFactory()
        {
            String s = ConfigurationManager.AppSettings["FactoryType"].ToString();
            switch (s)
            {
                case  "sql":
                    factory = new SQLFactory();
                    break;
              
                default:
                    break;
            }
            return factory;
        }
        public abstract IempServices CreateEmpService();

    }



有人可以解释下吗  这些代码是啥意思
以上的代码是在 com.empDALFactory  这层写的

想了解下 每行的代码是什么意思、
2008年12月07日 19:48

2个答案 按时间排序 按投票排序

0 0

前面有人回答了,简单补充一些。

1、这是关于DAL的工厂的抽象基类。DAL也就是Data Access Layer,数据访问层,负责具体的与数据库交互的功能。SQLFactory是继承自这个abstractDALFactory的类么?是的话还可以理解……

2、这段代码看起来感觉有点糟。
CreateFactory()方法里对factory变量的赋值可以认为是冗余的——它没有起到缓存的作用,每次调用该方法实际上要么会返回一个新的SQLFactory对象,要么会返回null,因而factory这个静态变量的意义不明。

3、ConfigurationManager会从App.Config或者Web.Config等配置文件中读入配置信息。会是类似这样的一个XML文件:

<?xml version="1.0"?>
<configuration>
  <appSettings>
	  <add key="FactoryType" value="sql" />
  </appSettings>
  <connectionStrings>
    <add name="SQLConnString" connectionString="Data Source=(local)\SQLEXPRESS;Database=Test;Trusted_Connection=yes" />
  </connectionStrings>
</configuration>


4、貌似也没什么别的,有兴趣的话可以参考一下一个很简单的代码例子:
[共享] SampleWebSite
虽然不是“6层结构”,不过正是因为足够简单,里面的代码应该还算干净吧。

2008年12月09日 16:37
0 0

 
//定义抽象类 可以有方法实现 也可以有方法声明
public abstract class abstractDALFactory 
    { 
        //定义工厂  
        private static abstractDALFactory factory = null; 
       
       //方法实现
        public static abstractDALFactory CreateFactory() 
        { 
            //从配置文件中获得相应字符串
            String s = ConfigurationManager.AppSettings["FactoryType"].ToString(); 
            
            //通过该字符串 选折对应的 case 实例化不同的 工厂类
            switch (s) 
            { 
                case  "sql": 
                    factory = new SQLFactory(); 
                    break; 
               
                default: 
                    break; 
            } 
            return factory; 
        } 
        
        //这里是方法声明 继承它的子类需要实现这个方法
        public abstract IempServices CreateEmpService(); 

    }

 

2008年12月08日 19:59

相关推荐

    典型3层结构C#实例

    总结来说,这个“典型3层结构C#实例”涵盖了软件设计中的核心概念,包括分层架构、业务逻辑处理、数据库交互以及用户体验优化等方面,提供了学习和实践C#应用程序开发的良好平台。通过这样的实例,开发者可以更好地...

    jsp-mysql三层架构模板

    在三层架构中,需要根据业务需求设计合理的数据库表结构,遵循范式原则,以减少数据冗余和提高数据一致性。此外,还可以通过索引、分区等手段优化查询性能。 6. **安全性与事务管理** 在三层架构中,安全性非常...

    三层架构简易论坛源码

    三层架构简易论坛源码是一个基于ASP.NET技术和SQL数据库的初级项目,旨在帮助初学者理解并实践软件开发中的分层架构设计。在这个项目中,我们主要会涉及到以下关键知识点: 1. **三层架构**:三层架构是一种常见的...

    避开PCB假八层结构的温柔陷阱---浅谈六层板的叠层

    尤其在设计六层板时,如何避开所谓的“假八层结构”的陷阱,是设计师们需要关注的问题。 首先,需要了解什么是PCB叠层设计。PCB叠层是指将多层导电层(例如铜箔层)和非导电层(例如环氧树脂芯板和半固化片)叠加在...

    C#简单的3层架构demo

    三层架构是一种常见的软件设计模式,尤其在企业级应用开发中广泛应用。它将应用程序分为三个主要层次:表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer)。这样...

    三层架构案例(论坛)

    6. **错误处理与日志记录**:由于开发者提到存在少许BUG,所以项目可能包括了错误处理和日志记录机制,以便在遇到问题时能快速定位和修复。这通常涉及到异常捕获和日志写入,如使用Log4Net或NLog等工具。 7. **测试...

    winform多层架构实例

    5. 错误处理和日志记录:良好的错误处理机制和日志记录能帮助调试和追踪问题。 6. 设计模式的应用:如工厂模式用于创建对象,代理模式用于控制访问等。 这个实例对于初学者来说是一次宝贵的实践机会,可以帮助理解...

    asp.net三层架构婚庆公司网站

    6. 在线咨询:提供实时聊天或留言功能,方便用户咨询问题或提出建议。 在实现这样的网站时,ASP.NET三层架构的优势在于代码的可维护性、可测试性和可扩展性。各层之间通过接口或服务进行通信,降低了组件之间的耦合...

    javaweb三层架构实现用户登录实例.rar

    JavaWeb三层架构是一种常见的软件设计模式,用于构建可维护性和扩展性良好的Web应用程序。这个实例主要展示了如何...学习这个实例,不仅可以加深对JavaWeb三层架构的理解,还能提高你处理用户认证和授权问题的能力。

    C#语言的三层架构教程-含示例代码

    在三层架构的实际项目中,通常会按照以下结构组织代码: - **解决方案**: 包含多个项目。 - **UI项目**: 负责显示和收集用户数据。 - **BLL项目**: 处理业务逻辑。 - **DAL项目**: 管理数据库操作。 - **Model项目*...

    基于Nhibernate的三层架构设计(.NET)

    ### 基于Nhibernate的三层架构设计(.NET) #### 重要知识点解析 **1. 文档目的与范围** - **文档目的**:本文档旨在全面且系统地描述目标软件系统的架构,并通过多种视图从不同角度展示系统的各个方面,以满足不同...

    学员管理系统(C# 六层体系结构)

    【学员管理系统(C# 六层体系结构)】是一款基于C#编程语言和.NET Framework 2.0开发的软件,利用了SQL Server 2000作为数据库存储平台。这款系统设计采用六层架构,旨在提高代码的可维护性、可扩展性和可重用性。六层...

    简单的net三层架构网站

    6. **实习经验**:此项目是实习期间的任务,这表明在实际工作中,新手开发者可能会遇到一些常见问题,如代码错误、冗余等,需要具备解决问题和自我学习的能力。 总结来说,这个"简单的net三层架构网站"项目涵盖了...

    C# ASP.NET - 两层架构模式的小型网上购物商城

    ORM简化了数据库访问,使得业务逻辑层与数据库结构解耦。 7. **安全性与性能优化** 网购商城还需要考虑安全性问题,如防止SQL注入、XSS攻击等,以及性能优化,如缓存策略、数据库查询优化、页面压缩等。ASP.NET...

    三层架构的留言板系统

    三层架构的留言板系统是一种常见的软件设计模式,它将应用程序分为三个主要部分:表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer)。这样的设计有利于提高代码...

    基于ASP.NET三层架构的学生选课系统 源代码 毕业设计

    【ASP.NET三层架构】 ASP.NET三层架构是一种常见的软件开发模式,用于构建可扩展、易于维护的Web应用程序。这种架构将应用程序分为三个主要层次:表现层(Presentation Layer)、业务逻辑层(Business Logic Layer...

    基于3层架构的asp.net客户信息管理系统

    8. **异常处理与日志记录**:在三层架构中,应确保每一层都有适当的错误处理和日志记录机制,以便在出现问题时能快速定位和修复。 9. **测试与部署**:开发完成后,需进行单元测试、集成测试和系统测试,确保所有...

    C#餐饮管理系统 SQL2005+三层架构

    通过学习和理解这个【C#餐饮管理系统 SQL2005+三层架构】,开发者不仅可以掌握C#编程和.NET框架的应用,还能深入理解三层架构的设计思想和数据库管理,对于提升软件开发技能和解决实际问题的能力具有极大的帮助。...

    C# 三层架构 销售管理系统

    本项目是一个基于C#的销售管理系统,采用了经典的三层架构模式,旨在帮助开发者理解并学习如何在实际项目中应用这种架构。 三层架构是一种将应用程序分为三个独立部分的设计模式,这三层分别是表示层(Presentation...

Global site tag (gtag.js) - Google Analytics