Guest User

Untitled

a guest
Apr 24th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.82 KB | None | 0 0
  1. @Query ("SELECT obj FROM Categoria obj WHERE descricao LIKE %:descricao%")
  2. List<Categoria> findByDescricao(@Param("descricao") String descricao);
  3.  
  4. import java.net.URI;
  5. import java.util.ArrayList;
  6. import java.util.List;
  7. import java.util.Optional;
  8.  
  9. import javax.validation.Valid;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.http.ResponseEntity;
  12. import org.springframework.web.bind.annotation.GetMapping;
  13. import org.springframework.web.bind.annotation.PathVariable;
  14. import org.springframework.web.bind.annotation.PostMapping;
  15. import org.springframework.web.bind.annotation.RequestBody;
  16. import org.springframework.web.bind.annotation.RequestMapping;
  17. import org.springframework.web.bind.annotation.RequestParam;
  18. import org.springframework.web.bind.annotation.RestController;
  19. import org.springframework.web.servlet.support.ServletUriComponentsBuilder;
  20.  
  21. import com.eclodir.voucomprei.model.dto.CategoriaDTO;
  22. import com.eclodir.voucomprei.model.entity.Categoria;
  23. import com.eclodir.voucomprei.service.CategoriaService;
  24.  
  25. @RestController
  26. @RequestMapping (value="/categorias")
  27. public class CategoriaResource {
  28.  
  29. @Autowired
  30. CategoriaService categoriaService;
  31.  
  32. @GetMapping
  33. public ResponseEntity<List<CategoriaDTO>> findByDescricao (@RequestParam (value="descricao", defaultValue="") String descricao) {
  34. List<CategoriaDTO> categoriasDTO = new ArrayList<>();
  35. categoriasDTO = categoriaService.findAll();
  36. return ResponseEntity.ok().body(categoriasDTO);
  37. }
  38.  
  39. }
  40.  
  41. import java.util.ArrayList;
  42. import java.util.List;
  43. import java.util.Optional;
  44.  
  45. import org.slf4j.Logger;
  46. import org.slf4j.LoggerFactory;
  47. import org.springframework.beans.factory.annotation.Autowired;
  48. import org.springframework.stereotype.Service;
  49.  
  50. import com.eclodir.voucomprei.exception.ObjectNotFoundException;
  51. import com.eclodir.voucomprei.model.dto.CategoriaDTO;
  52. import com.eclodir.voucomprei.model.entity.Categoria;
  53. import com.eclodir.voucomprei.repository.CategoriaRepository;
  54. import com.eclodir.voucomprei.service.interfaces.CategoriaServiceInterface;
  55.  
  56. @Service
  57. public class CategoriaService implements CategoriaServiceInterface {
  58.  
  59. private static final Logger log = LoggerFactory.getLogger(CategoriaService.class);
  60.  
  61. @Autowired
  62. CategoriaRepository categoriaRepository;
  63.  
  64.  
  65. @Override
  66. public List<CategoriaDTO> findByDescricao(String descricao) {
  67. List<Categoria> categorias = categoriaRepository.findByDescricaoContaining(descricao);
  68. if (categorias.isEmpty()) {
  69. throw new ObjectNotFoundException("Categoria não encontrada");
  70. }
  71. List<CategoriaDTO> categoriasDTO = new ArrayList<>();
  72. for (Categoria categoria : categorias) {
  73. categoriasDTO.add(toDTO(categoria));
  74. }
  75. return categoriasDTO;
  76. }
  77.  
  78. @Override
  79. public Categoria fromDTO(CategoriaDTO categoriaDTO) {
  80. Categoria categoria = new Categoria();
  81. categoria.setDescricao(categoriaDTO.getDescricao());
  82. return categoria;
  83. }
  84.  
  85. @Override
  86. public CategoriaDTO toDTO(Categoria categoria) {
  87. CategoriaDTO categoriaDTO = new CategoriaDTO();
  88. categoriaDTO.setId(categoria.getId());
  89. categoriaDTO.setDescricao(categoria.getDescricao());
  90. return categoriaDTO;
  91. }
  92.  
  93.  
  94. }
  95.  
  96. package com.eclodir.voucomprei.repository;
  97.  
  98. import java.util.List;
  99.  
  100. import org.springframework.data.jpa.repository.JpaRepository;
  101. import org.springframework.data.repository.query.Param;
  102. import org.springframework.stereotype.Repository;
  103.  
  104. import com.eclodir.voucomprei.model.entity.Categoria;
  105.  
  106. @Repository
  107. public interface CategoriaRepository extends JpaRepository<Categoria, Long> {
  108.  
  109. List<Categoria> findByDescricaoContaining(@Param("descricao") String descricao);
  110. }
Add Comment
Please, Sign In to add comment