首页 > 代码库 > 机房收费系统合作版(一)——框架搭建
机房收费系统合作版(一)——框架搭建
机房收费系统的合作版中首次尝试使用框架:三层 + Spring.NET +Nhibernet框架。
一、整体框架图如下:
二、三层架构图如下:
DAL层:
Adapter:
结构:
实现IRepositoryDAL接口:扩展
继承RepositoryBaseDAL父类:复用
功能:
操作类:封装基本的操作——增删改查
this.HibernateTemplate.Save(entity)
this.HibernateTemplate.Delete(entity)
this.HibernateTemplate.Update(entity)
this.HibernateTemplate.SaveOrUpdate(entity)
this.HibernateTemplate.Find<T>()
this.HibernateTemplate.Get<T>(id)
this.HibernateTemplate.Load<T>(id)
Entity:
.CS:实体类.xml:映射文件collection:集合类
Base.xml:
在D层注入HibernateTemplate,以便基本方法调用
在B层注入D层的Adapter,以便调用Adapter下的方法
BLL层:
结构:
功能:
业务逻辑类:
基类:封装最基本的逻辑
adapterbase.getByCondition(columnName,columValue)
adapterbase.Get(id)
adapterbase.Load(id)
adapterbase.Save(entity)
adapterbase.LoadAll()
adapterbase.Update(entity)
adapterbase.Delete(entity)
adapterbase.SaveOrUpdate(entity)
具体类:继承父类;扩展自己的逻辑方法
<span style="font-size:18px;"> public class AddUsersBLL : GenericBaseBLL<User, UserCollection>, IAddUsersBLL { /// <summary> /// 添加用户信息 /// </summary> /// <param name="enUser"></param> public void AddUserInfo(User enUser) { if (base.Get(enUser.Id.ToString()) == null) { //添加用户 base.Save(enUser); } else { throw new ArgumentNullException("该用户已经存在,请重新输入用户名!"); } } }</span>
U I层:
.Appconfig:配置文件
三、总结:
和LH一起搭完框架,突然觉得单纯写代码其实是一件最简单不过的事儿了。框架搭建完了,整个系统就算完成了一大半了,剩下的就是编写逻辑部分了,逻辑部分的编写最多不过三四天的事儿了。第一次当小组长,诸事不顺,还好有小伙伴一路陪伴。
系统小,逻辑清,为了练手,也尝试了一些新的东西:Jenkins(自动发布,检错),禅道(为组员分配任务),SVN(版本控制)。
机房收费系统合作版(一)——框架搭建