81:第七章:开发前台首页、作家个人展示页、粉丝等功能:2:前台首页展示(状态为保留的)友情链接;(查询MongoDB)

本文档介绍了如何从MongoDB数据库中查询并展示状态为保留的友情链接,用于前台首页。首先在Dao层定义了查询方法,然后在Service层实现了该功能,最后在Controller层提供了接口供前端调用。通过这种方式,实现了数据的逻辑删除,并在前端展示筛选后的链接列表。

说明:

(1)本篇博客主要内容:前台首页展示(状态为保留的)友情链接;

(2)主要技术点是:查询MongoDB;

目录

一:本篇博客的内容:前台首页展示(状态为保留的)友情链接;

二:开发【从MongoDB中,查询(状态为保留的)友情链接】:Dao层;

1.在【admin】管理服务的FriendLinkRepository接口中,定义一个【根据状态、从MongoDB中、查询友情链接】的方法;

二:开发【从MongoDB中,查询(状态为保留的)友情链接】:Service层; 

1.在【admin】管理服务的FriendLinkService接口中,定义一查询友情链接的方法;

2.在【admin】管理服务的FriendLinkServiceImpl类中,去实现查询友情链接的方法;

三:开发【从MongoDB中,查询(状态为保留的)友情链接】:Controller层; 

1.在【api】接口工程的FriendLinkControllerApi接口中,定义查询友情链接接口;

2.在【admin】管理工程的FriendLinkController类中,去实现查询友情链接接口;

四:效果;


一:本篇博客的内容:前台首页展示(状态为保留的)友情链接;

在【60:第五章:开发admin管理服务:13:开发【新增/修改友情链接,接口】的新增功能;(向MongoDB中,新增数据)】及后续几篇博客,我们知道对于友情链接这种请求量比较大的非核心数据,我们使用MongoDB来存储;

在MongoDB中,我们已经设置了几个友情链接;

本篇博客,就是从MongoDB中查询友情链接,以显示在前台首页上;

(1)但是,友情链接有一个field是is_delete,来表示这个链接在逻辑上是保留还是删除;(这个删除并不是真正的删除,只是逻辑上的删除)

(2)而在这儿,我们只需要那些状态为保留的链接;所以,对于目前的数据情况来说,在前台首页上,会展示两条数据;


二:开发【从MongoDB中,查询(状态为保留的)友情链接】:Dao层;

1.在【admin】管理服务的FriendLinkRepository接口中,定义一个【根据状态、从MongoDB中、查询友情链接】的方法;

    /**
     * 从MongoDB中、根据SaveFriendLinkMO的isDelete属性、查询条件满足isDelete参数的数据;
     * @param isDelete
     * @return
     */
    public List<SaveFriendLinkMO> getAllByIsDelete(Integer isDelete);

说明:

(1)解释说明;

(2)上面的使用方式,和JPA(Spring Data JPA)是一样的;即,其提供了一些自定义的、封装的规则;我们可以灵活的按照这些规则,去灵活的达到自己的目的;


二:开发【从MongoDB中,查询(状态为保留的)友情链接】:Service层; 

1.在【admin】管理服务的FriendLinkService接口中,定义一查询友情链接的方法;

    /**
     * 查询友情链接(目前,供前台门户端使用)
     */
    public List<SaveFriendLinkMO> queryPortalAllFriendLinkList();

 

2.在【admin】管理服务的FriendLinkServiceImpl类中,去实现查询友情链接的方法;

    /**
     * 查询友情链接(目前,供前台使用)
     */
    @Override
    public List<SaveFriendLinkMO> queryPortalAllFriendLinkList() {
        //具体这儿,我们只查询未删除的友情链接
        return friendLinkRepository.getAllByIsDelete(YesOrNo.NO.type);
    }

三:开发【从MongoDB中,查询(状态为保留的)友情链接】:Controller层; 

PS:我们这儿,图省事,把前台查询友情链接的功能,做到【admin】工程中了;;;在实际开发中,尽量不要这么做;

1.在【api】接口工程的FriendLinkControllerApi接口中,定义查询友情链接接口;

    /**
     * 【查询友情链接列表,接口】(前台门户端使用的)
     * @return
     */
    @ApiOperation(value = "前台门户端,查询友情链接列表", notes = "前台门户端,查询友情链接列表", httpMethod = "GET")
    @GetMapping("portal/list") //设置路由,这个是需要前后端约定好的;
    public GraceJSONResult queryPortalAllFriendLinkList();

说明:

(1) 这儿【前台门户端,查询友情链接】和【后台管理端,查询友情链接】我们图省事放在了一起;

2.在【admin】管理工程的FriendLinkController类中,去实现查询友情链接接口;

    /**
     * 【查询友情链接列表,接口】(前台门户端使用的)
     * @return
     */
    @Override
    public GraceJSONResult queryPortalAllFriendLinkList() {
        List<SaveFriendLinkMO> linkMOS = friendLinkService.queryPortalAllFriendLinkList();

        return GraceJSONResult.ok(linkMOS);
    }

四:效果;

(1)先install一下整个项目;(2)记得使用SwitchHost开启虚拟域名映射;(3)使用Tomcat启动前端项目;(4)然后,启动后端项目; 

……………………………………………………

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值