最近研究参数展示,略微总结一下,以后继续补充:
首先:从总体上为三层架构的理论知识简略的画了一张思维导图。
其次:在网上搜索了一个关于三层的例子,进行了一下实战的练习。具体代码不作展示,将其中较难理解的部份略微解释。
第一部份:
cmd.Parameters.Add(newSqlParameter("@UserName",userName)); cmd.Parameters.Add(newSqlParameter("@Password",password));
解释:
①SqlParameter是sql的参数类,在这里实例化了一个这样的类,并传入参数userName,现在须要把这个参数加入到Command的参数列中,之后执行的时候才会用userName替换掉sql语句中的@userName。
②以上这种方式为匿名方式,因为cmd.Parameters.Add方法须要传入一个SqlParameter的实例
③第二种方式:
SqlParameterpar = new SqlParameter("@UserName",userName); cmd.Parameters.Add(par);
④SqlParameter的构造函数,第一个参数是在sql语句中的占位符,第二个参数是须要传入的参数,@是一个占位符。
第二部份:
user.ID =reader.GetInt32(0); user.UserName =reader.GetString(1); user.Password =reader.GetString(2);
解释:
①获得指定列的 32位有符号整数形式的值。GetInt32(0)=输入的 32位有符号整数形式的值。表现来是用户的ID号也就是一串数字。后两句相信你根据第一句的解释你也就会了。
②第二种方式:
user.ID =int.Parse(reader["ID"].ToString ());
user.UserName =reader["UserName"].ToString();
user.PassWord =reader["Password"].ToString();
第三部份:
三层的调用关系,我用一张包图向大家展示它们之间的调用关系。
最后:展示一下我模拟三层的例子自己为机房收费系统画的包图、类图以及时序图,由于包图已在下面进行了展示,就不再赘述。
1.类图:
UI层:
BLL层:
DAL层:
实体层:
2.时序图:
以上就是我对三层架构的全体总结。希望读者批评指正。
文章结束给大家分享下程序员的一些笑话语录:
PC软件体积大,是因为一个PC软件功能往往较多,能够满足你一个方面的需求,而一个iphone软件往往没几行代码,干一件很小的事情,自然需要的软件就多。就像吃西瓜和吃瓜子的来比数目,单位不同啊。