전체 글 (172) 썸네일형 리스트형 substring(7) @GetMapping("/user/kakao/callback") public String kakaoLogin(@RequestParam String code, HttpServletResponse response) throws JsonProcessingException { // code: 카카오 서버로부터 받은 인가 코드 Service 전달 후 인증 처리 및 JWT 반환 String token = kakaoService.kakaoLogin(code); // Cookie 생성 및 직접 브라우저에 Set Cookie cookie = new Cookie(JwtUtil.AUTHORIZATION_HEADER, token.substring(7)); c.. 생성일을 자동추가: PrePersist 혹은? 생성자 @Entity@Getter@Setter@NoArgsConstructor@Table(name = "users")public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Column(nullable = false, unique = true) private String nickname; // 별명 @Column(nullable = false, unique = true) private String username; // 사용자 이름 (username) @Column private String password; // 비밀번호 (password), 소셜 사용.. 댓글 수정 @Entity@Getter@Setter@NoArgsConstructor(access = AccessLevel.PROTECTED)public class Comment { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long commentId; @Column(nullable = false) private String content; @ManyToOne @JoinColumn(name = "user_id", nullable = false) private User user; @ManyToOne @JoinColumn(name = "todo_id", nullable = false) priv.. todo에 TodoErrorCode,GlobalExceptionHandler등 예외처리 package com.navi.nbcampjavatodotask.database.entity;import jakarta.persistence.Entity;import jakarta.persistence.GeneratedValue;import jakarta.persistence.GenerationType;import jakarta.persistence.Id;import lombok.AccessLevel;import lombok.Builder;import lombok.Getter;import lombok.NoArgsConstructor;import java.time.LocalDateTime;@Getter@Entity@NoArgsConstructor(access = AccessLevel.PROTECTED)pu.. Validation Validation 으로 제한을 주기 위해선implementation 'org.springframework.boot:spring-boot-starter-validation' 이걸 추가해야 한다. [ ] username은 최소 4자 이상, 10자 이하이며 알파벳 소문자(a~z), 숫자(0~9)로 구성[ ] password는 최소 8자 이상, 15자 이하이며 알파벳 대소문자(a~z, A~Z), 숫자(0~9)로 구성이걸 구현하려면 DTO, 컨트롤러를 이용해야 한다. @Getter@Setterpublic class SignupRequestDto { private String nickname; // 별명 추가 @NotBlank(message = "사용자 이름은 필수 항목입니다.") @Size(m.. 403에러?? SecurityConfig의 허용경로와 컨트롤러의 RequestMapping 경로는 같아야한다 SecurityConfig에서.requestMatchers("/api/comments/**").permitAll() // '/api/comments/'로 시작하는 요청 모두 접근 허가sㅇ이렇게 되어있으면 컨트롤러도@RequestMapping("/api/comments")d이렇게 api/comments 이렇게 같아야 한다. 그냥 /comments 거나 api/comment 이렇게 조금이라도 다르면 403에러가 뜨게 되어있다 이력서 todo 정리 보호되어 있는 글입니다. 이전 1 2 3 4 5 6 ··· 22 다음