期末Web大作业图书管理系统(.net&C#)

举报
肥学 发表于 2022/03/26 00:24:22 2022/03/26
【摘要】 目录 视频演示一、实验目的二、设备与环境三、实验内容1.需求分析:2.逻辑结构:3.系统设计 四、实验结果及分析点击直接资料领取 视频演示 .net图书管理系统 特别介...

视频演示

.net图书管理系统


特别介绍

📣小白练手专栏,适合刚入手的新人欢迎订阅编程小白进阶

📣python有趣练手项目里面包括了像《机器人尬聊》《恶搞程序》这样的有趣文章,可以让你快乐学python练手项目专栏

📣另外想学JavaWeb进厂的同学可以看看这个专栏:传送们

📣这是个面试和考研的算法练习我们一起加油上岸之路

一、实验目的

在VisualStudio开发平台,运用C#语言进行Web端开发,能够熟练使用并掌握.NET开发工具。

  
  
 
 
  • 1

二、设备与环境

(1) 硬件设备:PC机一台
(2) 软件环境:Windows操作系统,数据库管理系统Mysql, VisualStudio等。

三、实验内容

1.需求分析:

图书馆作为大学中同学们主要利用的场所,必定会是最繁忙的地方。当图书档案由人看管,登记,修改,增删,查询时,效率低,而且容易出错,数据不安全,并且时间很久之后数据量增加会导致数据检索困难等诸多问题。当图书馆发展后,过多的数据使图书馆管理问题凸显。我们编写程序用于图书馆信息管理、图书借阅、图书登记、用户登记、新增和删减图书等服务项目,利用这些技术可以提高图书馆工作效率,使图书馆给同学们提供更好的服务,是系统开发的主要目的。

  
  
 
 
  • 1

2.逻辑结构:

本系统总共涉及了多个界面,包括登陆、注册、管理员对人员、图书的增删改查。用户对自己借阅图书的增删改查,以及对个人信息的修改。
数据库中总共使用了4张数据表,分别为用户表(表中falg属性若为1是管理员为0是普通用户),用户借阅表,书籍分类表,书籍表。

3.系统设计

(1)系统E-R图
在这里插入图片描述

(2)系统框架图
在这里插入图片描述

4.项目演示
(1)管理员主界面展示

在这里插入图片描述

(2)用户主界面展示

在这里插入图片描述

(3)管理员图书管理界面

在这里插入图片描述

(4)用户管理界面

在这里插入图片描述

(5)管理员书籍管理界面
在这里插入图片描述

(6)用户登陆和注册:

在这里插入图片描述

(7)更改用户信息

在这里插入图片描述

(8)相关程序代码

a.数据库的连接操作
<connectionStrings>
    <add name="MySQLConnectionString" connectionString="server=localhost;user id=root;password=root;persistsecurityinfo=True;database=netcourse" providerName="MySql.Data.MySqlClient"/>
  </connectionStrings>

  
  
 
 
  • 1
  • 2
  • 3
  • 4

b.链接MySQL的绑定(举例)

conn = DBOperation.GetMySqlConnection();
                conn.Open();
                MySqlCommand sql = new MySqlCommand();
                sql.Connection = conn;
                sql.CommandText = "select * from user where ID=@ID";
                sql.Parameters.AddWithValue("@ID", ID);
                MySqlDataReader reader = sql.ExecuteReader();

  
  
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

c.用户的登录操作

 public User Login(string userName, string password)
        {
            User user = userDao.queryByID(userName);
            if(user == null)
            {
                Console.WriteLine("userName错了");
                return null;
            }
            else{
                if(user.passWord == password)
                {
                    return user;
                }
                else
                {
                    Console.WriteLine("密码错了");
                    return null;
                }
            }
        }
public User queryByID(String ID)
        {
 //           try
 //           {
                conn = DBOperation.GetMySqlConnection();
                conn.Open();
                MySqlCommand sql = new MySqlCommand();
                sql.Connection = conn;
                sql.CommandText = "select * from user where ID=@ID";
                sql.Parameters.AddWithValue("@ID", ID);
                MySqlDataReader reader = sql.ExecuteReader();
                User user = null;
                if (reader.Read())
                {
                    user = new User(reader.GetString("ID"), reader.GetString("userName"), reader.GetInt32("age"), reader.GetString("passWord"), reader.GetInt32("flag"));
                }
                reader.Close();
                return user;
 //           }
      
        }

  
  
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41

d.用户查询(例子):

public List<User> queryByUserName(String userName)
        {
            try
            {
                conn = DBOperation.GetMySqlConnection();
                conn.Open();
                MySqlCommand sql = new MySqlCommand();
                sql.Connection = conn;
                sql.CommandText = "select * from user where userName=@userName";
                sql.Parameters.AddWithValue("@userName", userName);
                MySqlDataReader reader = sql.ExecuteReader();
                List<User> userList = null;
                if (reader.Read())
                {
                    userList = new List<User>();
                    User user = new User(reader.GetString("ID"), reader.GetString("userName"), reader.GetInt32("age"), reader.GetString("passWord"), reader.GetInt32("flag"));
                    userList.Add(user);
                    while (reader.Read())
                    {
                        user = new User(reader.GetString("ID"), reader.GetString("userName"), reader.GetInt32("age"), reader.GetString("passWord"), reader.GetInt32("flag"));
                        userList.Add(user);
                    }
                }
                reader.Close();
                return userList;
            }
            catch (Exception e)
            {
                
                return null;
            }
            finally
            {
                conn.Close();
            }
        }
         

  
  
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37

9.数据库相关表信息
a.图书信息表

在这里插入图片描述

b.用户信息表
在这里插入图片描述

c.分类表

在这里插入图片描述

d.借书表
在这里插入图片描述

四、实验结果及分析

本次实验是我入学以来最艰苦的一次,因为在编写过程中对C#语言基本语法没有详细学习过,虽然写法与Java相似度很高但是在实际操作过程中也遇到了不少的困难。在经过大量资料查询的情况下,总算是勉强完成了大部分功能的实现。刚开始着手时,还不会进行数据绑定,后来在网上寻找了教程,一点点的对项目进行修改。
本项目的逻辑结构很简单设计模式还是采用了MVC结构,在设计具体功能的时候也简化了业务逻辑比如户登录的例子,用户在输完ID和密码之后,后台读取用户输入的信息,然后将其值作为SQl查询语句的对象,之后对数据库进行查询操作,若检测结果为真,则用户登录成功,反之登录失败并把提示信息返还到前端界面。
虽然实验完成了,但我在本次实验中也了解到了自己很多不足比如对控件的运用和样式设定方面,我觉得和我平时没有多练习有直接关系。希望以后能更加深入透彻的掌握.NET语言,把这个系统做的更完善一点。

点击直接资料领取

回复.net图书管理系统即可获取
这里有python,Java学习资料还有有有趣好玩的编程项目,更有难寻的各种资源。反正看看也不亏。

文章来源: blog.csdn.net,作者:肥学,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/jiahuiandxuehui/article/details/122235327

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。