学成在线模板管理
页面搭建参考链接:页面搭建
我们把Api,controller,Dao的代码单独一章节,每一篇文章都简洁
CmsTemplateControllerApi,CmsTemplateController,CmsTemplateRepository代码内容
- 查询模板列表服务端代码编写
创建:CmsTemplateControllerApi.java路径:xc-service-api\src\main\java\com\xuecheng\api\cms\CmsTemplateControllerApi.java
创建:CmsTemplateController.java路径:xc-service-manage-cms\src\main\java\com\xuecheng\manage_cms\controller\CmsTemplateController.java
创建:TemplateService.java添加方法路径:xc-service-manage-cms\src\main\java\com\xuecheng\manage_cms\servicce\TemplateService.java
@Service
@Slf4j
public class TemplateService {
@Autowired
private CmsTemplateRepository cmsTemplateRepository;
@Autowired
private GridFsTemplate gridFsTemplate;
@Autowired
private CmsPageRepository cmsPageRepository;
//携带参数
public QueryResponseResult findList(int page, int size, QueryTemplateRequest queryTemplateRequest) {
//防止空指针异常判断查询条件对象的值是否为null
if (queryTemplateRequest==null){
//new一个对象
queryTemplateRequest=new QueryTemplateRequest();
}
//自定义条件查询
//定义条件匹配器(模板名称模糊查询)
ExampleMatcher exampleMatcher=ExampleMatcher.matching()
.withMatcher("templateName",ExampleMatcher.GenericPropertyMatchers.contains());
//定义条件值对象
CmsTemplate cmsTemplate=new CmsTemplate();
//设置条件值(站点ID)
if (StringUtils.isNotEmpty(queryTemplateRequest.getSiteId())){
//站点Id不为空,设置值
cmsTemplate.setSiteId(queryTemplateRequest.getSiteId());
}
//(模板名称)
if (StringUtils.isNotEmpty(queryTemplateRequest.getTemplateName())){
//页面名称不为空设置值
cmsTemplate.setTemplateName(queryTemplateRequest.getTemplateName());
}
//定义条件对象
Example<CmsTemplate> example=Example.of(cmsTemplate,exampleMatcher);
//设置分页参数(进行判断)
if (page<=0){
page=1;//表示当前页(第一页,这里这样设置是为了符合用户体验页码从1开始)
}
//传入DAO的时候设page要减去一
page=page-1;
if (size<=0){
//设置默认返回数据条数
size=5;
}
//创建分页对象
Pageable pageable= PageRequest.of(page, size);
//调用DAO传入分页参数以及自定义查询条件获取返回结果
Page<CmsTemplate> all = this.cmsTemplateRepository.findAll(example,pageable);
//创建QueryResult对象
QueryResult queryResultTemplate=new QueryResult();
queryResultTemplate.setList(all.getContent());//数据列表
queryResultTemplate.setTotal(all.getTotalElements());//数据总记录数
//创建方法需要返回的对象(传入状态码与数据)
return new QueryResponseResult(CommonCode.SUCCESS,queryResultTemplate);
}
}
创建:CmsTemplateRepository.java 路径:xc-service-manage-cms\src\main\java\com\xuecheng\manage_cms\dao\CmsTemplateRepository.java