Class ExtendedCrudController<Entity,ID,Dto extends DataTransferObject<Entity>,Pageable extends PaginatedListRequest,Repository extends org.springframework.data.jpa.repository.JpaRepository<Entity,ID> & QuerydslFastPagingRepository<Entity,ID>,Service extends ExtendedCrudService<Entity,ID,Dto,Pageable,Repository>>

java.lang.Object
biz.devstack.springframework.boot.jpa.crud.CrudController<Entity,ID,Dto,Pageable,Repository,Service>
biz.devstack.springframework.boot.jpa.crud.ExtendedCrudController<Entity,ID,Dto,Pageable,Repository,Service>
Type Parameters:
Entity - the entity type.
ID - the identifier type for the entity.
Dto - the DTO used to transfer entity data.
Pageable - the pagination request type.
Repository - the repository interface for entity persistence.
Service - the service to handle business logic.

public abstract class ExtendedCrudController<Entity,ID,Dto extends DataTransferObject<Entity>,Pageable extends PaginatedListRequest,Repository extends org.springframework.data.jpa.repository.JpaRepository<Entity,ID> & QuerydslFastPagingRepository<Entity,ID>,Service extends ExtendedCrudService<Entity,ID,Dto,Pageable,Repository>> extends CrudController<Entity,ID,Dto,Pageable,Repository,Service>
Extended CRUD controller to handle import, export, and download functionalities.
  • Constructor Details

    • ExtendedCrudController

      public ExtendedCrudController()
  • Method Details

    • importCsvFile

      @PostMapping(value="/import", consumes="multipart/form-data") public void importCsvFile(jakarta.servlet.http.HttpServletRequest request, org.springframework.web.multipart.MultipartFile multipartFile)
    • downloadCsvImportTemplate

      @GetMapping("/import/template") public void downloadCsvImportTemplate(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response)
    • generateDownloadLinkForExport

      @GetMapping("/export") public Map<String,String> generateDownloadLinkForExport(jakarta.servlet.http.HttpServletRequest request, @Valid Pageable pageable)
    • downloadCsvExportFile

      @GetMapping("/export/download") public void downloadCsvExportFile(jakarta.servlet.http.HttpServletResponse response, @RequestParam String token, @RequestParam Long expireAt, @Valid Pageable pageable)