求批评,求指正,求建议,各种求教!我印象中直白的三层。
总是在看别人的在谈三层,说的很奔放,但是自己看起来,感觉还是有些迷茫,倒不是说什么地方不懂,只是有些具体的做法还有待于学习。
学习了CSDN中的很多文章,但是对于对名词不是很敏感的我来说,还是比较就接,倒不如把我的方法写出来,让各位大哥看看,不多说了,先简单的谈下自己对三层的理解,希望
各位大牛多多批评,多多指正!
因为对三层还不是很了解,所以暂时是使用工具生成的DAL,MODEL
DAL程序集的内容主要是根据数据库生成的对各个表的增删改操作的方法体。
Model的主要内容是根据数据库的各个表,生成的各个实体类,和java中的javabean一样吧,主要都是各个字段的get和set方法
这两个程序集相信各位大哥大姐都做过,应该很简单。
然后又添加了一个程序集:
DBUtility主要内容是连接数据库,关闭,开始事物,等一些操作数据库的方法。
由DAL添加引用DBUtility,和Model
接下来,我需要做的是创建一个网站程序,于是,我添加了一个名字为WEB的网站程序
WEB添加引用了DAL和MODEL。主要是通过这两个引用,来实现对数据库的操作。
按理来说,这样的结构,其实就已经能达一个开发一个小型系统网站的目的了。
但是我发现在做的过程中遇到也一些比较麻烦的问题
1、当我再页面上需要做一些经常要做的操作的时候,比如说写日志等操作,这样我就需要建立一些类来存放这些方法(我把他们都做成了静态的)
其实这样也行了。
2、这样也行了,但是还有个问题,我需要这样的操作很多,于是我认为这些东西应该是对业务的处理,当多次操作数据库的时候,都写在一个方法里面会使得这个方法处理的业务
很单一。。所以我就将这些类单独的拿出一个程序集,取名为BLL,添加引用DAL,和MODEL,
我认为这里面的类就代表了程序的业务。。当然也定义了一些常量类,不知道应该放再网站里,还是BLL里,因为BLL我要用到,所以,我将他放在了BLL里面
同时WEB添加引用BLL,就也可以用到常量类了。
当然我也知道,像DAL根据数据库生成的这么多的类,显然不适合,当数据库表比较多的情况下。。
所以又单独拿出来了个程序集,专门用于生成SQL语句的类,再DAL中,只留下一个类,该类中所有的sql语句都由这个SQLFactory拼出来。。
当然Model应该也可以由一个什么东西替这些繁多的实体类。。这个到不是问题。
现在我很疑惑,我这样的项目结构应该算是三层的结构吗?我认为是,我有数据层,业务层等,并且我尽量多的使我的代码精简,复用。。
而且考虑的问题很多,比如像这种常量类应该放在BLL中吗?还是应该写到配置文件中?不写到配置文件中,是因为我担心配置文件的效率,因为我不了解配置文件是在什么情况下
使用的,只有在读取的时候才会被用到吗?
我尽可能的使用简单,白话般的语言描述我的问题。希望各位大哥们也能用直白的语言来给我一些建议和意见包括批评,诚心的希望能够从中受到启发,谢谢!
希望各位朋友能够顶上去,让后来的,新学习的朋友能多多的得到些收获。谢谢!