스프링 의존성 주입(Dependency Injection) 3가지 방식 스프링의 의존성 주입(Dependency Injection) 방식 3가지 @Autowired 속성 - 속성에 @Autowired 애너테이션을 적용하여 객체를 주입하는 방식 생성자 - 생성자를 작성하여 객체를 주입하는 방식 (권장하는 방식) Setter - Setter 메서드를 작성하여 객체를 주입하는 방식 (메서드에 @Autowired 애너테이션 적용이 필요하다.) 출처:https://wikidocs.net/161186 2022. 10. 26. JPA + Hibernate JPA란? 스프링부트는 JPA(Java Persistence API)를 사용하여 데이터 베이스를 처리한다. JPA는 자바 진영에서 ORM(Object-Relational Mapping)의 기술 표준으로 사용하는 인터페이스 모음이다. =>JPA는 인터페이스이다. 따라서 인터페이스를 구현하는 실제 클래스가 필요하다. JPA구현한 대표적인 실제 클래스에는 하이버네이트(Hibernate)가 있다. 2022. 10. 26. Spring boot Security 회원가입/로그인 구현 주의 사항 인증과 인가 인증 유저가 누구인지 확인하는 절차, ex) 회원가입 로그인 인가 유저가 요청하는 request를 실행할 수 있는 권한이 있는 유저인지 허락하는 것 =>어떤 사이트든 인증과 인가가 있음 CSRF(Cross-site request forgery) 스프링 시큐리티를 사용할 경우 CSRF방어를 위해 모든 POST방식 데이터 전송에는 CSRF토큰 값이 있어야한다. 이 토큰은 실제 서버에서 허용한 요청이 맞는지 확인하는 토큰이다. 예시코드 참고: https://velog.io/@aaronddy/%EC%9D%B8%EC%A6%9DAuthentication%EA%B3%BC-%EC%9D%B8%EA%B0%80Authorization 2022. 10. 26. MariaDB 스프링 부트 오류 나는 MariaDB를 사용중인데, 인터넷에 올라온 대부분의 소스파일은 mysql 이나 oracle 기준으로 올라와있다. 무심코 따라 쳤다가 SQL구분 오류가 나는 경우가 많다. 지금은 오류를 해결했지만, table을 확인해보니 id 속성에 auto_increment가 안 들어가있는걸 알았다. @GeneratedValue(strategy = GenerationType.true) //mysql @GeneratedValue(strategy = GenerationType.IDENTITY) //mariaDB Mariadb 에는 상기 문법으로 하면 된다. 2022. 10. 25. Spring Boot Test / CRUD 기본 코드 Spring Boot Test시 기본적으로 실행하는 CRUD 코드를 정리했다. Insert @SpringBootTest public class ToDoTest { @Autowired private ToDoRepository toDoRepository; //데이터 삽입 테스트 //@Test //@Disabled //@Test 랑 같음 public void testInsert() { ToDo todo1 = ToDo.builder() .userId("youna") .title("서점가기") .build(); toDoRepository.save(todo1); ToDo todo2 = ToDo.builder() .userId("jimin") .title("샐러드먹기") .build(); toDoRepository... 2022. 10. 20. 이전 1 2 3 4 5 6 7 8 ··· 10 다음