[cmd] 명령프롬프트(cmd)로 자바 컴파일 시 인코딩 깨짐 해결방법 [javac 명령어 인코딩 깨질 때]
·
▣ OS : 운영체제/cmd : 명령프롬프트💻
- 자바 컴파일 시 인코딩 깨짐 해결방법 javac를 이용해서 컴파일 하다보면 한글문자가 깨지는 경우가 있다. cmd 에러로그에서 볼 수 있듯, cmd에서 읽어들이는 인코딩은 x-windows-949인데, 컴파일 하려는 java 파일의 인코딩은 UTF-8이여서 인코딩이 깨진 상황이다. - 해결방법 javac 명령어에 인코딩 옵션을 넣어주면 된다. javac -encoding utf-8 파일명.java
[GoF] Builder 패턴 : 복잡한 인스턴스를 조립한다 [구조를 가진 인스턴스를 만들어 가는 패턴]
·
◈ Study/디자인패턴(GoF)🥞
- Builder 패턴 : 복잡한 인스턴스를 조립한다 Builder 패턴은 구조를 가진 인스턴스를 만들어 가는 패턴으로, 뼈대를 만들고 아래에서 위로 만들어 간다. - 어떤 경우에 사용할까? Builder 패턴은 구체적인 하위 클래스를 모른다는 게 큰 장점이다. 모르기 때문에 교체가 가능하고, 교체되기 때문에 부품으로서의 가치가 높다. 클래스 설계자는 '교체 가능성'을 항상 염두에 둘 필요가 있다. - 예제 코드 이름 설명 Builder 문서를 구성하기 위한 메서드를 규정한 추상 클래스 Director 하나의 문서를 만드는 클래스 TextBuilder 텍스트(일반 문자열)를 이용하여 문서를 만드는 클래스 HTMLBuilder HTML 파일을 이용하여 문서를 만드는 클래스 Main 동작 테스트용 클래스 -..
[일상] University of California San Diego - Object Oriented Programming in Java 강좌 수료 [Coursera x K-MOOC]
·
◐ 기타/개발자의 일상🎈
- Object Oriented Programming in Java 강좌 수료 Coursera x K-MOOC에서 제공한 캘리포니아대학교 샌디에고에서 Object Oriented Programming in Java를 수강하였다. 객체지향과 상속의 개념에 대해 중점적으로 공부하였다. Java의 객체 지향 프로그래밍 University of California San Diego에서 제공합니다. Welcome to our course on Object Oriented Programming in Java using data visualization. People come to ... 무료로 등록하십시오. www.coursera.org 강의를 들으면서 Java Applet으로 다양한 모듈도 만들어보았고, 과제를 ..
[Applet] 자바 애플릿(Java Applet)에서 마우스 이벤트 구현하기 [Programming Assignment for Module 5]
·
◎ Java/Applet🧳
- 자바 애플릿(Java Applet)에서 마우스 이벤트 구현하기 1. mouseMoved() 메서드 구현 사용자가 마우스를 움직일 때 이벤트 핸들러에 의해 mouseMoved()가 호출되면 지진 마커의 경우 지진 제목을, 도시의 경우 이름, 국가 및 인구를 표시한다. - EarthquakeCityMap.java /** Event handler that gets called automatically when the * mouse moves. */ @Override public void mouseMoved() { // clear the last selection if (lastSelected != null) { lastSelected.setSelected(false); lastSelected = null;..
[Spring] 싱글톤, 무상태(stateless)로 설계하라! [Singleton 패턴 주의사항]
·
▣ Framework/Spring🍃
- 싱글톤, 무상태(stateless)로 설계하라! 객체 인스턴스를 하나만 생성해서 공유하는 싱글톤 방식은 여러 클라이언트가 하나의 같은 객체 인스턴스를 공유하기 때문에 싱글톤 객체는 상태를 유지(stateful)하게 설계하면 안된다. - 잘못된 설계 : 상태가 유지되는 경우 - StateFulService.java public class StateFulService { private int price; // 상태를 유지하는 필드 public void order(String name, int price) { System.out.println("name = " + name + " price = " + price); this.price = price; // 여기가 문제! } public int getPric..