zoukankan      html  css  js  c++  java
  • 【毕业设计】登陆功能完成

    【毕业设计】登陆功能完成

    忙活了一整天,总算是把弄出了一个功能了,虽然在整个网站来看这只是很小的一步,但是就我个人来看,这却是很大的一步。

    主要学习了以下功能:

    1. 分层次开发思想

      1. 在原有网站的基础上,添加了一个类库;
      2. 在类库中添加了“实体”“逻辑”“数据”三个层次的框架;
      3. 利用引用功能将类库引用到网站项目中。

    image 

    2. 字符串比较

    今天尝试了几种比较的方法,因为要利用IF语句来判断两个字符串是否相等,好做下一步的运算,具体尝试的方法如下:

    1. 直接用装等号 == 进行比较,失败。双等号只能直接比较“值”,而不能比较“串”,因为串在内存中是以一种数组的形式存在的,而值是以ASCⅡ存在的,所以不能直接比较“串”;
    2. 利用equals函数进行比较,失败。这个到不是说这个函数不好用,而是因为我在数据库中用的是char(10)类型,所以直接从数据库中提取出来的字符串由于不满10个字符,所以给补充空格了,导致比较失败;
    3. 利用 .Trim().Equals(另一个“串”)来比较,成功。因为采用了Trim方法,所以将提取出来的带有空格的数据格式化了一下,将空格全都拿下了,再用Equals来比较,这样就能比较出正确的结果了。
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using Layer.BlogDesignEntities;
    using System.Data;
    using System.Data.SqlClient;
    using Layer.BlogDesignDataAccess.UserDAL;
    
    namespace Layer.BlogDesignLogic.UserBLL
    {
        public class UserBLL:IUserBLL
        {
            bool IUserBLL.UserLoginCheck(UserInfo Use)
            {
                IUserDAL User = new UserDAL();
                UserInfo u;
    
                string userName=Use.UserName;
                string passWord=Use.PassWord;
    
                if (string.IsNullOrEmpty(userName))
                {
                    return false;
                }
    
                if (String.IsNullOrEmpty(passWord))
                {
                    return false;
                }
    
                u = User.getUserInfo(userName);
                
                if (u.UserName == null)
                {
                    return false;
                }
                else
                {
                    if (u.UserName.Trim().Equals(userName))
                    {
                        if (u.PassWord.Trim().Equals(passWord))
                        {
                            return true;
                        }
                        else
                        {
                            return false;
                        }
                    }
                    else
                    {
                        return false;
                    }
                }
            }
        }
    }

    3. 单字段读取

    字段的读取,我是用了Reader的方法来读的。Reader["数据库中的字段名"]。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using Layer.BlogDesignEntities;
    using System.Data;
    using System.Data.SqlClient;
    namespace Layer.BlogDesignDataAccess.UserDAL
    {
        class UserDAL:IUserDAL
        {
            string strConn = @"server=WIN-R3IAEV0RKR1\SQLEXPRESS;database=BlogDesign;uid=skyler;pwd=skyler";
    
            SqlConnection conn;
            SqlCommand cmd;
    
            UserInfo IUserDAL.getUserInfo(string userName)
            {
                string strCmd = "select * from Users where UserName='"+userName+"'";
                conn = new SqlConnection(strConn);
    
                conn.Open();
                cmd = conn.CreateCommand();
                cmd.CommandText = strCmd;
    
                UserInfo u = new UserInfo();
                SqlDataReader reader = cmd.ExecuteReader();
    
                if (reader.Read())
                {
                    u.UserId = (int)reader["UserId"];
                    u.PassWord = (string)reader["PassWord"];
                    u.UserName = (string)reader["UserName"];
                    u.UserMail = (string)reader["UserMail"];
                    u.UserRight = (int)reader["UserRight"];
                    reader.Close();
                    conn.Close();
                    return u;
                }
                else
                {
                    return u;
                }
            }
        }
    }
    

  • 相关阅读:
    STL Allocator
    Several NeedToKnow(assert/stdin/stdout/CString/Standard C++ Library)
    VS Project Property Sheet
    进度总结(3)
    进度总结(2)
    进度总结(4)
    进度总结(7)
    进度总结(1)
    进度总结(5)
    进度总结(6)
  • 原文地址:https://www.cnblogs.com/skyler/p/1710512.html
Copyright © 2011-2022 走看看