社区
C#
帖子详情
关于实体类的疑惑
yjqwangluo
2009-12-02 08:48:58
我想问下,,三层架构中,实体类到底有什么好处。例如说。我从数据库获取了数据,我可以把它直接放在DataSet里面,直接传到另外一层。。要用实体类的话,还得把获得的数据封装到实体类里面,这样做和直接传比起来有什么好处,,我喜欢有个比较通俗易懂的答案,,,不胜感激。。。
...全文
130
15
打赏
收藏
关于实体类的疑惑
我想问下,,三层架构中,实体类到底有什么好处。例如说。我从数据库获取了数据,我可以把它直接放在DataSet里面,直接传到另外一层。。要用实体类的话,还得把获得的数据封装到实体类里面,这样做和直接传比起来有什么好处,,我喜欢有个比较通俗易懂的答案,,,不胜感激。。。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yjqwangluo
2009-12-02
打赏
举报
回复
大概明白了。谢谢了。还有。楼上再楼上的。。不好意思啊。。按错了。鼠标点到板砖那了。对不起啊。。
ArthurCX
2009-12-02
打赏
举报
回复
楼上说的对,实体类其实可以理解为一种规定性的抽象封装,比如在数据库里A和B是相关的两个字段,那么他们在程序里面就应该需要维护关联的关系,那么,抽象成实体类就是一个比较好的方法。当然,如你所说,用集合也可以实现类似的事情。但那样以后维护起来就比较麻烦。
诚然,可能现在你也感觉不到差别,那是因为代码量小了,遇到改动的时候比较好改,所以不觉得。当你一个类的代码行上3000了,你再试试用集合来做,你就会明白为啥咱会用实体类了。
最后最后,简而言之,一切为了抽象,一切为了封装。
zhlulu2wlnz
2009-12-02
打赏
举报
回复
其实实体类在三层架构中所实现的一个重要功能是将DAL,BLL,UI三层连接起来。比如说写一个实体类
class stuinfo{
private string name;
private string age;
public string Name{
get{}
set{}
public string Age{
get{}
set{}
}
实体类完成以后就可以简单的实现值在各个层之间的传递和处理。尤其是在BLL中,比如说要处理性别的选择,用0和1表示,用实体类接收。这样就省了很多代码。提高了代码的可读性。
}
}
PandaIT
2009-12-02
打赏
举报
回复
[Quote=引用 7 楼 yjqwangluo 的回复:]
例如说我数据库只有一张表,,里面只有几列的数据,,还得另外建个实体类封装起来?
[/Quote]
你慢慢会理解这样的好处!!
把类封装成一个对象,实现各层间数据传递,一张表对应一个实体类 这也是面向对象的思想.
把表封装成一个一个的类!!
yjqwangluo
2009-12-02
打赏
举报
回复
额。。没人来了么。。
yjqwangluo
2009-12-02
打赏
举报
回复
我是北大青鸟的。他们教材里又弄了个模型层。用来放实体类。。说起来应该是4层。但我碰到我前面说的情况的话,也就是表里面的数据比较少的话。我都是直接返回个DataSet..然后直接在表示层那把控件的数据源绑在DataSet上,这样做规范么。。
wartim
2009-12-02
打赏
举报
回复
看你的需求了,如果简单的项目,不用三层也无所谓
wartim
2009-12-02
打赏
举报
回复
别的方面?
可以实现类工厂
yjqwangluo
2009-12-02
打赏
举报
回复
例如说我数据库只有一张表,,里面只有几列的数据,,还得另外建个实体类封装起来?
wartim
2009-12-02
打赏
举报
回复
也就是说即使你不用实体类,至少要有表定义
比如
Class ATable
{
public static Name="Name";
}
DR[ATable.Name]="1";
yjqwangluo
2009-12-02
打赏
举报
回复
只有这方面的好处么,还有没有其他的呢。。?
wartim
2009-12-02
打赏
举报
回复
编译时
wartim
2009-12-02
打赏
举报
回复
简单说,就是编辑时就可以发现纠错而不是运行时发现错误
一个字段叫Name
实体类如果写错了
X.Name="1";
写成了X.Nama="1";
编译时就出错了,其实根本智能感应就不会出来这个错误的字段
如果是直接传,就要自己保证字段的正确
比如
DR["Name"]="1";
写成了
DR["Nama"]="1";
编译不会出错,程序也能运行,直到执行到这行程序出错了你才知道写错了,如果是在一段用得很少的代码里,代码又非常多,测试又不够充分,就容易遗漏这个错误,知道客户那崩溃了才知道
yjqwangluo
2009-12-02
打赏
举报
回复
不是很清楚。。我可以把所有的数据都直接用DataSet传过去啊。。 能说清楚些么,谢谢。。
lijing3333
2009-12-02
打赏
举报
回复
比如你在外面传递参数 要写5个甚至更多 用实体类 传递1个对象就可以额
接口与
实体类
这里是修真院后端小课堂,每篇分享文从 【接口与
实体类
】 接口与
实体类
-深圳-Java-詹威斯- 1.背景介绍 2.知识剖析 3.常见问题 4.解决方案 5.编码实战 6.扩展思考 7.参考文献 8.更多讨论 1.背景介绍 为什么要使用Interface,而不是直接使用一个
实体类
来完成任务?Interface和Impl这种方式的好处是什么? Interface和Class都是java文件,Int...
【Java】Java创数据库
实体类
时如何处理表格的外键
刚学习数据库时有过这样的
疑惑
,我们的数据库是这样的: 我们在
实体类
将一般表格项定义为属性是这样的: 那么如何处理order实体中的uid呢?方法如下: 1.在Order
实体类
中定义一个User对象 2.在映射文件中用<resultMap>标签 手动指定字段与实体属性之间的映射关系 图片来自于: 黑马程序员最全SSM框架教程|Spring+SpringMVC+MyBatis全套教程(spring+springmvc+mybatis)_哔哩哔哩_bilib...
springboot接受前端数据时,用requestbody的
实体类
对象接受为null的解决办法
前言: 原本我想传dept,phone这三个值给后端,后端我用了一个
实体类
接受,其中我这个
实体类
的字段是Dept,Phone 所以我前端传的就是Dept,Phone字段名字 但是一直null 解决办法 我发现即使后端
实体类
首字母大写,但是前端传的时候还是都要用小写,比如dept,phone,即使后端是首字母大写,也可自动匹配上。
疑惑
,不过不想管了,赶紧干完项目复习了,考完研再研究 ...
Springboot
实体类
快速开发(lombok)
Springboot
实体类
快速开发(lombok)
mybatis查询及
实体类
映射
为了做查询,做了一个pojo为UserDemo,且继承了User类。 public class UserDemo extends User{ private String loginName; private String password; private Date updatetime; } User类里多了一些字段,例如createtime、createtime等。 public class User implements Serializable {
C#
111,120
社区成员
642,545
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章