Spread your wings
close
프로필 배경
프로필 로고

Spread your wings

  • 분류 전체보기 (119)
    • 개발 (23)
      • 자바 (14)
      • Database (3)
      • Spring (6)
      • 테스트 (1)
      • 병렬 프로그래밍 (14)
      • 리눅스 (3)
      • python (2)
      • Front End (4)
      • 리팩토링 (5)
      • Data Engineering (11)
      • 생각 (9)
    • 기타 (9)
    • IT (2)
      • 읽은 자료들 (0)
    • 경제 (1)
    • 생각 (4)
    • 독서노트 (7)
  • 홈
  • 태그
  • 미디어로그
  • 위치로그
  • 방명록

자바 성능을 결정짓는 코딩 습관과 튜닝 이야기

자바 성능을 결정짓는 코딩 습관 튜닝 이야기 요약 https://book.naver.com/bookdb/book_detail.nhn?bid=4441100 1. 너무나 많은 패턴을 사용하지 말라 - 꼭 필요한 패턴만 사용하라 2. 데이터 처리할때 TO(Transfer Object)패턴, (vo패턴)을 사용하고, 아니면 Collection 관련 클래스 이용하라. 3. 서비스 로케이터(Service Locator)패턴은 적용하면 대기시간을 줄수 있다. 4. 명명 규칙을 잘 지켰는가? 5. 필요한 부분에 예외 처리는 되어 있는가? 6. 예외 화면은 지정되어 있는가? 7. 예외처리를 e.printStackTrace() 해서 서버에 부하를 주지 말자 8. System.gc() 메소드를 이용해서 가비지콜렉션을 지운다..

  • format_list_bulleted 개발/자바
  • · 2020. 6. 9.
  • textsms

스프링 @Async를 통한 비동기 처리 및 설정값

@Async를 통해서 비동기 처리하는 방법 관련 내용 및 설정값들에 대해서 간단하게 정리한 내용이다. # @Async를 통한 비동기 처리 @Async 애노테이션을 통해서 메소드 호출을 비동기로 처리할 수 있는데 적용 방법은 비동기로 수행할 메소드(혹은 타입)에 @Async를 붙여주면 된다. 모든 메소드에 사용할 수 있는 것은 아니고 public void 혹은 public Future 타입의 메소드에만 적용할 수 있고 같은 클래스 내의 메소드 호출은 적용이 안된다. (다이나믹 프록시 적용이 가능해야 하기 때문임) (task:executor 설정 시 mode를 aspectj로 지정하면 이 제약이 없을 수도 있을 것 같다.) 작업의 결과값을 알아야하는 경우에는 Future 타입을 리턴 받아야 할 듯하다. 비동..

  • format_list_bulleted 개발/Spring
  • · 2020. 6. 3.
  • textsms

React Hook 내용 정리

React? f(data) = View React Element : type과 props를 가지는 객체 react element는 단일 태그로 감싸져있어야 함 로 감싸는 방식을 많이 사용한다 를 사용해도 됨 React Element는 immutable 하다 ReactDOM.render( reactElement, containerDOM, [callback] ) ReactDOM.hydrate( reactElement, containerDOM, [callback] ) hydrate는 render()와 동일하지만 SSR일 때 사용함 React Component의 이해 재사용성을 높여주고 기능별 단위를 만들 수 있게 해준다 f(props) => reactElement Component 구현 2가지 방법 Funct..

  • format_list_bulleted 개발/Front End
  • · 2020. 1. 10.
  • textsms

Effective Java 3/E - 8장 메서드 요약정리

8장 메서드 아이템 49 - 매개변수가 유효한지 검사하라 메서드 몸체가 실행되기 전에 매개변수를 확인하면 잘못된 값이 넘어왔을 때 즉각적이고 깔끔한 방식으로 예외를 던질 수 있다. 자바 7에 추가된 java.util.requireNonNull 메서드는 유연하고 사용하기도 편하니, 더 이상 null 검사를 수동으로 하지 않아도 된다. 메서드나 생성자를 작성할 때 그 매개변수들에 어떤 제약이 있을지 생각해야 하고 그 제약들은 문서화하고 코드 시작 부분에서 명시적으로 검사해야 한다. 아이템 50 - 적시에 방어적 복사본을 만들라 클라이언트가 여러분의 불변식을 깨뜨리려 혈안이 되어 있다고 가정하고 방어적으로 프로그래밍해야 한다. 가변 필드를 생성자 매개변수로 받아 클래스 필드에 저장하는 경우 각각을 방어적으로 ..

  • format_list_bulleted 개발/자바
  • · 2019. 5. 26.
  • textsms

Effective Java 3/E - 7장 람다와 스트림 요약정리

아이템 42 - 익명 클래스보다는 람다를 사용하라 함수 객체와 람다식 함수 객체 : 추상 메서드를 하나만 담은 인터페이스로 람다식이 등장하기 전에는 익명 클래스를 사용해서 주로 만들었음 Collections.sort(words, new Comparator() { public int compare(String s1, String s2) { return Integer.compare(s1.length(), s2.length()); } }) 자바8에와서 추상 메서드 하나짜리 인터페이스는 특별한 의미를 인정받아 특별한 대우를 받게됨 람다식을 이용해서 훨씬 간결한 코드를 만들 수 있게됨 Collections.sort(words, (s1, s2) -> Integer.compare(s1.length(), s2.leng..

  • format_list_bulleted 개발/자바
  • · 2019. 5. 19.
  • textsms

MySQL Enum에 대한 정리

개념MySQL Enum 타입은 Java enum 타입과 비슷한 유형이다.컬럼 정의 시 다음과 같이 enum 컬럼에 들어갈 수 있는 항목들을 정의한다. CREATE TABLE shirts ( name VARCHAR(40), size ENUM('x-small', 'small', 'medium', 'large', 'x-large')); enum 컬럼도 empty string이나 null값 삽입 가능하고 empty string은 유효하지 않은 값으로 취급된다. enum 항목이 없어지면 기존에 있던 삭제된 그 항목을 가지고 있던 컬럼값은 유효하지 않은 상태(empty string)로 변경된다. 다음과 같이 index값을 가지고 올 수 있다. index는 enum 정의 시 해당 항목의 위치값이다.SELE..

  • format_list_bulleted 개발/Database
  • · 2019. 4. 16.
  • textsms
  • navigate_before
  • 1
  • ···
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • ···
  • 16
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (119)
    • 개발 (23)
      • 자바 (14)
      • Database (3)
      • Spring (6)
      • 테스트 (1)
      • 병렬 프로그래밍 (14)
      • 리눅스 (3)
      • python (2)
      • Front End (4)
      • 리팩토링 (5)
      • Data Engineering (11)
      • 생각 (9)
    • 기타 (9)
    • IT (2)
      • 읽은 자료들 (0)
    • 경제 (1)
    • 생각 (4)
    • 독서노트 (7)
최근 글
인기 글
최근 댓글
태그
  • #hdfs update
  • #Hadoop
  • #Docker
  • #airflow
  • #ChatGPT
  • #카프카
  • #디-버그
  • #Java
  • #HDFS
  • #mysql
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바