欢迎来到天天文库
浏览记录
ID:42187921
大小:178.44 KB
页数:10页
时间:2019-09-10
《三层架构之系统登陆实例[修订]》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、三层架构,通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLD、数据访问层(呃)o区分层次的目的即为了“高内聚,低耦合”的思想。一、英文拓展:三层架构(S-^Tier/Architecture)表现层UI(UserInterface)业务逻辑层BLL(BusinessLogicLayer)数据访问层DM-(DataAccessLayer)二、各层作用解析:1、DAL作用:1)从数据源加载数据Select2)向数据源写入数据InsertAJpdate3)从数据源删除数据DeleteZUI的作用:
2、1)向用户展现特定业务数据。2)采集用户的输入信息和操作。3)特定的数据显示给用户原则:用户至上,界面简洁明了3.虹的作用:1)从ML中获取数据,供UI显示用。2)从UI屮获取用户指令和数据,执行业务逻辑。3)从UI中获取用户指令和数据,通过ML写入数据源。BI丄的职责机制:UI——BLi-_UIUIBT[:EVLBLLUI4数据模型的引入:为了避免三层之间的互相引用,所以出现MDdel,用丁•传输数据的,业务数据模型三、系统登陆实例,步骤:1、新建数据库(名称)LoginDam包含两张表:新建表Users列名数据类型
3、允许Null值?IDint□UserNamevarchar(50)□Passwordvarchar(50)□Emailvarchar(50)圈其中,设泄ID为主键,自增长。新建表Scores列名数据类型允许Null值IDint□UserNamevarchar(50)nPasswordvarchar(50)□Emailvarchar(50)團英中,设定ID为主键,自増长。Z编码阶段:解决方案名称:LoginSolution位.置:LoginDaro1)叽数据访问层:新建项H名称:LoginD^L默认命名空间:LoginDA
4、L添加类:UserEM)ScoreEWDbUti1引用:Logiiivbdel2.3.classDbUtil4.4.//sever机器名,Database数据库名,5.publicstaticstringConnString=@HServer=192.168.**.**;Database=LoginDemo;UserID=sa;Password=123456H;6.}7.}9・10・namespaceLogin.DAL11.12.〃每成功登陆一次用户,増加10点积分。135、5・publicvoidUpdateScore(stringuserName,intvalue)16.{16.using(SqlConnectionconnnewSqlConnection(Dblltil.ConnString))18-20.cmd.CommandText「:INSERTINTOSCORES(UserNamjScore)Values(@UserName,@Score)'1;21.22・cmd.Parameters.Add(newSqlParameter("@UserName",userName));23•6、cmd・Parameters.Add(newSq1Parameter("@Score*',value));24・25.conn.Open();26・cmd・ExecuteNonQuery();27.}28・}29.}30・}31<32.namespaceLogin.DAI33.{34.publicclassUserDAO35.{36・//根据userName和password返冋一个布尔值。37.publicLogin.Model•UserlnfoSelectUser(stringuserName,stringpassw7、ord)38・39.(40.//有了using以后,connection就可以自动关闭了41.SqlConnectionconn=newSqlConnection(DbUtil.ConnString);42.{43・SqlCommandcmd=conn.CreateCommand();44.cmd.CommandText二矿SELECTID,UserName,Password,EmailFROMUSERSWHEREUserName=@UserNameANDPassword=@PasswordM;45•cmd・Comman8、dType=CommandType.Text;46.cmd.Parameters.Add(newSqlParameter(M@UserNameK,userName));47.cmd.Parameters.Add(newSqlParameter("©Password”,password));48・49・conn.Ope
5、5・publicvoidUpdateScore(stringuserName,intvalue)16.{16.using(SqlConnectionconnnewSqlConnection(Dblltil.ConnString))18-20.cmd.CommandText「:INSERTINTOSCORES(UserNamjScore)Values(@UserName,@Score)'1;21.22・cmd.Parameters.Add(newSqlParameter("@UserName",userName));23•
6、cmd・Parameters.Add(newSq1Parameter("@Score*',value));24・25.conn.Open();26・cmd・ExecuteNonQuery();27.}28・}29.}30・}31<32.namespaceLogin.DAI33.{34.publicclassUserDAO35.{36・//根据userName和password返冋一个布尔值。37.publicLogin.Model•UserlnfoSelectUser(stringuserName,stringpassw
7、ord)38・39.(40.//有了using以后,connection就可以自动关闭了41.SqlConnectionconn=newSqlConnection(DbUtil.ConnString);42.{43・SqlCommandcmd=conn.CreateCommand();44.cmd.CommandText二矿SELECTID,UserName,Password,EmailFROMUSERSWHEREUserName=@UserNameANDPassword=@PasswordM;45•cmd・Comman
8、dType=CommandType.Text;46.cmd.Parameters.Add(newSqlParameter(M@UserNameK,userName));47.cmd.Parameters.Add(newSqlParameter("©Password”,password));48・49・conn.Ope
此文档下载收益归作者所有