Scroll indicator done

Spring (7)

  1. [Spring] Eureka 서버 및 클라이언트 구축하기 2025.03.04

    필자는 ‘STS4’ 기준으로 작성한다. New - Spring Starter Project를 클릭한다.  Eureka Server을 클릭하자. gradle 기준으로 Eureka Server 의존성은 아래와 같다. implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-server' 메인 클래스에 @EnableEurekaServer 어노테이션을 추가한다. @EnableEurekaServer@SpringBootApplicationpublic class EurekaApplication { public static void main(String[] args) { SpringApplication.run(Eurek..

  2. [Spring] Swagger UI 초기 세팅 2025.01.26

    작업 환경STS4Spring Framework 6.x ...Spring Web 3.x ...+ API 서버는 현재 라즈베리파이 내부에 docker 컨테이너로 띄워져있는 상태   KDT 이후로 스웨거 세팅이 처음이라 오랜만이였다.세팅하게 된 계기는 심심해서 개인 프로젝트 만들 때 마다 MVC로 하다보니 xml 작성도 귀찮고..회사에서 API 서버 쓰는 거 보니까 나도 하나 만들면 좋겠다 싶어서 만들어놓고나서 보니 문서화가 안되어 있어서 보기 어려웠다.그래서 간단하게 적용 방법만 메모용으로 남긴다.   1. build.gradleimplementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.7.0' [참고] spring boot 3.x는 spring..

  3. [Spring] Rest API ExceptionHandler 2025.01.19

    Rest API 서버 만들면서 예외 처리에 대한 부분이 필요했다. 설명은 없고 메모용이라 간략간략하게 확인만 하자. 필자는 STS4(Spring Tool Suite 4)에서 진행한다. 패키지 구조는 아래와 같다.  @Getter@AllArgsConstructorpublic enum ApiStatus { SUCCESS(200, "요청이 성공적으로 완료되었습니다."), CREATED(201, "리소스가 성공적으로 생성되었습니다."), BAD_REQUEST(400, "요청이 유효하지 않습니다."), UNAUTHORIZED(401, "권한이 확인되지 않았습니다."), FORBIDDEN(403, "접근이 거부되었습니다."), NOT_FOUND(404, "요청한 리소스를 찾을 수 없..

  4. [Spring] CustomExceptionHanlder 2024.11.29

    @GetMapping("/read-md") public String readMarkdown(@RequestParam Map requestMap, Model model) throws NotFoundException, AccessDeniedException { Map boardSelect = service.boardSelect(requestMap); if(boardSelect == null) { throw new NotFoundException(); } // 중략 if((secYn.equals("Y") || code.equals(CategoryCode.DATA.code)) && role.equals(Const.ROLE_A..

  5. [Spring] 검색 결과 미리보기 2024.11.17

    이전 방법제목이 ‘일상, 토요일, 주말 …’ 이런 식이여서 검색 시 제목으로 검색했었다. 변경 내용제목을 일월시로 통일 시켜놔서 검색 시 게시글 내용으로 검색한다. 그래서 검색하면 네이버 카페처럼 내용이 조금 보여졌으면 싶었고 웹에디터 라이브러리(CKEditor5) 사용 중이라 게시글 내용이 html 코드로 파싱된다는 점을 인지했다.(막상 지금 들어가서 검색하니 안보이는데.. 전에 보였던건 다른 웹페이지에서 보였던 것 같다) html 코드를 제거하고 문자열만 추출하는 방법은 크게 2가지로 나뉘는데 첫번째 방법은 정규식으로 제거하기 또 하나는 html 파서 라이브러리를 사용해 html 코드를 제거하는 것이였다. 정규식으로 html 코드를 추출하는 것 보다 라이브러리를 사용해서 제거하는 방법이 훨씬 더 수월..

  6. [Spring] 공개/비공개글 2024.11.03

    게시판에 글 등록할 때 ‘비밀글 여부’에 체크박스 활성화를 시킨 경우 Spring Security에서 ROLE 확인 후 서버 내부에서 해당 게시글 표출 안되게 끔 하는 작업이다. 아무래도 페이지네이션이랑 같이 작업해야하는 부분이다보니 처음에 화면 단에서 Spring Security 써서 비밀 글 표출 안되게 하는 방법을 적용해봤는데 그럼 화면 단에서 페이지네이션도 해당 부분을 처리해야하는거라 그럴바엔 서버에서 처리하자.. 이렇게 생각하게 되었다. 사실 삽질을 좀 하긴 했는데(;;) 다시 한번 리마인드 해보니 굉장히 쉬운 작업이였다.. 일단 Controller 단에서 아래 부분을 호출해서 로그를 찍어보자.  Authentication authentication = SecurityContex..