文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>三层架构

三层架构

时间:2011-02-24  来源:双魂人生

   访问流程是这样的:首先用户从显示层看到内容,并对其操作,然后转到业务逻辑层,进行业务逻辑判断,

   最后传到数据访问层,对数据库进行相关操作,然后再按相反的顺序返回给用户,在这个过程中我们用到了

   实体层!

Modes层是存放实体类的,它是数据传递的载体!为了能保障数据能够稳定以流的方式传递,我们需要对实体进行序列化

    [Serializable]
   public class SysFun
    {
       public int NodeId { get; set; }
       public string DisplayName { get; set; }
       public int parentNodeId { get; set; }
    }

业务逻辑层

using System.Collections.Generic;

 [DataObject]
  public static class UserManager
    {

   ............

    }

三层的流程就不用多说了,相信大家都很明了,下面来说说三层中关于外键的处理

一般情况下我们会采取两种方式进行处理:

1 内连接inner join:在数据表中我们既然建立了主外键的关系,所有要读到两种相关联的表的数据是很简单的,我们只需要在sql语句中写个内连接就可以了

如:select s.name,s.pwd,a.age from student s inner join Age a on s.id=a.id

或者:select s.name,s.pwd,a.age from student,age where student.id=age.id

2 每一张表对应一个类,在拥有外键的类中,创建一个拥有主键类的实例作为其属性,

  访问的时候思路就清晰多了

在插入数据的时候,有时候我们需要这种效果,就是插进去之后,接着读取该插进去信息的记录,这个时候我们可以采取下面的方式实现

private const string SQLINSERT = "insert into Books(Title,Author,CategoryId,UnitPrice,Clicks,PublisherId,PublishDate,ISBN,WordsCount,ContentDescription,AurhorDescription,EditorComment,TOC) values "        "(@Title,@Author,@CategoryId,@UnitPrice,@Clicks,@PublisherId,@PublishDate,@ISBN,@WordsCount,@ContentDescription,@AurhorDescription,@EditorComment,@TOC);" + "select @@identity as BOOKID";

红色的部分就是直接获得它的id的,这样就能很好的获得它的信息了

 

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载