목록IT 일기 (상반기) (398)
겉바속촉
예시 클래스를 생성한후에 main 메서드를 만들면 보통 다음과 같이 만들것이다. public class Sample { public static void main(String[] args){ System.out.println("Hello, World!") } } 1. main 메서드에 대해서 알아보자 main() 형태로 생김 만약 다르게 작성한다면 기본 메서드를 찾을 수 없다고 에러가 발생할 것이다. 👉이때 기본 메서드(main)를 작성하라고 뜰 것. 자바 프로그램이 실행되면 가장 먼저 찾는 것이 바로 메인 메서드이다. 길게 작성된 소스에서 그 프로그램의 시작이 어딘지 알 수 없으면 안되기 때문에 시작점을 알려주려는 용도라고 생각하자. (entry point는 main()) 2. parameters에 대..
Test라는 파일 하나를 만들어보자. 그럼 우리는 다음과 같은 코드 구성을 볼 수 있다. public class Test { public static void main(String[] args) { System.out.println("Hellow, World!") } } 그럼 하나하나씩 뜯어보쟈보쟈보쟈. (접근제한자)(클래스 선언)(클래스 이름) public class Test { (접근제한자) static (반환타입) (메스드이름) ((문자열)(배열)(변수명)){ public void main String [] args System.out.println("Hello,World"); //구현할 코드 작성 } } 그럼 위처럼 구성이 만들어 지는 것이다. 그리고 각각에 대해 살펴보자. (1) 접근제한자 --..
[ JAVA ] 컴파일 언어 실행되면서 어떻게 변화하는 지 알아두기!! 자바코드 작성 : Test.java 자바코드 컴파일 : Test.class (javac로 컴파일) 자바코드 실행 : java로 실행 [ Python ] 인터프리터 언어 실행되면서 자바와는 무엇이 다른지 알아두기!! 파이썬 코드 작성 파이썬 코드 실행 : Run
목표 : 엔티티 매핑 뿌시기 • 객체와 테이블 매핑: @Entity, @Table • 필드와 컬럼 매핑: @Column • 기본 키 매핑: @Id • 연관관계 매핑: @ManyToOne,@JoinColumn 1. 객체와 테이블 매핑 @Entity • @Entity가 붙은 클래스는 JPA가 관리 • 엔티티라고 지칭 • JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 필수 • 기본 생성자 필수(파라미터가 없는 public 또는 protected 생성자) • final 클래스, enum, interface, inner 클래스 사용X • 저장할 필드에 final 사용 X • 속성: name • JPA에서 사용할 엔티티 이름을 지정한다. • 기본값: 클래스 이름을 그대로 사용(예: Member) • 같은 클..
목표 : 애플리케이션 개발 테이블 생성 : Member 테이블 create table Member ( id bigint not null, name varchar(255), primary key(id) ); 1. 회원등록 : 데이터 넣어주기 public class JpaMain { public static void main(String[] args) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello"); EntityManager em = emf.createEntityManager(); EntityTransaction tx = em.getTransaction(); tx.begin(); Member member = new Me..
목표 : 프로젝트 시작 데이터베이스 : H2 사용 - H2를 설치하고 강의 따라하는 데 콘솔창이 아예 열리지 않음 - h2.sh 실행해도 도대체가 열리지 않음 - h2.bat도 되지 않음 - jar 파일을 실행시켜보니 결국 콘솔창 볼 수 있었음 오예 - Embedded말고 Server로 설정 바꿈 IDE : IntelliJ 사용 - 빌드 관리 도구 : gradle 말고 maven 사용 라이브러리 추가 : pom.xml에서 dependency 추가 JPA 설정하기 : persistence.xml 파일 생성하여 작성 - jpa 설정파일 - src/main/resources/META-INF/persistence.xml - JPA 표준 속성 = javax.persistence로 시작 - 하이버네이트 전용속성 =..
목표 : JPA 알기 JPA - Java Persistence API - 자바 진영의 ORM 기술 표준 ORM - Object-relational mapping(객체 관계 매핑) - 객체는 객체대로 설계 - 관계형 데이터베이스는 관계형 데이터베이스대로 설계 - ORM 프레임워크가 중간에서 매핑 JPA의 성능 최적화 기능 1. 1차 캐시와 동일성 보장 - 같은 트랜잭션 안에서 같은 엔티티 반환 ( 조회 성능 약간 향상 ) - DB Isolation Level이 Read Commit이어도 애플리케이션에서 Repeatable Read 보장 2. 트랜잭션을 지원하는 쓰기 지연 - 트랜잭션 커밋 전까지 insert sql 모음 - jdbc 배치 sql 기능 사용해서 한번에 sql 전송 - 버퍼라이팅 3. 지연 로..
- entity 생성 후 dto 생성 - entity 속성 중 일부는 dto에 작성하지 않음 (필요한 것만 쓰기 위해) - 프로젝트 빌드 후 계속 null값이니? 질문 받음 (내 에러로그) @Getter @Setter @Entity public class Room { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Integer roomId; @Column(length = 50) private String ownerId; @Column(length = 20) private String roomCode; @Column(length = 20) private String roomName; @Column(length = 50) private St..
점프투스프링부트 3-11 목표 : 질문과 답변에 "추천(좋아요)" 기능 만들기 1. 엔티티 변경 질문, 답변의 추천은 추천한 사람(SiteUser 객체)을 질문, 답변 엔티티에 추가해야 한다. 1-1. Question 우선 Question 엔티티에 추천인(voter) 속성을 추가해 보자. 하나의 질문에 여러사람이 추천할 수 있고 한 사람이 여러 개의 질문을 추천할 수 있다. 이렇듯 질문과 추천인은 부모와 자식의 관계가 아니고 대등한 관계이기 때문에 @ManyToMany를 사용해야 한다. 참고 : https://docs.oracle.com/javaee/7/api/jakarta/persistence/ManyToMany.html [파일명:/sbb/src/main/java/com/mysite/sbb/questi..