분류 전체보기

Computer Science/Network

URI란? URI, URL 차이가 아닌 URL, URN의 차이점

인터넷을 이용하는 사람에게 URL이란 단어는 익숙하다. URI, URL, URN이 무슨 정의와 차이점에 대해 알아보자. URI, URL, URN의 정의 URI Uniform : 리소스를 식별하는 통일된 방식 Resource : 자원, URI로 식별할 수 있는 모든 것 Identifier : 다른 항목과 구분하는데 필요한 정보 An individual scheme does not have to be classified as being just one of "name" or "locator". Instances of URIs from any given scheme may have the characteristics of names or locators or both, often depending on the..

개발로그

[Spring Boot JPA 커뮤니티] 타임리프에서 세션 접근

View에서 접근 가능한 유저정보를 컨트롤러에서 Model로 넘겨주는 이유 블로그 포스팅 그동안 상단 헤더바에 들어가는 사용자에 대한 정보를 컨트롤러에서 @Authentication Principal로 받아서 모델에 추가해서 뷰로 넘겨 사용했다. 그러다 보니 모든 컨트롤러에서 세션 정보를 받아와 있는지 없는지 확인하고 있으면 닉네임, 감정을 모델에 추가해주는 코드를 넣어서 사용해왔다. 그러다 baeldung에서 해결법을 찾아 해결했다. 일단 이전 코드 먼저 보겠다. PostController, ControllerUtil public class PostController { private final PostService postService; @GetMapping("/posts") public String..

개발로그

[Spring Boot JPA 커뮤니티] 사용자 정보, 감정 수정

사용자가 자신의 닉네임, 비밀번호를 바꾸거나 댓글필터를 적용할 감정을 바꿔야 할 수 있어야 하기에 해당 부분을 구현해본다. 댓글감정필터란 ? 짧게 요약하면 긍정,중립,부정의 댓글 중 자신이 보고싶은 범위의 댓글만 볼 수 있게 해주는 서비스 https://anythingis.tistory.com/89 [Spring Boot JPA 커뮤니티] 댓글 필터링 서비스 https://anythingis.tistory.com/82 지난 댓글 작성 포스트 [Spring Boot JPA 커뮤니티] 댓글 작성, 네이버 감정분석 API 활용 기존 CRUD 게시판에 댓글 작성 시 감정 분석 API를 사용해 긍정, 중립, 부정으로 댓글 anythingis.tistory.com User Entity @Entity @Getter ..

개발로그

[Spring Boot JPA 커뮤니티] 댓글 필터링 서비스

https://anythingis.tistory.com/82 지난 댓글 작성 포스트 [Spring Boot JPA 커뮤니티] 댓글 작성, 네이버 감정분석 API 활용 기존 CRUD 게시판에 댓글 작성 시 감정 분석 API를 사용해 긍정, 중립, 부정으로 댓글 태그를 관리해 사용자가 원하는 댓글만 필터링하기 위해 댓글 작성 서비스에 네이버 API 적용 및 댓글 작성 및 anythingis.tistory.com 댓글 작성 시에 네이버 감정분석 API를 사용해 댓글마다의 감정을 갖고 있는데 사용자가 보고 싶은 감정까지만 보기 위한 기능을 추가할 예정이다. User Entity @Entity @Getter @NoArgsConstructor public class User extends TimeEntity { @..

개발로그

[Spring Boot JPA 커뮤니티] 스프링 부트 에러 페이지, Unchecked Exception 처리

예외처리는 예외가 발생할 수 있는 곳에 예외처리를 해 어플리케이션이 멈추지 않게끔 만드는 것이다. 스프링의 기본 예외처리는 예외 발생시 WAS에서 /error request가 발생해 BasicErrorController에서 받는다. 컨트롤러 내부에서 발생하면 WAS까지 갔다가 다시 에러 컨트롤러를 호출하는 것이다. 이런 낭비를 막고 예외처리를 커스텀 하기 위해 이번 글에선 두 부분을 다룬다. 1. Unchecked Exception 처리(예외 처리가 가능한 예외/ 컨트롤러 하위) Exception 중 컴파일 에러가 뜨는 Checked Exception을 제외한 Runtime Exception을 상속받는 모든 예외 처리. 사용자가 클릭만 이용한다면 터질일이 없지만 URI로 접근해서 해당 글, 해당 사용자,..

개발로그

[Spring Boot JPA 커뮤니티] 회원 가입 유효성 검사, 중복 검사, 로그인 오류 예외 처리 구현

그동안 아무런 예외 처리를 하지 않고 컨트롤러에서 받아 서비스로 넘겨서 Entity에 지정한 옵션들과 일치하지 않으면 수많은 하얀 페이지를 만났다. 다른 템플릿 엔진은 예외처리를 할 클래스를 만들어서 View에서 처리해줘야하는 것 같은데 타임리프는 BindingResult를 모델로 넘겨 사용할 수 있고 시큐리티와 연동되는 부분도 많아서 꽤 간단한 편이였던것 같다. 이번 포스트는 회원가입, 로그인부터 살펴보고 다음 포스트는 서비스에서 터지는 예외처리로 넘어가겠다. 회원가입 User Entity @Entity @Getter @NoArgsConstructor public class User extends TimeEntity { @Id @GeneratedValue(strategy = GenerationType...

개발로그

[Spring Boot JPA 커뮤니티] 타임리프 + 시큐리티 댓글 수정, 삭제 구현

댓글 작성까지 구현하고 다른 것들을 만지다가 다시 댓글 수정, 삭제로 돌아왔다. 수정, 삭제 구현흐름 순서가 여러가지 방법이 생각났는데 일단 네이버 블로그를 참고해서 구현했다. 댓글 수정 예시 댓글 수정시 수정 폼은 기존 댓글 내용을 가져와야하고 작성폼과 달리 새로운 폼을 만들어주기로 했다. 큰 흐름은 댓글 수정 버튼 클릭시 수정 페이지로 이동하면 수정폼, 댓글들, 작성폼을 갖고 있고 수정폼에 작성시 해당 댓글 수정, 작성폼에 작성시 새로운 댓글 작성으로 넘어가도록 구현한다. Comment Edit DTO @Data public class CommentEdit { private String content; private Emotion emotion; @Builder public CommentEdit(St..

자바

[Java] 리플렉션 API

공부한 내용 정리한 포스팅입니다. 틀린내용 피드백 언제든 부탁드립니다. 리플렉션 API? 요약하자면 1. 실행중인 자바 프로그램이 자체적으로 검사하거나 프로그램 내부의 속성을 조작할 수 있기 해주는 API 2. 리플렉션을 사용하면 동적으로 로드되는 Class의 속성을 가져와서 사용한다. 3. 다른 언어에 없는 기능이다. Class Class 1. Class의 인스턴스는 실행중인 Java 애플리케이션의 클래스 및 인터페이스를 나타낸다. 2. 생성자는 없지만 클래스가 로드되고 define Class Loade의 메소드 호출에 따라 JVM에 의해 자동으로 생성된다. 런타임에서 활용할수 있는 방법은 세가지다. 1. 클래스.class 2. Class.forname(className, true, currentLoa..

비오베베
'분류 전체보기' 카테고리의 글 목록 (14 Page)