V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  chaleaoch  ›  全部回复第 8 页 / 共 67 页
回复总数  1325
1 ... 4  5  6  7  8  9  10  11  12  13 ... 67  
2021-09-09 17:31:20 +08:00
回复了 waibunleung 创建的主题 程序员 DAO 层和 ORM,能区分,但又不完全能区分,我裂开了
@FreeEx 学到了.
因为是 python 后端入门, Java 生态还停留在理论层面, 代码量有限. 想请教:

"DAO 是面向数据的,经常会写一些多表的 sql,关于 db 的业务逻辑也包含在了 dao 里面。"

所以说 某些情况下, 是不是一个 Dao 理论上可以对应多个 Model.

就是说 我的 DAO 层抽象可以把 Model 层忽略掉. service 别管数据从哪里来, 你就按照我 DAO 的设计获取数据就可以了.
那么就像你说的, UserDAO.getAllData() 可能跨了十张表查询出一个数据, 把数据丢给 service. 甚至于这里面可能还带了一些业务. 譬如,
users_data 和 group data

for group in groupLst:
if users_data.id = group.id:
balabala

谢谢
2021-09-09 16:28:34 +08:00
回复了 waibunleung 创建的主题 程序员 DAO 层和 ORM,能区分,但又不完全能区分,我裂开了
@kop1989 谢谢大佬回复.

问题: User Group 两张表. 但是在数据库和 ORM 层面他们没有外键关联关系.

现在的需求是我要他们的连表之后的数据(当然是用 Java/go/balabal).

这个代码应该放在 Service 里面写还是 DAO 里面写.

是不是 DAO 里面 是不能有任何业务.

那 DAO 里面的方法 100 行 都写些什么呢? 如果没有业务的话 没啥可写的啊.
2021-09-09 16:18:03 +08:00
回复了 chaleaoch 创建的主题 Go 编程语言 Golang 写的 web 也分 Service 和 DAO 吗?
@soupu626 #10
如果某个场景要求 lv11 以上会员可参与,某个场景要求女性专场,某个场景要求未成年禁入,这种情况下,难道在 service 里写一坨一坨的 sql 么,dao 提供一个通用的用户查询接口,给一个查询参数对象,各个场景根据需要设置不同参数就行。
===================
谢谢, 再次基础上 我们把业务更加的复杂化. 有时候我们需要 lv11 + 有孩子的女性. 是否有孩子 是从另一张关联表读取并且他们之间没有数据库层面的外键关系.

像这样的场景是不是就应该把方法放到 Service 里面而不是 DAO 里了?

所以想请教, DAO 里面可以带业务吗?
2021-09-09 15:17:49 +08:00
回复了 waibunleung 创建的主题 程序员 DAO 层和 ORM,能区分,但又不完全能区分,我裂开了
@FreeEx 拜读了大佬的项目,学到很多.
我的问题是, credential 部分无论是 repository 还是 service 中都看到了业务逻辑.
但是看楼上的评论. 感觉 DAO(repository) 里面不应该出现业务.

想听听你的见解.


另外还有一个小问题是: repository 是哪个项目里流出来的概念? 哪个插件 /组件 /库? 我从来都没听说过这个东西.

谢谢
2021-09-09 14:19:33 +08:00
回复了 waibunleung 创建的主题 程序员 DAO 层和 ORM,能区分,但又不完全能区分,我裂开了
@kop1989 大佬请教.
举例:比如我需要输出表 A 的行数,如果是单纯的 ORM,那我就只能直接获取本表的所有内容,返回一个 List<A>,然后我在业务层再去获取 List<A>的 size 。这明显是效率非常低下的。于是我就可以通过 DAO 层单独编写封装 SQL 去获取表 A 的行数,返回。
==========
如果 ORM 提供了获取 A 的行数,是否还是需要在 DAO 里面封一个方法,然后返回一个 int.
也就是说这个方法里面只有一条语句?


谢谢.
2021-09-08 21:02:24 +08:00
回复了 Macv1994 创建的主题 生活 怎么有效的反击楼上的噪音?
我去你这还不错呢.
我说了跟没说似的.
而且态度还不太好.
2021-09-07 21:37:08 +08:00
回复了 lanlanye 创建的主题 Python [求助帖] Django ORM 的联表查询问题
group 的外键是 user?
弄反了吧?

另外, serializers.Serializer 和 Model 是没有发生关系的. 除非你用的是 ModelSerializer.

你在整理一下你的问题.
2021-09-07 09:28:21 +08:00
回复了 gamesover 创建的主题 Go 编程语言 怎么转 golang?
python 转 go 最大的难点是静态类型.
别的都还好.
2021-09-06 13:04:17 +08:00
回复了 chaleaoch 创建的主题 Java 求推荐中等规模的 spring 开源项目
找到了.谢谢大佬.
2021-09-03 15:04:42 +08:00
回复了 chaleaoch 创建的主题 Go 编程语言 [vscode]如何忽略 vendor 文件夹下的静态检查
默认用的 staticcheck
@Dreamacro 问了一下周围的同事, 似乎是我自己的问题. 大家都没遇到换个问题 不知道是怎么回事...
@yianing 我知道大佬我创建完了 go run gobuild 什么的都没问题.

现在是我在用 vscode 看代码跳转到源码的时候, 直接往 go path 里面跳.
不方便我看源码.
2021-09-01 20:26:41 +08:00
回复了 liyang5945 创建的主题 生活 8 月份吃饭只花了 600 多
天天吃番茄不腻吗?
不吃水果的吗?
果然口味清淡啊...
你们自己用么?
2021-09-01 16:29:19 +08:00
回复了 KomiSans 创建的主题 职场话题 [抱怨] 公司内不让出汗...
上班不许喘气.
2021-08-31 23:56:05 +08:00
回复了 jayin 创建的主题 职场话题 你们现在的梦想是什么?
财务自由
2021-08-31 17:10:46 +08:00
回复了 w468750 创建的主题 职场话题 学生+初入职场的未来选择问题
@w468750 #4 因为你对钱的要求不高, 车房这里应该是指北京的车和房. 对钱要求不高, 对物质世界要求不高可用考虑离开一线城市, 或者在一线工作几年会老家. 车房就都有了.
2021-08-31 13:13:54 +08:00
回复了 yukunZhan9 创建的主题 职场话题 请教各位前辈,这样的情况该怎么办?
说明您的能力可以独立做一个项目了.
2021-08-31 11:19:05 +08:00
回复了 chaleaoch 创建的主题 macOS macos 对开发友好在哪里?
@ai277014717 我的意思是说, 如果是我我会用台式机 搞一个 Linux 然后用 windows + samba 之类的去开发.
1 ... 4  5  6  7  8  9  10  11  12  13 ... 67  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1969 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 36ms · UTC 16:15 · PVG 00:15 · LAX 08:15 · JFK 11:15
Developed with CodeLauncher
♥ Do have faith in what you're doing.