반응형 개발111 [Java] equals 메서드 equals 메서드 재정의에는 함정이 많다! 아래 상황 중 하나에 해당한다면 재정의 하지 않는 것이 최선 각 인스턴스가 본질적으로 고유하다 인스턴스의 논리적 동치성을 검사할 일이 없다 상위 클래스에서 재정의한 equals가 하위 클래스에도 딱 들어맞는다 클래스가 private이거나 package-private이고 equals 메서드를 호출할 일이 없다 equals 메서드는 동치 관계를 구현하며, 다음을 만족한다 반사성(reflexivity) - null이 아닌 모든 참조 값 x에 대해 x.equals(x) 는 true 대칭성(symmetry) - null이 아닌 모든 참조 값 x,y에 대해 x.equals(y)가 true 면 y.equals(x) 도 true 추이성(transitivity) - null이.. 2021. 6. 15. [이펙티브 자바] 정적 팩터리 메서드 명명 방식 from 매개변수를 하나 받아서 해당 타입의 인스턴스를 반환하는 형변환 메서드 Date d = Date.from(instant); of 여러 매개변수를 받아 적합한 타입의 인스턴스를 반환하는 집계 메서드 Set faceCards = EnumSet.of(JACK,QUEEN,KING); valueOf from과 of의 더 자세한 버전 BigInteger prime = BigInteger.valueOf(Integer.MAX_VALUE); instance 혹은 getInstance (매개변수를 받는다면) 매개변수로 명시한 인스턴스를 반환하지만, 같은 인스턴스임을 보장하지는 않는다 StackWalker luke = StackWalker.getInstance(options); create 혹은 newInstance.. 2021. 4. 27. [Lombok + Builder pattern + generic] 롬복 빌더패턴에서 generic 사용하기 * 리스트에서 페이지 조회시 공통으로 반환하는 것들이 있어서 PageDto를 Generic Type을 이용해서 만들어봤다 @Getter @Setter @Builder public class PageDto { public PageDto() {} private T contents; private boolean hasContent; private boolean hasNext; private long totalCount; } * 롬복 빌더패턴을 사용하려면... PageDto userList = PageDto.builder() .contents(userList) .hasContent(page.hasContent()) .hasNext(page.hasNext()) .totalCount(page.getTotalElem.. 2021. 4. 19. [Javascript] JSON 데이터 -> 쿼리스트링으로 변환 null 또는 undefined 의 경우는 넘기지 않기로! var jsonString = { key1 : 'val1', key2: null, key3: 'abc'}; var queryString = Object.entries(jsonString).map( ([key,value]) => ( value && key+'='+value )).filter(v=>v).join('&'); 2021. 3. 30. [소스트리] mac 소스트리 gitlab 계정 추가 1. 상단 메뉴바 -> Sourcetree -> 설정 2. 계정탭 선택 후 추가 버튼 클릭 3. 사용자이름 : gitlab 계정에서 fullname 입력 (fullname 입력 안하고 그냥 아이디 적어서 한참 삽질함 주의) 암호 : 발급받은 토큰 입력 (토큰 발급 방법 하단에 설명) 프로토콜 : HTTPS ** 토큰 발급 방법 gitlab.com/-/profile/personal_access_tokens Gitlab 로그인 -> 프로필 사진 클릭 -> Preference 클릭 -> Access Tokens 클릭 Name: 토큰 이름 입력 Expires at: 입력 안 할 시 토큰 만료일 없음 Never Scopes: 토큰으로 작업할 범위 선택 (전체 다 선택하면 편리..) 입력 후 Create Perso.. 2021. 3. 17. [nodemailer] node로 smtp 메일 발송하기 (다우오피스 메일) const nodemailer = require("nodemailer"); // 메일발송 객체 var mailSender = { // 메일발송 함수 sendDaouofficeMail : function(param){ var transporter = nodemailer.createTransport({ service: 'daouofficemail' ,port : 465 ,host :'outbound.daouoffice.com' ,secure : true ,requireTLS : true , auth: { user: '메일계정 주소' ,pass: '메일계정 비밀번호' } }); // 메일 옵션 var mailOptions = { from: 'user@mail.com', to: 'test@gmail.com', .. 2021. 2. 19. 이전 1 ··· 10 11 12 13 14 15 16 ··· 19 다음