总结学习的程序结构

原创 2007年09月18日 14:57:00

利用自己写过的一小段代码总结写,可能文字的表述太少,重在理解程序的结构

1 典型三层

数据表-----------> common类库-------> dataAccess 类库--------> business类库-------->web表示

思想:首先设计好数据表,

然后将表映射成common(数据缓存在内存中)

其次编写数据访问层dataAccess,访问数据库的参数从common类中取得,而common类中参数的值从 WEB 层中取得

再写business层,该层访问dataAccess

最后编写web,该层不能直接访问dataAccess层,而是通过business层来实现的

 

分析:

首先设计好数据表

表名mrBranch:字段BranchIDBranchNameSimpleCodeDelFlag

然后将表映射成common类库的MrBranchData (数据缓存在内)

public class MrBranchData:DataSet//注意该类继承自DataSet类的作用

{

public const string MRBRANCH_TABLE_NAME="mrBranch";//大小写,常量字段全部采用大写

public const string BRANCHID_FIELD="BranchID";

public const string BRANCHNAME_FIELD="BranchName";

public const string SIMPLECODE_FIELD="SimpleCode";

public const string DELFLAG_FIELD="DelFlag";

//默认的构造器

public MrBranchData()

{

BuildDataTables(); //调用方法

}

//生成内存表方法

private void BuildDataTables(){

DataTable table = new DataTable(MRBRANCH_TABLE_NAME);//定义类存中的表 类型

DataColumnCollection columns = table.Columns; //该表的列的集合

columns.Add(BRANCHID_FIELD,typeof(System.Int16));

columns.Add(BRANCHID_FIELD,typeof(System.String));

columns.Add(SIMPLECODE_FIELD,typeof(System.String));

columns.Add(DELFLAG_FIELD,typeof(System.String));

 

this.Tables.Add(table);//添加到DataSet.Tables

}

其次编写数据访问层dataAccess,访问数据库的参数从common类中取得,而common类中参数的值从WEB层中取得(web传给business,business传给dataAccess

Using xx.Common; //注意要引用common类库

public class MrBranch

{ private string conStr ;

private SqlConnection con ;

private SqlDataAdapter commandAdp ;

public MrBranch()//构造器

{ conStr = System.Configuration.ConfigurationSettings.AppSettings.Get("ConnectionString");

con = new SqlConnection(conStr);

commandAdp = new SqlDataAdapter();

}

private string paramChg(string str)//写方法下面用到

{

str = "@"+str;

return str;

}

//数据访问层的实现

public bool InsertMrBranch(string branchName,string simpleCode)

{ SqlCommand command = new SqlCommand();

command.CommandText = "InsertMrBranch";

command.Connection = con;

command.CommandType = CommandType.StoredProcedure; //proc

//proc的参数从commonMrBranchData中的BRANCHNAME_FIELD字段获得

command.Parameters.Add(paramChg(MrBranchData.BRANCHNAME_FIELD),SqlDbType.VarChar);

command.Parameters.Add(paramChg(MrBranchData.SIMPLECODE_FIELD),SqlDbType.VarChar);

//而类MrBranchData中的BRANCHNAME_FIELD字段的值从本方法的参数branchName获得,实际上本方法的参数是WEB层传过来的(WEB层的值传给business,business再调用本方法并且传参数给本方法)

command.Parameters[paramChg(MrBranchData.BRANCHNAME_FIELD)].Value = branchName;

command.Parameters[paramChg(MrBranchData.SIMPLECODE_FIELD)].Value = simpleCode;

 

con.Open();

int result = command.ExecuteNonQuery();

if(result>0)

{ return true;

}

else

{ return false;

}

}

再写business层,该层访问dataAccess层(实际上本人编写时,一般是先写web再写business去访问dataAccess

using xx.Common;

using xx.DataAccess;//注意引用类库

public class Branch

{

public bool InsertBranch(string txtName ,string txtSimCode)//web层的值传给该方法

{

bool result;

MrBranch DataAccess = new MrBranch();//实例化数据访问层的类

result = DataAccess.InsertMrBranch(txtName,txtSimCode);//传参,调用该类的方法

return result;

}

}

最后编写web,该层不能直接访问dataAccess层,而是通过business层来实现

using xx.Common;

using xx.dataAccess;

using xx.Business;

 

private void cmdAdd_Click(object sender, System.EventArgs e)//web层控件事件

{

//实例化businees层的Branch类,并且调用该类的InsertBrach方法,且传web层的值做参数

bool result = (new Branch()).InsertBranch(txtName.Text,txtSimCode.Text);

dgdBranch.DataBind();

}

未完。。。。。。

 
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

关于程序结构的学习教程

  • 2009-05-19 18:23
  • 151KB
  • 下载

Android应用程序结构总结

Android应用程序结构分析 由于是初学者,对于Android应用程序的结构的认识是一穷二白的,对于开发Android应用程序,必须先了解其程序的结构和作用。一下就用一个简单的例子来解剖: ...

黑马程序员-[C语言] 第一篇:运算符、程序结构总结

iOS之C语言--第一天总结 1.Mac OS X 下载软件可通过第三方网站或者appstore

学习小记-Flask Web(1)-Flask程序结构

编程虚拟环境flask框架的学习要基于virtualenv虚拟环境下:因为不同程序依赖不同框架,而退出虚拟环境后对全局python环境无影响

(三十一)C语言学习笔记(二)——函数与程序结构

1.extern 在一个源程序的所有文件中,一个外部变量只能在某个文件中定义一次,而其他文件可以通过extern声明来访问它。如在file1中定义变量: int x1 = 5; 在file2中可...

HEVC学习1—总框架与程序结构

要开始学术了。 我的研究方向是视频编解码,主要研究领域为HEVC,目前新手小白一枚。 这里通过博客的方式记录一下自己的学习过程,顺便也给与我一样的人一个参考。 一、HEVC简介 要对H...

C#学习笔记(一)C#程序结构

一、            注释 1.行注释:行注释以“//”开头 2.块注释:块注释以“/*”开始,以“*/”结束,注释内容在它们之间 /*输出“Hello World!”程...

C++ windows编程学习笔记(一)——程序结构的解析

#include #include #include #include using namespace std; //偶尔测试用的,不过好像没什么反应。。。 LRESULT CALLBACK Win...

C语言学习笔记(三)C的程序结构与编译执行过程

C的程序结构与编译执行过程 认识C程序的组成结构,是C开发的基础。 比如,一个简单的C程序: #include   #define PI 3.14  void...

CPP学习备忘[5] 程序结构

【1】头文件更重要的作用是在设计阶段(相对于编程阶段)规定界面,也就是通过头文件可以明白地看出,某个程序文件提供了什么服务,这种头文件称为用户界面。程序员有了用户界面就可以大胆地使用上面提供的资源,然...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)