本文主要是介绍实践三层,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
短短的80分钟的视频,人家就用一个登陆的例子给我们讲述了三层的概念以及作用,若是还有什么疑惑的,可以看我的前一篇博客。
问题一:
相信大家都看到了那是关于数据库连接的问题,原来实战机房收费系统的时候我只是看着人家如何写的,自己就跟着照抄,完全不知道他到底是什么样的原理。不过今天算是慢慢的看懂了。
相信看到这个真的很熟悉,但是知道今天我才算真正的认识他,其实这一块的连接就跟
下面这幅图是密切联系的。
问题2:
但是为什么我们用sa作为登录名,也能连上呢????
在网上一查才知道原来sa是super administrator的简写,翻译过来就是超级管理员账户的意思,他拥有所有的权限。
但是我看到这里又有疑惑了,因为我在连接数据库时候就有windows身份验证还有SQLServer身份验证,那在代码上有什么差别吗?
从下面的图可以看出我们只要将sa那一串改为 Integrated Security=true就可以了,但是新的问题又出来了虽然在网
上查到说这个可以实现windows验证登录,但是这串代码是什么意思呢?原来他是“集成验证”,我们可以看出他是不
需要在连接字符串中载入用户名和密码的,这对于数据库的本身提高了安全性。
这是实现之后的效果图
问题3:
在第一次的验收过程中,师傅给我指出说这个登录输入错误都没有来个提示,这属于界面不友好,因此我又给自己的三层加了点东西将它实现了。
其实这个倒是挺简单的,主要就是要让B层将数据库没有此人存在的信息返回
给U层就好了。首先看B层的错误异常抛出
接下来就是让U层捕捉到这个错误,我们可以用Try Catch语句捕捉异常。
遗留问题
本以为做到这里就三层的例子就差不多了,但是又有一个新的问题出来了。让我们来看看
下面的图:
看到这里相信大家都明白这是这是D层对数据库的操作出了问题。理清思路之后
就不难发现,应该来一个判断,如果是新用户就直接插入,如果是老用户那就直接更新。
有了思路,问题就会有解决掉的方法。但是到目前为止还没有解决好,回头弄好了,我再把它贴上。
收获:
行动上,自己比原来多了一份积极主动去搜索尝试,而不是一味的看人家的。此外就是对于自己的学习出现的问题有个忠实的记录,他督促着我继续坚持克服一个个问题。
思想上,遇见问题就迎难而上,貌似多了一份耐心。
这篇关于实践三层的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!