三层登录VB.NET实现

来源:互联网 发布:黑页源码大全 编辑:程序博客网 时间:2024/04/29 05:50

三层登录VB.NET实现


          用C#实现了一遍三层登录,然后再使用VB.NET实现,然后转为七层登录,七层登录成功后,直接开始机房的VB.NET个人重构。

          具体的过程省略了,直接上代码:

          界面层

Imports Login.ModelImports Login.BLL'显示层Public Class UserLogin    Private Sub btnLogin_click(sender As Object, e As EventArgs) Handles btnLogin.Click        '定义实体层对象        Dim UIUserInfo As New Login.Model.User_Info        '定义BLL层的对象        Dim BLLManager As New Login.BLL.LoginManager        '将控件的输入信息赋值给实体层对象        UIUserInfo.UserID = txtUserName.Text()        UIUserInfo.UserPassword = txtPassword.Text()        '把UI层的信息,传给DLL层中的自定义函数        '通过自定义函数的处理结果的返回值,判断用户是否登录成功        If BLLManager.FunctionUI(UIUserInfo) Then            MsgBox("登陆成功!")        Else            MsgBox("登录失败!")        End If    End Sub    Private Sub btnCancel_Click(sender As Object, e As EventArgs) Handles btnCancel.Click        End    End SubEnd Class

          业务逻辑层

Imports Login.ModelImports Login.DAL.UserDAO'业务逻辑层Public Class LoginManager    '自定义函数,判断用户名和密码是否正确    Public Function FunctionUI(ByVal user As Login.Model.User_Info) As Boolean        '实例化实体层对象        Dim BLLUserInfo As New Login.Model.User_Info        '实例化DAL层对象        Dim DALUser As New Login.DAL.UserDAO        '实体层对象,用来接受DAL层传来的数据        BLLUserInfo = DALUser.FunctionDAL(user)        '判读从UI层和DAL层传来的数据是否相等,也就是用户名和密码是否相同        '通过在BLL层自定义函数的参数,把UI层用户输入的数据传到BLL层        '最后,在BLL层对数据进行处理,返回结果值        If BLLUserInfo.UserID.Trim = user.UserID.Trim And BLLUserInfo.UserPassword.Trim = user.UserPassword.Trim Then            Return True        Else            Return False        End If    End FunctionEnd Class

          数据访问层

'定义链接数据库类Module DbUtil    '定义链接数据库字符串    Public connString As String = "Server=liushaofeng;database=charge_sys;User ID=sa;Password=123456"End ModuleImports System.Data.SqlClientImports Login.Model'数据访问层Public Class UserDAO    '自定义函数,查询和接收数据库中的数据    Public Function FunctionDAL(User As Login.Model.User_Info) As Login.Model.User_Info        '定义实体层对象,接收来自数据库的数据        Dim DALUserInfo As New Login.Model.User_Info        '定义数据库记录集        '定义一个读取器        '若要创建 SqlDataReader,必须调用 SqlCommand 对象的 ExecuteReader 方法,而不要直接使用构造函数。        Dim conn As New SqlConnection(DbUtil.connString)        Dim reader As SqlDataReader        '具体的数据查询语句        Dim sql As String = "Select UserID,PWD From User_Info Where UserID=@UserName And PWD=@Password"        Dim cmd As New SqlCommand(sql, conn)        '获取SQL语句的具体内容        '获取上述SQL语句的具体类型,在此为Select        cmd.CommandText = sql        cmd.CommandType = CommandType.Text        '添加命令参数        cmd.Parameters.Add(New SqlParameter("@UserName", User.UserID))        cmd.Parameters.Add(New SqlParameter("@Password", User.UserPassword))        '打开数据连接        '执行查询语句,并生成一个DataReader        conn.Open()        reader = cmd.ExecuteReader()        '读取查询到的数据,并返回给相应的属性        While reader.Read()            '获取数据库中相应字段的数据            DALUserInfo.UserID = reader.GetString(0).ToString            DALUserInfo.UserPassword = reader.GetString(1)        End While        '返回查询到的实体        '关闭连接        Return DALUserInfo        conn.Close()    End FunctionEnd Class

          实体层

<span style="font-size:24px;">'实体层Public Class User_Info    '定义实体类UserInfo    '声明数据库中字段信息    Private _UserID As String    Public Property UserID As String        '读数据        Get            Return _UserID        End Get        '写数据        Set(value As String)            _UserID = value        End Set    End Property    Private _UserPassword As String    Public Property UserPassword As String        Get            Return _UserPassword        End Get        Set(value As String)            _UserPassword = value        End Set    End PropertyEnd Class</span>

0 0