20200213——dao接口开发

dao是相当于操作数据库的
因为我们这个是页面的跳转的,所以用的是mongodb

package com.xuecheng.manage_cms.dao;

import com.xuecheng.framework.domain.cms.CmsPage;
import org.springframework.data.mongodb.repository.MongoRepository;

/**
 * @Classname CmsPageRepository
 * @Description TODO
 * @Date 2020/2/13 14:14
 * @Created by mmz
 */
public interface CmsPageRepository extends MongoRepository<CmsPage,String> {

}

然后在test下面创建测试类

package com.xuecheng.manage_cms.dao;

import com.xuecheng.framework.domain.cms.CmsPage;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

import java.util.List;

/**
 * @Classname CmsPageRepositoryTest
 * @Description TODO
 * @Date 2020/2/13 14:17
 * @Created by mmz
 */
@SpringBootTest
@RunWith(SpringRunner.class)
public class CmsPageRepositoryTest {

    @Autowired
    CmsPageRepository cmsPageRepository;

    @Test
    public void testFindAll(){
        List<CmsPage> list =  cmsPageRepository.findAll();
        System.out.println(list);
    }
}

创建了这个方法

首先这个注解

@SpringBootTest

代表了,该类运行的时候会去启动类运行
启动类运行的时候,就会扫描实体类,扫描接口,扫描本项目下面所有的类
所以在这个test方法中,用

    @Autowired
    CmsPageRepository cmsPageRepository;

可以获取这个dao,用spring去管理,所以在test测试方法中可以直接用这个类

这个接口继承了MongoRepository<CmsPage,String>
该类

//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//

package org.springframework.data.mongodb.repository;

import java.util.List;
import org.springframework.data.domain.Example;
import org.springframework.data.domain.Sort;
import org.springframework.data.repository.NoRepositoryBean;
import org.springframework.data.repository.PagingAndSortingRepository;
import org.springframework.data.repository.query.QueryByExampleExecutor;

@NoRepositoryBean
public interface MongoRepository<T, ID> extends PagingAndSortingRepository<T, ID>, QueryByExampleExecutor<T> {
    <S extends T> List<S> saveAll(Iterable<S> var1);

    List<T> findAll();

    List<T> findAll(Sort var1);

    <S extends T> S insert(S var1);

    <S extends T> List<S> insert(Iterable<S> var1);

    <S extends T> List<S> findAll(Example<S> var1);

    <S extends T> List<S> findAll(Example<S> var1, Sort var2);
}

中的方法都可以进行调用,
找到所有Cms_page类

@Document(collection = "cms_page")
public class CmsPage {

这有一个注解,注解到了去mongodb数据库中查询cms_page下面所有的集合

在这里插入图片描述
按照findByXXX,findByXXXAndYYY、countByXXXAndYYY等规则定义方法,实现查询操作。

在这里插入图片描述

发布了735 篇原创文章 · 获赞 42 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/qq_36344771/article/details/104295304
今日推荐