猿问

dao接口设计删除一篇文章依据id(数字类型),是否需要传递,作者id?

大家好!我在写一个个人博客,博客平台允许多个作者,现在设计dao接口遇到问题,当我删除一篇文章的时候是否应该传递作者id,代码如下:

方式一

// 防止其他作者通过修改id参数删除文章,需要在service中,先判断该文章是当前作者的
int deleteById(Integer id);

方式二

// 删除文章,依据编号和作者编号
int deleteByIdAndAuthorId(Integer id, Integer authorId);

请问该怎么做,给我点建议?

MMMHUHU
浏览 858回答 3
3回答

守着一只汪

个人感觉, 如果一篇博客对应一个作者的话,可以直接考虑方式二,实现起来逻辑较简单,同时能减少数据库查询次数。 如果系统考虑到除作者之外还有其他管理员能对博客系统进行操作,考虑方式一,这样扩展性好,当修改删除需求时较方便。 ——一个没做过博客系统的人的猜想

翻翻过去那场雪

防止其他作者通过修改id参数删除文章,需要在service中,先判断该文章是当前作者的 这个操作,无论如何传参,你都是要检查的。 那么问题就简单了,问题就变成了从session取authorId,还是从query string里面取authorId。 根据我用了多年的博客的经验。流行的博客程序是两个参数都从query string里面传递。但是,不是强制的。也就是你只传postId也是可以的。之所以这样做。是为了有更多的参数可以供自定义url格式使用。
随时随地看视频慕课网APP

相关分类

Java
我要回答