1. 程式人生 > >Java的新專案學成線上筆記-day3(三)

Java的新專案學成線上筆記-day3(三)

2 新增頁面 2.1 新增頁面介面定義
1、定義響應模型

@Data 
public class CmsPageResult extends ResponseResult { 
   CmsPage cmsPage;  
   public CmsPageResult(ResultCode resultCode,CmsPage cmsPage) {    
    super(resultCode);       
  this.cmsPage = cmsPage;   
  }
}

2、定義新增Api 在api工程中新增介面:

@ApiOperation("新增頁面")
public CmsPageResult add(CmsPage cmsPage);

2.2 新增頁面服務端開發
2.2.1 頁面唯一索引
在cms_page集中上建立頁面名稱、站點Id、頁面webpath為唯一索引 2.2.2 Dao
1、新增根據頁面名稱、站點Id、頁面webpath查詢頁面方法,此方法用於校驗頁面是否存在

public interface CmsPageRepository extends MongoRepository<CmsPage,String> {
    //根據頁面名稱、站點id、頁面訪問路徑查詢   
  CmsPage findByPageNameAndSiteIdAndPageWebPath(String pageName,String siteId,String  pageWebPath);  
   。。

2、使用 CmsPageRepository提供的save方法 。 2.2.3 Service

//新增頁面   
  public CmsPageResult add(CmsPage cmsPage){ //校驗頁面是否存在,
根據頁面名稱、站點Id、頁面webpath查詢       
           CmsPage cmsPage1 =
 cmsPageRepository.findByPageNameAndSiteIdAndPageWebPath(cmsPage.getPageName(),
 cmsPage.getSiteId(), cmsPage.getPageWebPath());      
    if(cmsPage1==null){        
    cmsPage.setPageId(null);//新增頁面主鍵由spring data 自動生成      
       cmsPageRepository.save(cmsPage);       
      //返回結果     
        CmsPageResult cmsPageResult = new CmsPageResult(CommonCode.SUCCESS,cmsPage);      
       return cmsPageResult;       
  }   
     return new CmsPageResult(CommonCode.FAIL,null); 
    }

2.2.4 Controller

//新增頁面  
  @Override 
   @PostMapping("/add") 
  public CmsPageResult add(@RequestBody CmsPage cmsPage) { 
      return pageService.add(cmsPage);  
  }