C#图书管理系统之用户登陆界面实现(一)
使用MVC思想,大题目录结构如下
设计表
数据库连接工具类
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace Util
{public class DbUtil{//数据库连接public static SqlConnection getConnection(){string strCon = @"Data Source=.; Initial Catalog=TestDB; Integrated Security=True;";SqlConnection sqlCon = new SqlConnection(strCon);return sqlCon;}}
}
用户类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace Model
{//用户类public class User{private int id; //用户编号private string userName; //用户名private string password; //用户密码private string email; //用户邮箱private string phoneNumber; //用户手机号public int Id{get { return id; }set { id = value; }}public string UserName{get { return userName; }set { userName = value; }}public string Password{get { return password; }set { password = value; }}public string Email{get { return email; }set { email = value; }}public string PhoneNumber{get { return phoneNumber; }set { phoneNumber = value; }}public User(){}public User(string userName,string password){this.userName = userName;this.password = password;}public User(int id,string userName, string password){this.id = id;this.userName = userName;this.password = password;}}
}
通过Dao层连接数据库进行用户身份验证
注:这里sql语句会发生sql注入,极不安全
//using MySql.Data.MySqlClient;
using System;
using System.Collections.Generic;
using System.Data.OleDb;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Util;
using Model;
namespace Dao
{public class UserDao{public UserDao(){}public Boolean Login(string userName,string password){bool flag=false;SqlConnection sqlCon;sqlCon = DbUtil.getConnection();sqlCon.Open();try{// string sql= "SELECT userName,password FROM [user] where userName='"+userName+"'AND password ='"+password+"'";string sql = "SELECT * FROM [user] WHERE username='" + userName + "' AND password='" + password + "'";SqlCommand command = new SqlCommand(sql,sqlCon);SqlDataReader reader = command.ExecuteReader();if (reader.Read()){flag = true;}else{flag= false;}}catch(Exception ex){}sqlCon.Close();return flag;}}
}
窗口登陆点击事件
using Model;using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Util;
using Dao;
namespace WindowsFormsApp1
{public partial class LoginForm : Form{public LoginForm(){InitializeComponent();}private void textBox1_TextChanged(object sender, EventArgs e){}private void button1_Click(object sender, EventArgs e){//获取文本框的内容string userName = userNameTxt.Text;string password = passwordTxt.Text;bool flag;if (stringUtil.isEmpty(userName)){MessageBox.Show("用户名不能为空!");return;}if (stringUtil.isEmpty(password)){MessageBox.Show("密码不能为空!");return;}//实例化用户User user = new User(userName, password);if (stringUtil.isNotEmpty(userName) && stringUtil.isNotEmpty(password)){UserDao userDao = new UserDao();//将用户的用户名和密码传入flag = userDao.Login(user.UserName, user.Password);if (flag){MessageBox.Show("登陆成功!!!");}else{MessageBox.Show("登陆失败!!!");}}}//重置文本框private void button2_Click(object sender, EventArgs e){userNameTxt.Text = "";passwordTxt.Text = "";}private void cboType_SelectedIndexChanged(object sender, EventArgs e){}//跳转注册界面private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e){Register rs=new Register();rs.Show();this.Hide();}}
}
效果如下:
最后,能熟练使用debug非常重要!!!
C#图书管理系统之用户登陆界面实现(一)相关推荐
- 学籍管理系统制作教程第二天之 用户登陆界面(三层)
最近工作比较忙,所以没有连续的来写,今天有空了继续前面的 今天做用户登陆界面,使用三层架构,那么我就需要先理解什么是三层和为什么使用三层. 第一:什么是三层,UI表现层也就是界面,放各种界面如登陆界面 ...
- 利用JAVA手机登录页面_Java用户登陆界面例子 代码
2,流式布局:FlowLayout.布局方式为从左到右,从上到下.是JPanel(轻量级容器)的默认面板布局. 3,网格布局:GridLayout.布局方式为行和列组成的网络.布局方法:setLayo ...
- JAVA swing之用户登陆界面
一:本文主要介绍用java画图写一个用户登录界面,其中包括的功能效果有: 1:新用户的创建 2:将用户信息保存在txt文件,文件路径设置为D:\\map\\Secret1.txt,路径可以自行修改 3 ...
- springboot整合mybaits-plusmybaits实现用户登陆界面(适合入门)+唯美界面
springboot整合mybaits-plus/mybaits实现用户登陆界面(一步步解析)+唯美界面 文章目录 springboot整合mybaits-plus/mybaits实现用户登陆界面(一 ...
- 界面开发(2)--- 使用PyQt5制作用户登陆界面
使用PyQt5制作用户登陆界面 上篇文章已经介绍了如何配置PyQt5环境,这篇文章在此基础上展开,主要记录一下如何使用 PyQt5 制作用户登陆界面,并对一些基础操作进行介绍. 下面是具体步骤,一起来 ...
- Java用户登陆界面例子 代码
转自http://www.cnblogs.com/liwustore/archive/2013/01/01/2841492.html 好久没有总结这个月的学习了,先唠叨几句,这个月工作烂的一塌糊涂.跟 ...
- jquery实现登录成功界面_jquery实现用户登陆界面(示例讲解)
实例如下所示: var cnresu = false; $(function(){ $("input[name='uname']").blur(function(){//blur从 ...
- Ubuntu 18.04 用户登陆界面死循环 NVIDIA 驱动导致用户登陆界面死循环
Ubuntu 18.04 用户登陆界面死循环 1. 卸载原来NVIDIA 所有驱动 2. 重新安装驱动 buntu 18.04 用户登陆界面循环输入密码 Ubuntu 安装 NVIDIA 驱动导致用户 ...
- Ubuntu 16.04 用户登陆界面 循环输入密码 进不去图形界面
Ubuntu 16.04 用户登陆界面死循环 1. 卸载原来NVIDIA 所有驱动 2. 重新安装驱动 buntu 16.04 用户登陆界面循环输入密码 Ubuntu 安装 NVIDIA 驱动导致用户 ...
最新文章
- JavaScript中 for、for in、for of、forEach等使用总结
- [跟我学UML] UML包图中的包引入和包合并
- php88,php88微博
- MySQL GTID复制Slave跳过错误事务Id以及复制排错问题总结
- Spring boot - Thymeleaf 使用
- AI+RPA,让你的工作模式开启“新方式”
- 大数据之_Hadoop工作笔记002---SpringBoot连接Hadoop HDFS进行创建文件夹,添加上传文件,删除文件,下载文件操作
- Java学习资源、视频教程汇总
- 图:活动现场双屏管理系统V3-多线程抽奖版软件,完美升级收工!历时3个月,艰辛坎坷...
- sudo: vim:找不到命令_linux常用命令(3)
- 2W+汉字转拼音JS字库(UTF-8生僻字等通用无乱码)
- 多品种小批量产品怎么做精益生产?
- 【VOLTE】【SRVCC】 SRVCC TO 3GPP
- Microsoft Store转圈圈
- 提取mdx字典文件中的数据
- [内网渗透]—NetLogon 域内提权漏洞(CVE-2020-1472)
- [转]Cortex-a8 arm11 arm9 xscale powerpc 嵌入式处理器实测性能
- linux查看磁带机端口,linux、unix下使用磁带机的常用命令
- 鲜为人知的Linux命令续
- 文章标题 Chris and Magic Square