开发一个程序,使用实体类 与 直接 调用运行sql存储过程的函数 获取数 ...

发布网友 发布时间:2024-10-24 08:32

我来回答

1个回答

热心网友 时间:2024-10-25 09:09

使用实体类的时候:先通过 某些工具或代码自动生成的 存储过程获取数据,再加载进实体类,实际上时间消耗比直接sql大,但因为是是靠工具的,而这些工具大都是高手写的,所以会帮你降低很多隐患 ,比如SQL注入。而且因为他们已经写好了,你调用很方便。
相关工具:Java里的 Hibernate、C#里的 Linq

数据表(User为示例)的数据行以 Row 的形式给你的时候其实是还需要你自己判断处理的,比如 获取 User.Id 属性 需要 Integer.ParseInt(row["id"].ToString()); 转化成你需要的类型。
但以上两种工具都会让 数据行 成为一个类,到时候就会自动生成(Hibernate偶尔需要配置)对应的 get set 方法。
Hibernate的话: int User.getId() { return this.Id; }
Linq的话:int Id {get {return _Id; }}

既然 get set 方便了,那 编辑 就也方便了。
Hibernate :
User user = (User)dao.get(User.Class, 4); // 获取 键值是 4 的 User
user.setName("Seraph_fd"); // 修改Name为
dao.update(user); // 更新实体,会更新数据库的哟
Linq:
User user = myDataContext.User.Single(t => t.Id == 4);
user.Name = "Seraph_fd";
myDataContext.SubmitChanges(); // 提交更新

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com