简单三层
界面层
- Public Class Login
- Private Sub btnLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLogin.Click
- Dim LUser As New Entity.User
- Dim BCheck As New Bll.BllLogin
- LUser.User_Id = txtUserId.Text
- LUser.User_Pwd = txtPwd.Text
- If BCheck.Check(LUser) = True Then
- MsgBox("登录成功!")
- Else
- MsgBox("登录失败!")
- End If
- End Sub
- Private Sub btnCancle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancle.Click
- End
- End Sub
- End Class
BLL层
- Public Class BllLogin
- Function Check(ByVal User As Entity.User) As Boolean
- Dim DaUser As New DAL.DalUserInfo
- Dim BlUser As New Entity.User
- BlUser.User_Id = User.User_Id
- BlUser = DaUser.Check(BlUser)
- If BlUser.User_Pwd = User.User_Pwd Then
- Return True
- Else
- Return False
- End If
- End Function
- End Class
DAL层
- Imports System.Data.SqlClient
- Public Class DalUserInfo
- Dim ConnStr As String = "Data Source=192.168.24.186;Initial Catalog=Student;User ID=sa;Pwd=123456"
- Dim conn As SqlConnection = New SqlConnection(ConnStr)
- Function Check(ByVal User As Entity.User) As Entity.User
- Dim sql As String = "select * from UserInfo where User_ID='" & User.User_Id + "'"
- Dim cmd As SqlCommand = New SqlCommand(sql, conn)
- Dim read As SqlDataReader
- Try
- conn.Open()
- read = cmd.ExecuteReader
- read.Read()
- User.User_Id = read.Item("User_ID")
- User.User_Pwd = read.Item("User_Pwd")
- Return User
- Catch ex As Exception
- User.User_Pwd = ""
- Return User
- End Try
- End Function
- End Class
实体层
- Public Class User
- Private userId As String
- Private userPwd As String
- Public Property User_Id() As String
- Get
- Return userId
- End Get
- Set(ByVal value As String)
- userId = value
- End Set
- End Property
- Public Property User_Pwd() As String
- Get
- Return userPwd
- End Get
- Set(ByVal value As String)
- userPwd = value
- End Set
- End Property
- End Class
三层+简单工厂
界面层代码不变
Bll层
- Public Class BllLogin
- Function Check(ByVal User As Entity.User) As Boolean
- Dim DalFactory As New DAL.DFactory
- Dim BlUser As New Entity.User
- BlUser.User_Id = User.User_Id
- BlUser = DalFactory.CreateUserInfo.Check(BlUser)
- If BlUser.User_Pwd = User.User_Pwd Then
- Return True
- Else
- Return False
- End If
- End Function
- End Class
工厂
- Imports [Interface]
- Public Class DFactory
- 'Dim DataBase As String = "Access"
- Dim DataBase As String = "Sql"
- Function CreateUserInfo() As IUserInfo
- Dim DB As IUserInfo
- Select Case DataBase
- Case "Sql"
- DB = New DalUserInfo
- 'Case "Access"
- ' DB = New D_UserInfoAccess
- End Select
- Return DB
- End Function
- End Class
接口
- Public Interface IUserInfo
- Function Check(ByVal IUser As Entity.User) As Entity.User
- End Interface
DAL层
- Imports System.Data.SqlClient
- Public Class DalUserInfo : Implements [Interface].IUserInfo
- Dim ConnStr As String = "Data Source=192.168.24.186;Initial Catalog=Student;User ID=sa;Pwd=123456"
- Dim conn As SqlConnection = New SqlConnection(ConnStr)
- Public Function Check(ByVal IUser As Entity.User) As Entity.User Implements [Interface].IUserInfo.Check
- Dim sql As String = "select * from UserInfo where User_ID='" & IUser.User_Id + "'"
- Dim cmd As SqlCommand = New SqlCommand(sql, conn)
- Dim read As SqlDataReader
- Try
- conn.Open()
- read = cmd.ExecuteReader
- read.Read()
- IUser.User_Id = read.Item("User_ID")
- IUser.User_Pwd = read.Item("User_Pwd")
- Return IUser
- Catch ex As Exception
- IUser.User_Pwd = ""
- Return IUser
- End Try
- End Function
- End Class
三层+抽象工厂
界面层代码不变
Bll层代码不变
接口代码不变
工厂代码
- Imports [Interface]
- Imports System.Reflection
- Public Class DFactory
- 'Dim DataBase As String = "Access"
- 'Dim DataBase As String = "Sql"
- Dim strDB As String = System.Configuration.ConfigurationSettings.AppSettings("DBString")
- Function CreateUserInfo() As IUserInfo
- Return CType(Assembly.Load("DAL").CreateInstance("DAL.DalUserInfo" & strDB), IUserInfo)
- End Function
- End Class
DAL层
- Imports System.Data.SqlClient
- Public Class DalUserInfoSql : Implements [Interface].IUserInfo
- 'Dim ConnStr As String = "Data Source=192.168.24.186;Initial Catalog=Student;User ID=sa;Pwd=123456"
- Dim strConnStr As String = System.Configuration.ConfigurationSettings.AppSettings("ConnStr")
- Dim conn As SqlConnection = New SqlConnection(strConnStr)
- Public Function Check(ByVal IUser As Entity.User) As Entity.User Implements [Interface].IUserInfo.Check
- Dim sql As String = "select * from UserInfo where User_ID='" & IUser.User_Id + "'"
- Dim cmd As SqlCommand = New SqlCommand(sql, conn)
- Dim read As SqlDataReader
- Try
- conn.Open()
- read = cmd.ExecuteReader
- read.Read()
- IUser.User_Id = read.Item("User_ID")
- IUser.User_Pwd = read.Item("User_Pwd")
- Return IUser
- Catch ex As Exception
- IUser.User_Pwd = ""
- Return IUser
- End Try
- End Function
- End Class
配置文件
- <?xml version="1.0" encoding="utf-8" ?>
- <configuration>
- <startup>
- <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0,Profile=Client" />
- </startup>
- <appSettings>
- <add key="ConnStr" value ="Data Source=192.168.24.186;Initial Catalog=Student;User ID=sa;Pwd=123456"></add>
- <add key="DBString" value ="Sql"></add>
- </appSettings>
- </configuration>