본문 바로가기

전체 글

(449)
생성자(constructor) 생성자 new 연산자로 클래스로부터 객체를 생성할 때 호출되어 객체의 초기화를 담당 여기서 잠깐! 객체 초기화란 필드를 초기화하거나 메소드를 호출해서 객체를 사용할 준비를 하는 것. ' 생성자를 실행하지 않고는 클래스로부터 만들 수 없다' 기본 생성자 public class() {} 모든 클래스는 생성자가 반드시 존재. (하나 이상 가질 수 있음) ==> 클래스가 public class로 선언되면 기본 생성자에도 public이 붙지만, 클래스가 public 없이 class로만 선언되었다면 기본 생성자에도 public이 붙지 않는다. new 연산자 Car a = new Car(); 클래스에 명시적으로 선언한 생성자가 1개라도 있을 경우, 컴파일러는 기본 생성자를 추가하지 않는다. 명시적으로 생성자를 선언하..
GitHub - markDown 문법 사용(README.md) ## 글머리 *, +, - 순서 없는 목록 > 인용문 ``` ``` 소스코드 추가 (코드블록 코드) ==== 큰 제목 ------- 작은 제목 [Title](link) 링크, 적용 예: [Google](https://google.com, "google link") ** double asterisks ** 강조, 적용 예: double asterisks ~~cancelline~~ 취소선, 적용 예: cancelline __double underscores__ 강조, 적용 예: double underscores ![Alt text](/path/to/img.jpg) 이미지첨부 3칸 이상 띄어쓰기( )를 하면 줄이 바뀐다. 줄바꿈
EC2 - 동일 문제 EC2의 경우 사용제한 시간이 750시간이여서 서버가 다운되는 것이였다.. 아 허무... 현재 대처 방법 인스턴스 중지 후 다시 시작 인스턴스 시작되면 다시 서버를 실행시킴
JPA JPA(Java Persistence API) 1. 기존의 반복 코드는 물론이고, 기본적인 SQL도 JPA가 직접 만들어서 실행해준다. 2. JPA를 사용하면, SQL과 데이터 중심의 설계에서 객체 중심의 설계로 패러다임을 전환을 할 수 있다. 3. JPA를 사용하면 개발 생산성을 크게 높일 수 있다. JPA는 인터페이스다! 구현체로 hibernate, eclipse 등이 있다. JPA는 자바진영의 표준 인터페이스. 참고하여 공부할 블로그 https://velog.io/@adam2/JPA%EB%8A%94-%EB%8F%84%EB%8D%B0%EC%B2%B4-%EB%AD%98%EA%B9%8C-orm-%EC%98%81%EC%86%8D%EC%84%B1-hibernate-spring-data-jpa JPA는 도대체..
스프링 객체 지향 프로그래밍(OOP) 객체 지향 프로그래밍은 컴퓨터 프로그래밍의 패러다임 중 하나 OOP 는 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러개의 독립된 단위인 객체들의 모임 각각의 객체는 메시지를 주고받고 데이터를 처리할 수 있다. 객체 지향 프로그래밍은 프로그램을 유연하고 변경이 용이하게 만들기 때문에 대규모 소프트웨어 개발에 많이 사용되는 이유다. 유연하고 변경이 용이 유연하고 변경이 용이하다는 표현은 어떤 뜻일까? 부품(객체)을 조립하여 하나의 자동차란 완성품을 만드는 것처럼, 프로그래밍에서는 컴포넌트를 유연하게 변경하면서 개발이 가능하다. 핵심개념 추상화, 상속, 다형성 등, 추가적으로 다중 상속 등의 특징이 존재한다. 그 중 OOP 의 핵심 개념인 다형성(Polymorph..
[스프링 통합테스트] @Spring, @Transactional package hifive.hifivespring.service; import hifive.hifivespring.domain.Member; import hifive.hifivespring.repository.MemberRepository; import hifive.hifivespring.repository.MemoryMemberRepository; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframe..
스프링 DI를 통해 알 수 있는 것 구현 클래스 추가 이미지 - MemberService는 현재 MemberRepository를 의존하고 있다. - MemberRepository는 구현체로 MemoryMemberRepository, JdbcMemoryRepository가 있다. ↓↓↓↓↓↓ 스프링 설정 이미지 그런데 스프링 컨테이너에서 설정을 어떻게 바뀌었는지 보자! 기존에는 메모리버전에 memberRepository스프링빈으로 등록했다면 이것을를 빼고 Jdbc memberRepository를 등록을 했다. 그리고 나머지는 손 댈 것이 없다. 이렇게 되면 구현체만 바껴서 돌아갈 것 이다. SOLID 원칙 : SOLID란 클린코드로 유명한 로버트 마틴이 좋은 객체 지향 설계의 5가지 원칙(SRP, OCP, LSP, ISP, DIP)의 앞 글..
[H2] 테이블 생성 - MEMBER 테이블 생성 * Java의 Long 은 DB에서는 bigint란 타입이다. * generated by default as identity 여기에다 값을 셋팅하지 않고 insert를 할 경우, DB가 들어왔을 때 자동으로 ID값을 채워준다. create table member ( id bigint generated by default as identity, name varchar(255), primary key (id) ); - 테이블 조회 SELECT * FROM MEMBER; - INSERT 문 INSERT INTO MEMBER(name)values('spring) insert into member(name)values('spring2')