본문 바로가기
728x90
반응형

Development/Java69

Deep Copy vs Shallow Copy 예전에 시험에서 나왔었는데...그때는 이게 뭔말인가 했다. -_-;;어디서 듣도 보지도 못한것이 굴러나왔나 했는데... [직역]Deep copy - 깊은 복사Shallow copy - 얕은 복사 Deep copy원본과 같은 데이터를 저장하고 있는 새로운 객체나 배열을 생성하는것원번이 바뀌어도 복사본은 독립적이기 때무에 영향이 없다. Shallow copy배열이나 객체를 복사할때 단순히 참조만 복사하는것.원본이 변경됨면 복사본도 변경된다. 까먹지 말자꾸나! 2013. 2. 12.
객체에는 메서드가 포함되지 않는다? 객채가 생성되면 인스턴스 변수는 포함이 되지만 메서드는 포함되지 않는다.왜냐고??인스턴스 변수는 인스턴스마다 다른 값을 가질수 있어야 하기 때문에 별도의 메모리 공간이 필요하다.그런데 메서드는 변하는게 아니다.그래서 메모리를 낭비해 가면서 인스턴스를 포함시킬 이유가 없다... 라고 오늘 책에서 봤다...처음 알았네 -_-;;; 2013. 2. 12.
파일 입출력. 가끔 찾아보기가 귀찮아서.. ㅡㅡ; try { BufferedReader in = new BufferedReader(new FileReader("src/input")); String s; while ((s = in.readLine()) != null) { System.out.println(s); } in.close(); } catch (IOException e) { System.err.println(e); System.exit(1); }} 2013. 1. 29.
[Spring]Spring Annotation 1. 속성 정의 XML 파일에 추가되어야 하는 정의 xmlns:context="http://www.springframework.org/schema/context“ http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> Spring Container가 Annotation을 인식하기 위해서는 Spring Container에 BeanPostProcessor들이 등록되어있어야한다. 을 추가하면 내부적으로 자동 등록된다. 2. Stereotype - @Service : Business Layer를 구성하는 서비스 클래스 대상 - @Repository : Data.. 2012. 8. 1.
[Spring]SpEL(Spring Expression Language) SpEL - Expression Languege중 하나, 런타임시 특정 객체의 정보에 접근하거나 조작할수 있도록 지원. 1. XML 기반 Bean 정의시 classpath상에 존재하는 context.properties파일을 로드하여 bean으로 정의한 후 driver, url 등의 정보를 추출함. 2. Annotation 기반 Bean 정의시@Repository(“movieDao")public class MovieDao extends SimpleJdbcDaoSupport { @Value("#{contextProperties['pageSize'] ?: 10}") int pageSize; @Value("#{contextProperties['pageUnit'] ?: 10}") int pageUnit; @Inj.. 2012. 7. 31.
[Spring]Autowiring - Autowiring 이란 Spirng container가 bean 간의 참조관계를 자동으로 연결해주는 기능- 속성값 1. no : 기본값 2. byName : property 명과 동일한 id 또는 name을 가진 bean 3. byType : 동일한 클래스타입,(같은 타입 여러개 존재시 exception 발생) 4. constructor : byType과 비슷하나 생성자인자에 적용 5. autodetect : constructor 모드 수행후 byType 모드 수행 6. default : 최상위 태그인 에 셋팅한 모드가 수행됨. (default-autowire 속성) Setter Injection 사용시 Autowire 사용시 특정 bean을 autowiring 제외시키려면 2012. 5. 3.
[Spring]AOP 주요 구성요소 Core Concerns : 특정 시스템의 핵심 가치와 고유 목적이 그대로 드러난 관심영역Crosscutting Concerns ; 로깅, 보안, 트랜잭션 관리등과 같이 여러 모듈간 공통적으로 적용되는 공통 관심영역1. JoinPoint- Crosscutting Concerns 모듈이 삽입되어 실행될수 있는 특정 위치- 제어 흐름중의 한 시점(메소드 호출시점, 예외 던져지는 시점등)2. PointCut - JoinPoint 중 AOP를 적용하기 위한 선별된 JoinPoint - Pattern Matcing과 PointCut Designator를 묶어 룰을 정함.3. Advice - JoinPoint에 삽입되어 동작할 수 있는 코드 - 동작시점 before : Matching 된 JoinPoint 이전에 .. 2012. 4. 13.
[Spring]Spring Bean Scope 1. Singleton Scope- SpringContatiner는 해당 Bean에 대한 여러개의 요청이나 참조에 대해 하나의 Bean 인스턴스만 생성해서 제공함.- 사용자의 요청시마다 유지해야할 data일 경우 Singleton Scope는 부적합.- scope을 별도로 지정하지 않을경우 기본값은 Singleton Scope이다. 2. Prototype Scope- SpringContainer는 요청시마다 새로운 인스턴스 생성하여 제공. 3. Request Scope- Http Request마다 새로운 인스턴스 를 생성하여 제공 4. Session Scope- Http Session마다 새로운 인스턴스 를 생성하여 제공 2012. 4. 9.
[Spring]Dependency Injection Bean Definition 파일에 정의 한 dependency 관련 정보를 바탕으로 객체 사이의 의존 관계를 Container가 자동적으로 연결해주는것을 말한다. Container API 에 종속되는것을 줄일수 있다. - Setter Injection : Setter 메소드 구현을 통해 해당 객체 초기화시 Container로 부터 참조관계에 놓인 특정 리소스를 할당받음. - Constructor Injection : Constructor 구현을 통해 특정 객체 초기화 시 Contatiner로부터 참조 관계에 놓인 특정 리소스를 할당 받는 방법 -- Setter Injection 예 [속성 정의 파일 ] [구현클래스 ] public class MovieServiceImpl implements MovieS.. 2012. 3. 21.
728x90
반응형