IT수업 287

IT 수업 21주차 (154) 트랜잭션

05 프로젝트 복사해서 06_Tx 프로젝트를 만들어준다.  TxConfig.java에서 기본트랜잭션인 MYBATIS용 빈을 작성해준다.@EnableTransactionManagement 는 트랜잭션관리용 에노테이션이다.  실습을 위해 트랜잭션 문제를 발생시켜본다.  @Transactional 은 jakarta가 아닌 springframework로 import해야한다.   ctrl+shift+t 눌러서 TxTestServiceTest.java를 만들어 준다.  그러면 어떤 트랜잭션을 사용할껀지에 대한 오류가 발생하게 된다. 그래서 오류를 해결하기 위해 TxConfig로 가서 트랜잭션의 구별을 위해 bean의 이름을 지정해주고 @EnableJpaRepositories 어노테이션을 추가해준다.  @Enable..

IT수업/SPRINGBOOT 2024.05.17

IT 수업 21주차 (153) SQL

resources에 schema.sql 파일을 만들어 준다.  만들어진 schema.sql 에서 a 테이블을 create 하는 코드를 작성하고 AppApplicationTests를 실행시키면 workbench에 a 테이블이 생기게 된다.  만약 테이블이 존재하는데 다시 똑같은 이름의 테이블을 만들면 오류가 발생하게된다.그래서 이 오류를 발생시키지 않기 위해 if not exists를 적으면 같은 이름의 테이블이 create 되어도 오류가 발생하지 않게 된다.    나중을 위해 schema.sql에서 persistent_logins 테이블도 만들어 준다.      이번에는 resources 안에 data.sql을 만들고 데이터를 넣는 insert 문을 작성해본다.  실행 후 workbench를 확인했을 때..

IT수업/SPRINGBOOT 2024.05.17

IT 수업 21주차 (152) 외래키 설정

application.properties에서 추가로 작성해준다.  entity 패키지에 lend 클래스를 만들어준다. 그리고 lend 테이블을 만들어 본다. AppApplication을 실행해보면 lend 테이블이 만들어진 것을 확인 할 수 있다. Workbench로 가서 lend 테이블의 외래키를 확인해보면 만들어진 것을 확인 할 수 있다.  만들어진 lend 테이블을 삭제하고 book과 1:n 매핑을 시킨 다음 다시 AppApplication을 실행시켜본다. 그러면 둘다 같이 생긴 것을 확인 할 수 있다.   다시 lend 테이블을 삭제하고 나머지 대여일과 반납일 열까지 추가한다음 다시 실행시켜준다.    repository 에 LendRepository를 만들어 준다. 그리고 book 테이블가서 값..

IT수업/SPRINGBOOT 2024.05.16

IT 수업 21주차 (151) JPA 쿼리 메소드

BookRepository로가서 마우스 우클릭으로 Generate를 누르면 사용할 수 있는 함수들이 나온다.  ● 함수 명명법   실습을하기 위해 workbench의 book테이블에 값을 더 넣어준다.  BookRepositoryTest.java로 와서 일치하는 bookName을 select해본다.   다른 실습도 사용해보기 위해 BookRepository에서 추가로 작성한다.       ● JPQLJPQL은 Java Persistence Query Language로 엔티티 객체를 조회하는 객체지향 쿼리이며 JPA가 지원하는 다양한 쿼리 방법 중 하나이다.SQL은 테이블을 대상으로 쿼리하지만 JPQL은 엔티티 객체를 대상으로 쿼리한다. @Query는 더 구체적인 쿼리 메서드를 작성하기 위해 사용하는 쿼리..

IT수업/SPRINGBOOT 2024.05.16

IT 수업 21주차 (150) ORM_JPA

● JPA(Java Persistent API)자바 ORM(Object Relational Mapping)으로 기술에 대한 API 표준 명세를 의미한다.JPA는 특정 기능을 하는 라이브러리가 아니고, ORM을 사용하기 위한 인터페이스를 모아둔 것으로 자바 어플리케이션에서 관계형 데이터베이스를 어떻게 사용해야 하는지를 정의하는 방법중 한 가지 이다.또한, JPA는 단순히 명세이기 때문에 구현이 없다.  ● JPA Entity 관련 애노테이션@Entity     해당 클래스가 JPA 엔티티임을 표시한다.    이 애노테이션을 사용하여 데이터베이스의 테이블과 매핑될 클래스를 정의한다. @Table     엔티티와 매핑될 데이터베이스 테이블을 지정한다.     테이블 이름, 스키마, 인덱스, 고유 제약 조건 등..

IT수업/SPRINGBOOT 2024.05.16

