본문 바로가기

전체 글30

[Spring Boot] Spring 통합 테스트(@SpringBootTest, @Transactional) https://rezal.tistory.com/entry/%ED%9A%8C%EC%9B%90-%EA%B4%80%EB%A6%AC-%EC%98%88%EC%A0%9C-%EB%B0%B1%EC%97%94%EB%93%9C-%EA%B0%9C%EB%B0%9C-5-%ED%9A%8C%EC%9B%90-%EC%84%9C%EB%B9%84%EC%8A%A4-%ED%85%8C%EC%8A%A4%ED%8A%B8 [회원 관리 예제, 백엔드 개발 - (5)] 회원 서비스 테스트 git repository : https://github.com/Rezalog/spring-boot-entry-inf GitHub - Rezalog/spring-boot-entry-inf Contribute to Rezalog/spring-boot-entry-inf .. 2022. 7. 5.
[Spring DB 접근 기술 - (2)] 순수 JDBC 이전에는 웹 콘솔, 즉 h2 console 을 이용하여 직접 DB를 SQL 로 갱신했었다. 이제 본격적으로 Application Server 와 h2 DB를 연결하여 순수 JDBC 방식으로 SQL을 날려서 DB를 갱신해보자. 이 때, 서버 start, h2 console 연결 유지해야한다. (h2.sh 에 있는 h2-console의 세션아이디로 접근이 가능하므로) 1. 환경설정 Java Spring Boot의 환경에서 순수 jdbc 기술 적용을 위한 jdbc driver가 필요하므로, jdbc 라이브러리를 추가한다. 또한, h2 database 와 붙을 때 database 가 제공하는 클라이언트가 필요하므로 h2 라이브러리도 추가한다. 그리고 db에 붙으려면 접속정보를 넣어야하므로 application... 2022. 7. 5.
[h2 database] h2-console 시퀀스 초기화 h2 database 에 JDBC 를 이용해서 회원등록, 회원조회 실습을 진행하는 도중 시퀀스가 33부터 발생하는 괴랄한 현상이 발생하였다... h2-console 에서 시퀀스 탭에 현재 값을 확인할 수 있었다. https://www.inflearn.com/questions/254909 아이디값이 왜 2부터 될까요 - 인프런 | 질문 & 답변 [사진] id값이 처음부터 2가 들어가는데 왜그런걸까요? DB에 2가 들어갑니다. - 질문 & 답변 | 인프런... www.inflearn.com 정확한 원인은 모르겠지만, 1과 2 시퀀스 같은경우에는 JDBC 연결 전에 h2-console 에서 SQL로 직접 insert 했었는데 연결 뒤에 저렇게 시퀀스 값이 갑자기 늘어난 것. 아무튼 시퀀스 값을 h2-conso.. 2022. 7. 5.
[Spring Boot, IntelliJ] build.gradle, application.properties 빨간줄이 뜰 때 JDBC 실습 중 JDBC 필요 라이브러리를 build.gradle 에 추가하고, apllication.properties 에 datasource 정보를 작성하였는데, gradle 에 빨간줄이 그어졌다. SpringConfig 또한 수정한 상태. 그리고 main method 를 실행하자, oracle driver class error 및 beancreation error 등이 발생하였다. https://error-fighter.tistory.com/17?category=914504 [IntelliJ 에러] 이유없이 build.gradle에 빨간줄이 뜰 때 # 발생 상황 로컬환경에서 스프링부트를 구동시키려고 했더니 갑자기 build.gradle에 빨간줄이 뜸 # 발생 원인 캐시 관련 문제 # 해결 방안 인.. 2022. 7. 5.
[Spring DB 접근 기술 - (1)] JDBC, JPA와 h2 Database 설치 이전까지 Spring Boot의 MVC 패턴을 이용하여 Memory 방식으로 DB 를 처리했었다. 본격적으로 4가지의 DB 접근기술을 활용하여, h2 database 를 CRUD 하는 방법을 알아보자. (h2를 사용하는 이유는 별다른거 없고, DB가 가벼우며 admin 화면도 제공하기때문) DB 접근 기술의 종류 순수 JDBC : SQL을 활용하여 Application Server 와 DB을 연결할 수 있도록 하는 DB 접근 기술 Spring JDBCTemplate : Spring 이 JDBC의 중복제거하고 쉽게 SQL을 날릴 수 있도록 제공하는 템플릿 JPA : SQL도 직접 개발자가 작성하지 않고, JPA 내에서 처리할 수 있도록하는 기술, 객체를 DB에 쿼리없이 저장할 수 있다. Spring Dat.. 2022. 7. 5.
[회원 관리 예제 : 웹 MVC 개발] 홈, 회원 등록, 회원 조회 본격적으로 url 요청에 따른 Controller 들을 설정해주도록 하자. 홈 화면 추가 localhost:8080 요청 시, 홈 화면(home.html)으로 이동한다. 기존에 똑같은 매핑이 resource > static 에 index.html 로 존재했으나, @Controller 에서 Spring Container 가 먼저 매핑되는 화면을 먼저 찾기 때문에 home.html 이 우선적으로 보여진다. 회원 등록 form 태그에서 post로 "/members/new" 로 넘기고 해당 처리 메소드 create의 인자로 MemberForm 타입이 들어간다. createMemberForm에서 form 태그로 넘어온 input의 name key의 input value "spring" 을 MemberForm 의 .. 2022. 7. 1.