SOLUX-완숙이
-
회원가입 시 password를 암호화하여 저장하기SOLUX-완숙이 2022. 1. 12. 16:56
회원가입 시 회원들의 password를 그대로 저장하면 보안 문제가 있기 때문에 password를 암호화해서 저장해야 한다. @EnableWebSecurity public class WebSecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { http .csrf().disable() .httpBasic() .and() .authorizeRequests() .antMatchers("/**").permitAll(); //.antMatchers("/**").hasAnyRole("ADMIN","USER"); } @Bean public Pass..
-
spring security+jwt 회원가입, 로그인 #1SOLUX-완숙이 2022. 1. 12. 15:50
security 적용 전 회원가입 코드 1. Member 클래스 package solux.wansuki.OurNeighbor_BE.domain.Member; import lombok.*; import javax.persistence.*; import java.util.ArrayList; import java.util.Collection; import java.util.List; import java.util.stream.Collectors; @Builder @NoArgsConstructor @AllArgsConstructor @Getter @Entity public class Member { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private..
-
@ElementCollection에서 table not found errorSOLUX-완숙이 2022. 1. 11. 16:56
@ElementCollection(fetch = FetchType.EAGER) @Builder.Default private List roles = new ArrayList(); member클래스 안에 column으로 roles 리스트를 만들었는데 이를 그냥 실행하니까 table "MEMBER_ROLES" not found 에러가 발생했다. 원인이 뭔지 몰라 다 해봤는데 안 돼서 application.properties 파일에 spring.jpa.hibernate.ddl-auto=update 이걸 추가해줬더니 잘 실행됐다. create으로 하면 같은 오류가 발생하는거 보니 create이 초기에 "MEMBER_ROLES" 테이블을 찾고 이 테이블이 있다면 drop하고 다시 생성하기 때문에 오류가 난게 아닌가..
-
org.h2.jdbc.JdbcSQLSyntaxErrorException 에러SOLUX-완숙이 2022. 1. 4. 15:11
org.h2.jdbc.JdbcSQLSyntaxErrorException: Syntax error in SQL statement "CREATE TABLE SCHEDULES (ID BIGINT NOT NULL AUTO_INCREMENT, CONTENT VARCHAR(255), DATE VARCHAR(255) NOT NULL, PRIMARY KEY (ID)) ENGINE=[*]INNODB"; expected "identifier"; SQL statement: 위와 같은 오류가 발생해서 구글에 검색을 해봤더니 column이나 table 이름이 예약어라서 생기는 오류라고 했다. 그런데 나는 예약어와 같은 이름의 column이나 table이 없어서 더 찾아봤더니 application.properties 파일 안에 ..
-
@RequestParam과 @PathVariable, @RequestBody의 차이SOLUX-완숙이 2022. 1. 4. 13:42
이 어노테이션들은 controller에서 프론트로부터 파라미터를 전달받을 때 사용하는 어노테이션들이다. 1. @RequestParam @GetMapping("club") public ClubResponseDto findById(@RequestParam(value = "id") Long id) { return clubService.findById(id); } api 요청 시에 URI에 http://localhost:8080/club?id=2 이렇게 queryString 방식으로 넣어주는 것이다. @RequestParam(value = "id" , required=false) 이렇게 쓰면 id값을 넣어주지 않아도 오류가 발생하지 않는다. 2. @PathVariable @GetMapping("/api/udon..