불변 객체란?불변 객체(Immutable Object)는 생성된 이후 내부 상태(필드 값)가 절대 변하지 않는 객체입니다. 한번 만들어지면 소멸할 때까지 동일한 데이터를 유지합니다.자바의 대표적인 예가 String입니다. replace를 호출해도 원본은 그대로 두고 새 인스턴스를 반환합니다.String str = "hello";String result = str.replace("l", "L");System.out.println(str); // hello ← 원본은 그대로System.out.println(result); // heLLo ← 새 객체가 반환됨"수정"처럼 보이는 연산도 사실은 새 객체를 만드는 것입니다. Integer, Long 같은 래퍼 클래스와 LocalDate, Local..
JavaScript
2019. 12. 16. 21:23
[jQuery] 제이쿼리 $.each() 함수 100% 활용하기!
jQuery $.each() 함수 100% 활용하기!jQuery의 $.each() 함수는 배열의 요소나 Map 또는 객체의 속성을 반복할 수 있도록 하는 함수입니다. 개인적으로 매우매우 자주 사용하는 함수이기도 합니다. jQuery뿐만 아니라 underscoreJS같은 자바스크립트 유틸리티 라이브러리들에도 쉽게 볼 수 있는 함수(사용법은 라이브러리마다 다를 수있음)입니다.기본적인 javascript의 for문과의 차이점이라면 for문에는 조건식에 배열의 length만큼의 범위 지정을 해주어야 하고 증감식을 매번 써주어야 하는데에 반해 each()는 이러한 조건을 써주지 않아도 되기 때문에 코드를 더 보기 편하고 배열 뿐만 아니라 DOM 객체나 일반 객체 등에도 사용이 가능하다는 점이 있습니다.$.each..
Servlet&Jsp
2019. 8. 7. 09:30
[서블릿/JSP] 표현 언어(EL)의 일반객체 및 컬렉션객체 사용법
이전글[서블릿/JSP] 표현 언어(EL) 기본 사용법 및 자료형 설명표현 언어(EL)의 객체접근글의 제목은 일반객체라고 표현하긴 했지만 표현언어(Expression Language)에서는 내장객체나 scope 객체, Bean규약에 맞게된 빈 객체등의 특정 객체에 속성에 접근할때 "." 연산자를 통해 쉽게 접근할 수 있습니다. 추가적으로 접근 객체의 타입이 Map인 경우에도 동일한 표기법으로 접근이 가능합니다.${cookie.name}${member.email}또한 "."연산자와 더불어 javascript의 []연산자를 사용하여 접근하는것도 가능합니다.${cookie['name']}${member['email']}만약 접근하는 속성이 객체이고 해당 객체의 속성에 접근하는 경우 다음과 같이 "." 연산자를 ..
Servlet&Jsp
2019. 7. 9. 20:30
[서블릿/JSP] 서버의 세션 수 제한하는 방법
서버의 세션 수 제한하는 방법만약 사용자가 로그인 했을때 서버에 세션 객체를 생성한다고 가정했을때 특정 사용자의 수 만큼만 접속을 제한하고 싶은 경우 어떻게 해야할까요? 가장 단순한 방법으로는 서블릿 컨테이너(서버)의 세션 객체의 최대 생성 수를 제한하면 됩니다. 물론 요즘은 인증, 인가와 관련된 수많은 프레임웍이 있기에 실무에서도 이러한 방식을 사용하는 경우가 있는지는 의문입니다. 아마 서버의 사양으로 인한 메모리 관리 용도로 사용하는 경우정도가 있지 않을까 싶습니다.설정 방법톰캣의 경우 [톰캣 설치 디렉터리]/conf/context.xml에 세션객체의 최대 수를 제한할 수 있는 maxActiveSessions 속성을 지원합니다. 태그 하위에 태그를 넣고 속성으로 maxActiveSessions 속성..
Servlet&Jsp
2018. 9. 6. 20:01
[서블릿/JSP] 자바빈(Java Beans)이란? <jsp:useBean> 액션 태그로 빈 객체 생성하기
이전글[JAVAEE] 자바빈(JavaBean) 이란? 자바빈 규약에 대해[이클립스] eclipse 자바 클래스 getter, setter, toString 메서드 쉽게 만드는 방법[서블릿/JSP] JSP 기본 객체별 생명 주기(scope)자바빈(Java Beans)이란자바빈은 자바빈 규약 또는 자바빈 관례에 따라 만들어진 클래스를 의미합니다. 즉 자바빈 규약이라는 어떠한 관례(또는 규칙)이 있고 이 규칙에 맞게 작성된 Java 클래스를 말합니다. 이 클래스로 만들어진 인스턴스(객체)를 자바빈 객체라고 합니다. 규약은 대략 다음과 같습니다.패키지 - 자바빈은 기본(default) 패키지 이외의 특정 패키지에 속해 있어야 한다.기본 생성자가 존재해야 한다.멤버변수의 접근제어자는 private으로 선언되어야 ..
JavaScript
2017. 11. 13. 23:30
[자바스크립트] Date 객체
Date 객체날짜와 시간을 다루는 객체입니다.생성자new Date()기본 생성자로 현재 시간에 대한 날짜 객체를 반환합니다.new 키워드 없이 Date() 함수로 실행시키는 경우 무조건 현재 시간을 반환합니다.var date = new Date(); //Mon Jan 02 2017 20:20:16 GMT+0900 (대한민국 표준시)new Date(milliseconds)1970년 1월 1일 자정(UTC) 에서 milliseconds 지난 만큼의 날짜에 대한 객체를 반환합니다.한국의 경우 UTC 에서 9시간을 더해야 하므로 1970년 1월 1일 09시 00분에서 시작합니다.var date = new Date(60000); //Thu Jan 01 1970 09:01:00 GMT+0900 (대한민국 표준시) ..