org.springframework.boot spring-boot-starter-parent 2.0.9.RELEASE 21-页面查询服务端开发-Dao-分页查询测试
本项目使用Spring Data Mongodb完成Mongodb数据库的查询,Spring Data Mongodb提供一套快捷操作mongodb的方法。
org.springframework.boot
spring-boot-starter-data-mongodb
org.springframework.boot
spring-boot-starter-test
test
application.yml
spring:
application:
name: xc-service-manage-cms
data:
mongodb:
uri: mongodb://localhost:27017
database: xc_cms
此处我用的是本地安装的mongodb,所以没有用户名和密码,有用户名和密码的格式是:
spring.data.mongodb.uri=mongodb://name:pass@localhost:27017/test,其中name是用户名,pass是密码。
1.18.8
org.projectlombok
lombok
${lombok.version}
collection对应着关系型数据库的table
public class Students implements Serializable
@Data
@ToString
@Document(collection = "cms_page")
public class CmsPage {
/**
* 页面名称、别名、访问地址、类型(静态/动态)、页面模版、状态
*/
//站点ID
private String siteId;
//页面ID
@Id
private String pageId;
//页面名称
private String pageName;
//别名
private String pageAliase;
//访问地址
private String pageWebPath;
//参数
private String pageParameter;
//物理路径
private String pagePhysicalPath;
//类型(静态/动态)
private String pageType;
//页面模版
private String pageTemplate;
//页面静态化内容
private String pageHtml;
//状态
private String pageStatus;
//创建时间
private Date pageCreateTime;
//模版id
private String templateId;
//参数列表
private List pageParams;
//模版文件Id
// private String templateFileId;
//静态文件Id
private String htmlFileId;
//数据Url
private String dataUrl;
}
创建Dao,继承MongoRepository,并指定实体类型和主键类型。
public interface CmsPageRepository extends MongoRepository {
}
测试程序使用@SpringBootTest和@RunWith(SpringRunner.class)注解,启动测试类会从main下找springBoot启动类,加载spring容器。分页查询pageable对象做查询方法参数。
@SpringBootTest
@RunWith(SpringRunner.class)
public class CmsPageRepositoryTest {
@Autowired // 注入DAO层接口的实现类
CmsPageRepository cmsPageRepository;
@Test
public void testFindAll(){
List all = cmsPageRepository.findAll();
System.out.println(all);
}
//分页查询
@Test
public void testFindPage(){
//分页参数
int page = 1;//从0开始
int size = 10;
Pageable pageable = PageRequest.of(page,size);
Page all = cmsPageRepository.findAll(pageable);
System.out.println(all);
}
}
=============================================
参考资料:
https://blog.csdn.net/stronglyh/article/details/81024588
https://blog.csdn.net/T_yuqing/article/details/91875215