hello jiniworld

hello jiniworld

  • hello jiniworld (137)
    • Spring (51)
      • Basic (14)
      • Spring Data JPA Tutorial (14)
      • Spring Boot Tutorial (17)
      • Jersey (6)
    • Front-end (3)
      • Vanilla JS (2)
      • Basic (1)
    • Python (5)
      • Flask Tutorial (1)
      • Basic (3)
      • Effective Python (1)
    • Dev (15)
      • Client (2)
      • Java (8)
      • Effective Java (5)
    • DB (17)
      • MySQL (8)
      • MariaDB (8)
      • Oracle (1)
    • Linux (10)
      • Command-line (9)
      • Oracle Linux 8 (1)
    • CentOS 7 (25)
      • Basic (9)
      • Web Server (5)
      • WAS (3)
      • Jenkins (8)
    • Documents (4)
    • Etc (7)
      • Windows 10 (3)
      • trash bin (3)
06-29 09:38
  • 전체보기
  • 방명록
  • jini's GitHub
  • demo api
  • demo-old api
RSS 피드
로그인
로그아웃 글쓰기 관리

hello jiniworld

컨텐츠 검색

태그

MariaDB swagger SSL JPA centos7 effectivejava JAX-RS Command-Line Jersey SpringBoot2 MySQL Java OAS3 CI Spring springboot Spring Boot jenkins Spring Boot Tutorial https

최근글

  • [Jersey] 6. CRUD API 생성⋯
  • [Jersey] 5. ExceptionMapper⋯
  • [Jersey] 4. Response 전용 V⋯
  • [Jersey] 3. WebApplicationE⋯

댓글

  • MyBatis를 이용할 경우, SQL native 문⋯
  • 앗 그러면 하나만 더 물어보고 싶은 게⋯
  • 넵 빼고 진행해도 문제 없을거에요
  • Mybatis 사용하지 않으면 mapper랑 다⋯

공지사항

  • SSL 인증서 설정하기

아카이브

  • 2022/05
  • 2022/04
  • 2022/03
  • 2022/02
  • 2021/11
  • 2021/09
  • 2021/08
  • 2021/06
  • 2021/05
  • 2021/04
  • 2021/03
  • 2021/02

hello jiniworld(137)

  • Item 6. 불필요한 객체 생성을 피하자

    2019.03.12
  • Item 3~5. private 생성자 또는 열거타입으로 Singleton 보증하라

    2019.03.10
  • Item 2. 생성자 인자가 많을 때는 Builder Pattern 고려하기

    2019.03.07
  • Item 1. constructor 대신 static factory method를 사용할 수 없는지 생각하라.

    2019.03.07
  • spring boot 에서 JPA 사용하기 with MySQL

    2019.03.06
Item 6. 불필요한 객체 생성을 피하자

똑같은 기능의 객체를 여러번 이용할거라면, 매번 생성자를 통해 인스턴스를 생성하는 것보다, 불변 객체(static final)로 재사용 하자. 불변 객체를 이용한다니? 어렵게 느껴질 수도 있겠지만, 우리가 아주 많이 사용하던 String의 리터럴 방식의 선언 역시 불변 객체를 이용하는 방식이에요. String name = "jini"; 우리가 늘상 사용하던 위와 같은 방식이 하나의 String 인스턴스를 사용하는 방식이며, 똑같은 문자열 리터럴 사용하는 모든 코드에서 재사용이 보장되기도 합니다. 똑같은 기능의 객체를 여러번 재사용할 경우에 이 기능을 static factory method로 대체한다면, 매번 생성자를 호출하여 객체를 생성하지 않을 수 있습니다. 즉, Boolean b1 = new Bool..

2019. 3. 12. 01:06
Item 3~5. private 생성자 또는 열거타입으로 Singleton 보증하라

Singleton instance를 하나만 생성할 수 있는 클래스 설계상 유일해야하는 system component, 무상태(stateless) 객체 등에 이용됩니다. Singleton 만드는 방식 public static final field : 생성자는 private, 유일한 인스턴스를 public static 으로 설정. static factory method : 생성자는 private, 유일한 인스턴스도 private 정의 하며, 정적 팩터리 메서드를 통해 객체에 접근 enum : enum방식을 통해 생성자를 final static 형으로 선언하고 이용. 권장하는 방법은 3번째 방식입니다. public static final로 정의한 멤버 INSTANCE를 필드명으로 접근하는 방식 생성자는 pri..

2019. 3. 10. 15:45
Item 2. 생성자 인자가 많을 때는 Builder Pattern 고려하기

객체를 생성할 때 반드시 필요한 필수 인자와 옵션 인자. 이때, 옵션 인자가 너무 많을 경우 어떤 형태로 객체를 생성하는게 좋을까요? 점층적 생성자 패턴 ( telescoping constructor pattern) 자바빈 패턴 ( javabean pattern ) 빌더 패턴 ( Builder pattern ) 이 중에 빌더 패턴을 사용하기를 권장합니다! 나머지 두개의 패턴이 어떤 형태인지 보고, 왜 빌더 패턴을 권장하는지 알아보도록 합시다. 1. 점층적 생성자 패턴 필수 인자를 가진 생성자부터 시작해서, 선택적으로 필요한 인자들을 하나씩 추가한 점층적 생성자 패턴 영양 성분표 클래스를 예시로 들어보면 영양 성분표 중 servingSize, servings만 필수 인자이고 나머지는 옵션적으로 들어옵니다...

2019. 3. 7. 13:10
Item 1. constructor 대신 static factory method를 사용할 수 없는지 생각하라.

Class로부터 object를 만드는 2가지 방법. ① public constructor ② public static factory method 우리는 보통 public 생성자를 통해 객체를 생성한다. 이 때, 이 객체 생성을 static factory method를 이용하여 생성할 수는 없는지 아래의 장단점을 체크해보고 고려해보도록 하자. 장점1. 생성자와 달리 메서드이기에 이름을 가질 수 있다. 따라서 가독성이 높다. 메서드에는 우리가 이름을 지을 수 있다. 따라서 기능에 대해서 우리가 이름을 지어줄 수 있기에 가독성이 높다. 그리고 동일한 시그니쳐(= 동일한 매개변수들)를 이용해야 할 때, 만약 생성자로 만든다면 어떤 생성자가 어떤 기능을 하는지 헷깔릴 수가 있다. public Car(String ..

2019. 3. 7. 11:26
spring boot 에서 JPA 사용하기 with MySQL

spring boot에서 MySQL DB를 연결해보자. JPA를 이용해서! 1. pom.xml에 dependencies 추가하기 먼저, mysql db와 jpa를 이용하기 위한 dependencies들을 추가하자. org.springframework.boot spring-boot-starter-data-jpa mysql mysql-connector-java runtime org.springframework.boot spring-boot-starter-jdbc mysql-connector-java, spring-boot-starter-jdbc, spring-boot-starter-data-jpa 를 추가합니다. 2. db접속정보 관련하여 프로퍼티 설정 그리고, 프로퍼티파일에 db접속정보를 설정합니다. sp..

2019. 3. 6. 17:49
1 ··· 20 21 22 23
JINIWORLD
© jiniworld. All rights reserved.

티스토리툴바