首页 > 其他 > 详细

XXX项目总结

时间:2014-03-08 01:35:59      阅读:510      评论:0      收藏:0      [点我收藏+]

前言

昨天晚上睡不着总感觉有些什么东西需要记下来,所以就有了这篇文章。做了好几次的重构是应该有一个总结以备以后查阅,当然有些设计思想是通过自己的总结也有些是吸收别人的思想,同样如果能对你有所帮助那就再好不过了。

于其说XXX项目总结,其实是对我弄的一套基础架构进行总结,只是用在这个项目中进行实践。

废话就不多说了直接进入主题吧,系统的基础架构,说白了还是以用户为中心的权限控制等基础功能,这个系统可以实现对不同数据库的支持,没有采用ORM框架,还是以原生的SQL为主降低学习成本。

1,开发环境:VS2012 +Resharper,SVN,PLSQL,ORACLE 11G,Arcgis

2,开发组件:ASP.NET MVC 4,Dapper(是ADO.NET 的扩展),Newtonsoft.Json(对JSON的处理),Ninject(用于依赖注入),Aspose.Words(用于生成Word模版),Jquery EasyUi(用于做前端),Arcgis for javascript V3.8(用于对地图开发)

3,开发时间:13年-10月至14年-2月

4,开发人员:2人

 

数据库

1,权限库设计。

还是先来看一下ER图吧

bubuko.com,布布扣

其实对于简单的权限管理应该就足够了,这个思路是来源于这参考 在这我就不在做解释了,这里面我只是简单的进行了一些优化。

 

2,分库分表设计。

有些业务数据过大我们可能需要进行分库分表设计。

bubuko.com,布布扣

说明:

对数据进行拆分一般都是以时间,在TableIndex中的StartDt和EndDt就是业务数据产生时间。针对不同的业务表类型,有一个TblType来进行区分。根据这2个字段然后就可以查询出该表是在那个数据库中。从而就能很轻松的查询出对应的数据。

3,可变列设计

很多时候我们已经把业务表设计好了,但经常会遇到再加一个列****,这时我们就会去把表给修改了,然后把相应的代码给修改了,这不是很麻烦吗?而我是这样做的,因为比较简单就不详细说明了。

bubuko.com,布布扣

 

 

基础代码

这个基础构架主要思想还是参考的Microsoft NLayerApp,但是想搞简单点也对他进行了大量瘦身。

这次我重构得最多的还是如何让系统能够适应多数据的支持,下面说一下经过了几次调整:

1,为了让系统够灵活,最好的方式当然是把SQL和程序分开,所以我把相应的SQL都做成了储存过程。(在SQL下没有什么问题,支持得很好!当我用同样的方式在ORACLE下就有问题了,最明显的就是ORACLE查询返回数据时就出问题了,具体的你们可以试一下。)

2,最后没办法还是只能用SQL语句的形式。

还是用类图来说明吧。

bubuko.com,布布扣

说明:

1,Repository类说明

Mapping:该方法,主要是用于返回该类有那些字段要添加到数据,如,一个类有时不一定所有的属性都是数据库的字段,那么我们就可以指定那些属性要添加到数据库

bubuko.com,布布扣Code

 

 

 

 

 

UI

 

 

 

测试

XXX项目总结,布布扣,bubuko.com

XXX项目总结

原文:http://www.cnblogs.com/jiguixin/p/3586976.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!