三层架构之UI层
之前已经发表了BLL,DAL,MODEL,三个层的源码
继续UI层:
先简单实现用户的登录及注册
高级操作可按照上一篇文章进行源码完善

如图所示↑ UI层目录文件
Reg.aspx 进行注册操作 <数据库的写入和执行>
后台源码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Model;
using BLL;
using DAL;
using System.Windows.Forms; namespace WebApp
{
public partial class Reg : System.Web.UI.Page
{
User_Table user_Table;
LoginManger lm = new LoginManger(); //实例化登录验证类
AEScook aScook = new AEScook(); //实例化AES加密类
protected void Page_Load(object sender, EventArgs e)
{
//自动执行
}
protected void btn_Reg_Click(object sender, EventArgs e)
{
if (txt_Password.Text.Trim() == "" && txt_Password2.Text.Trim() == "")
{
try
{
throw new Exception("注册失败");
}
catch
{
Response.Write("<script>alert('注册密码不能为空!请重新输入。')</script>");
}
}
else
{
if (txt_Password.Text.Trim() != txt_Password2.Text.Trim())
{
try
{
throw new Exception("注册失败");
}
catch
{
Response.Write("<script>alert('两次输入的密码不一致,请重新输入!')</script>");
}
}
else
{
if (txt_Date_Of_Birth.Text.Trim() == "")
{
try
{
throw new Exception("注册失败");
}
catch
{
Response.Write("<script>alert('请填写出生日期!')</script>");
}
}
else
{
if (txt_NickName.Text.Trim() == "")
{
try
{
throw new Exception("注册失败");
}
catch
{
Response.Write("<script>alert('请输入您的登录账号!')</script>");
}
}
else
{
if (txt_UserName.Text.Trim() == "")
{
try
{
throw new Exception("注册失败");
}
catch
{
Response.Write("<script>alert('请输入您的姓名!')</script>");
}
}
else
{ hd_CreateDate.Value = System.DateTime.Now.ToString(); //获取当前服务器时间
User_Table user_Table = new User_Table()
{
UserName = txt_UserName.Text.Trim(),
NickName = txt_NickName.Text.Trim(),
Password = txt_Password.Text.Trim(),
PwdDeed = aES(txt_Password2.Text.Trim()),
Sex = ddl_Sex.Text.Trim(),
Date_Of_Birth = Convert.ToDateTime(txt_Date_Of_Birth.Text.Trim()),
IDCard = txt_IDCard.Text.Trim(),
CreateDate = Convert.ToDateTime(hd_CreateDate.Value.Trim().ToString())
}; string messageStr = "";
if (lm.Add(user_Table, out messageStr))
{
Response.Write("<script>alert('注册成功')</script>");
Response.Redirect("Sign.aspx", false);
}
else
{
MessageBox.Show(messageStr);
txt_UserName.Focus();
}
}
}
}
}
}
} public string aES(string pwdeed) //密钥加密
{
pwdeed = txt_Password2.Text.Trim(); //调用ASE加密密码并传值给pwdeed
aScook.AESEncrypt("AAES", pwdeed, "");
return pwdeed;
}
}
}
三层架构之UI层的更多相关文章
- 【转载】 JAVA三层架构,持久层,业务层,表现层的理解
JAVA三层架构,持久层,业务层,表现层的理解 转载:http://blog.csdn.net/ljf_study/article/details/64443653 SSH: Struts(表示层)+ ...
- 为什么三层架构中业务层(service)、持久层(dao)需要使用一个接口?
为什么三层架构中业务层(service).持久层(dao)需要使用一个接口? 如果没有接口那么我们在控制层使用业务层或业务层使用持久层时,必须要学习每个方法,若哪一天后者的方法名改变了则直接影响到前面 ...
- 三层架构中bll层把datatable转换为实体model的理解
看了很多人的项目,很多都是用到三层架构,其中BLL层中有一种将DataTable转换为实体的方法.一直没有明白为啥要这样做,今天特意去搜索了一下,如果没有答案我是准备提问,寻求解答了.还好找到一个相关 ...
- MySQL的三层架构之一----连接层
1.mysql的服务端可以分为三层,分别是连接层,SQL层,存储层. 2.架构图 3.连接层定义了通信server端与client协议:
- 请问JAVA三层架构,持久层,业务层,表现层,都该怎么理解?和MVC三层模型有什么区别
持久层用来固化数据,如常说的DAO层,操作数据库将数据入库业务层用来实现整体的业务逻辑 如 前台获得了数据,逻辑层去解析这些数据,效验这些数据等操作表现层很好解释 你现在看到的网页 一些界面 都属于 ...
- MVC和三层架构的区别
MVC是一种设计模式,Modal,View,Controller,三层分开,解开耦合,方便替换. 三层架构包括 UI层,业务逻辑层,Dao层.UI层负责展示数据,业务逻辑层具体处理数据,Dao层负责和 ...
- MVC项目实践,在三层架构下实现SportsStore-01,EF Code First建模、DAL层等
SportsStore是<精通ASP.NET MVC3框架(第三版)>中演示的MVC项目,在该项目中涵盖了MVC的众多方面,包括:使用DI容器.URL优化.导航.分页.购物车.订单.产品管 ...
- 浅析MVC模式与三层架构的区别01
三层架构和MVC是有明显区别的,MVC应该是展现模式(三个加起来以后才是三层架构中的UI层)三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI ...
- MVC模式与三层架构的区别
之前总是混淆MVC表现模式和三层架构模式,为此记录下. 三层架构和MVC是有明显区别的,MVC应该是展现模式(三个加起来以后才是三层架构中的UI层) 三层架构(3-tier application) ...
随机推荐
- 详细解析kafka之kafka分区和副本
本篇主要介绍kafka的分区和副本,因为这两者是有些关联的,所以就放在一起来讲了,后面顺便会给出一些对应的配置以及具体的实现代码,以供参考~ 1.kafka分区机制 分区机制是kafka实现高吞吐的秘 ...
- 【colab pytorch】使用tensorboardcolab可视化
import torch import torch.nn as nn import torch.nn.functional as F import torch.optim as optim from ...
- Android 版的多合一Office应用也正式向iOS开放了
导读 在 Android 版的多合一 Office 应用「偷跑」不久后(官方证实上线时间比计划要早),为 iOS 准备的版本现在终于也结束 beta 测试正式上线了. 和只提供「有限」平板支持的 An ...
- Java反射之Class类
接下来的几章,我们谈一谈java的反射机制. 反射就是从一个java类中映射出一个java类或是一个实例.通常在很多框架中都用到反射,比如常用的ssm框架,在配置文件中总是会写到类的全名,框架通过读取 ...
- 精通HTML DOM
DOM 1. 属性方法 类型/返回类型 说明 nodeName String 节点名称,根据节点的类型而定义 nodeValue string 节点的值,同样根据节点的类型而定义 nodeType s ...
- LeetCode-矩形重叠
题目描述: 矩形以列表 [x1, y1, x2, y2] 的形式表示,其中 (x1, y1) 为左下角的坐标,(x2, y2) 是右上角的坐标. 如果相交的面积为正,则称两矩形重叠.需要明确的是,只在 ...
- Git&sourceTree软件安装、使用说明及遇到问题解决
一.软件版本 1.Git版本为1.9.5 2.Source版本为1.5.2 二.软件安装步骤 1.Git安装步骤 1)双击Git安装文件进入下图界面,单击Next 2)继续Next 3)进入Selec ...
- js String方法总结
字符方法(3) charAt(pos: number): string; // 返回特定位置的字符. charCodeAt(index: number): number; // 返回表示给定索引的字符 ...
- 三、create-react-app新旧版中使用less和antd并修改主题颜色
引入less 如果项目根目录中没有config文件夹,首先暴露出项目配置文件,项目下执行: npm run eject 如果项目是从git仓库中pull下来的的话,必须确保本地项目与仓库中没有冲突,才 ...
- SpringMVC框架——视图解析
SpringMVC视图解析,就是将业务数据绑定给JSP域对象,并在客户端进行显示. 域对象: pageContext.request.session.application 业务数据绑定是有ViewR ...