IT 수업 21주차 (149) SQL Mapper_MyBatis

03프로젝트 복사해서 04_SQLMAPPER_MYBATIS 프로젝트를 만들어 준다.  start.spring.io에 가서 MyBatis를 다운 받아준다.explore 눌러서 코드 복사한다.  그리고 build.gradle에 붙여넣기 해준다. Gradle 버튼 (코끼리 버튼) 클릭  config에 MybatisConfig 클래스를 만들어주고 코드를 적어준다.  클래스 이름인 MybatisConfig에서 ctrl+shift+t를 눌러 create test를 해주고 MybatisConfigTest를 작성해준다.  t2도 작성해서 실행시켜본다. 그럼 왼쪽에 빈으로 등록됐다는 표시가 뜨게 된다.  MemoDto로 가서 writer와 regdate를 주석처리해주고 domain 밑에 mapper 패키지를 만들고 그 ..

IT수업/SPRINGBOOT 2024.05.16

git 정리

먼저 새 폴더 만들고 주소창에 올리고자하는 레파지토리 주소를 복사하여 git clone 레파지토리 주소를 입력-> 그러면 레파지토리 이름의 폴더가 생기고 그 안에 .git 이라는 폴더 생김-> 그 폴더에 넣고자 하는 프로젝트 넣기 (복사 붙여넣기 해도 됨)-> 그리고 cmd를 켜서 git add * -> git commit -m "메세지" -> git push origin main 하면 됨  실습!! 새로운 레파지토리 만들어서 시작!주소 복사하기  새폴더 만들기  폴더 주소창에 git clone git주소 입력하면 레파지토리 이름으로 된 폴더 생김   만들어진 폴더 안에 들어가서 레파지토리에 올릴 파일 넣기    그리고 폴더 주소 창에 cmd를 입력하여 add * 치기   add 됐는지 확인하고 싶으면 ..

IT수업/GIT 2024.05.14

IT 수업 21주차 (148) springboot 2

02프로젝트를 복사하여 03_DATASOURCE 파일을 만든다.  그리고 start.spring.io 에 들어가서 mysql driver와 jdbc api를 추가하여 explore를 해준다. 그러면 해당 코드들이 나오는데 여기서 dependecies의implementation 'org.springframework.boot:spring-boot-starter-jdbc' 와runtimeOnly 'com.mysql:mysql-connector-j' 를 복사한다. 복사한 코드를 build.gradle에 붙여넣기 하고 새로고침 해준다.  그리고 config 패키지를 만들어 안에 DataSourceConfig 클래스를 만든다.  ctrl + shift + t 누르면 test 파일이 생긴다.DataSourceConf..

IT수업/SPRINGBOOT 2024.05.14

IT 수업 21주차 (147) springboot

00_init 프로젝트를 복사해 01_parameter 프로젝트를 만들어준다.( 프로젝트 복사할 때는 인텔리제이 안에서 하지말고 프로젝트가 들어있는 폴더에서 복사 붙여 넣기 해주면 된다. )   controller안에 ParameterController를 만들고 domain 패키지와 dto 패키지 그리고 PersonDto 클래스를 만들어 준다. sts3에서 했던 parameterTestController를 가져와 코드를 복사 붙여넣기 한다.( 가져온 코드에서 import는 모두 삭제하면 자동으로 다시 import 생긴다. )  그리고 personDto도 코드를 복사 붙여넣기 해준다.    01프로젝트를 복사해서 02_Validation 프로젝트를 만들어준다. 파라미터 인식 문제를 해결하기 위해 file의..

IT수업/SPRINGBOOT 2024.05.14

IT 수업 21주차 (146) Spring Boot 초기 설정( Intelli J)

- 자바 버전 올리기(21버전)실행창에서 sysdm.cpl로 자바 버전을 확인한다.  원하는 자바 버전 없으면 open jdk download를 구글링해 archived들어가면 모든 버전이 다 있다.  다운을 받았으면 압축을 풀고 c드라이브의 java 폴더에 넣은 뒤 bin까지 들어가 bin주소를 복사한다.  복사했으면 실행창의 sysdm.cpl을 켜서 시스템변수의 path에 들어가 복사한 주소를 붙여넣기하고 맨 위로 올려준다. 그리고 cmd 창에서 java -version을 입력해 확인한다.   - 인텔리제이 다운로드 인텔리제이 커뮤니티로 다운로드 해준다.  다운받은 exe 를 실행시켜 모두 다음 눌러준다.  실행창을 켜서 sysdm.cpl로 들어가 고급 - > 환경변수의 시스템환경변수의 path에 들..

IT수업/SPRINGBOOT 2024.05.14