본문 바로가기

반응형

분류 전체보기

Java - 배열 배열 - 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것 int score1, score2, score3, score4, score5; int[] score = new int[5]; - 변수는 저장공간이 따로따로, 배열은 저장공간이 연속 - 배열의 선언 : 배열을 다루기 위한 참조변수의 선언 선언방법 선언 예 타입[] 변수이름 -- 이거를 더 선호 ** 나도 ^_^ int [] score; String[] name; 타입 변수이름[] int score[]; String name[]; int [] score; // 참조변수 선언 score = new int[5]; // int 타입 값 5개를 저장할 수 있는 배열 생성 배열길이 - 배열이름.length - 배열의 길이 (int형 상수) int[] arr.. 더보기
Java - 변수 1. 변수 - 하나의 값을 저장할 수 있는 메모리 공간(RAM) - 변수의 선언 2. 변수, 상수, 리터럴 변수(variable) - 하나의 값을 저장하기 위한 공간 상수(constant) - 한 번만 값을 저장 가능한 변수 리터럴(literal) - 그 자체로 값을 의미하는 것 int score = 100; score = 200; final int MAX = 100; MAX = 200; // 에러 char ch = 'A'; String str = "abc"; 3. 리터럴의 접두사와 접미사 종류 리터럴 접미사 논리형 false, true 없음 정수형 int - 123, 0b0101, 077, 0xFF long - 100L L - 씀 실수형 long - 3.14, 3.0e8, 0x1.0p-1 float -.. 더보기
Java Java 란 - 프로그래밍 언어(Programing Language) - 애플리케이션을 만드는데 사용된다. - 실행환경 (JRE) + 개발도구(JDK) + 라이브러리(API) - 모던 프로그래밍 언어(객체지향 + 함수형) 과거엔 객체지향이었지만 자바 8부터 함수형 기능이 추가 되고 있다. 멈춰 있지 않고 진화 중 Java의 역사 - 3버전 올라갈때 마다 큰 변화가 있다. JDK 1.0(January 23, 1996) J2SE 1.2 - Java2 라 부른다. (December 8, 1998) J2SE - Java Standard Edition J2ME - Java Micro Edition J2EE - Java Enterprise Edition J2SE 5.0 - Java5 , java1.5 라고 부른다... 더보기
Null-Safety 스프링 프레임워크 5에 추가된 Null 관련 애노테이션 - @NonNull - @Nullable - @NonNullApi - @NonNullFields 목적 - 툴의 지원을 받아 컴파일 시점에 최대한 NullPointerException을 방지하는 것 더보기
AOP - @AOP 스프링 애노테이션 기반의 스프링 @AOP 1. 의존성 추가 org.springframework.boot spring-boot-starter-aop 2. 애스팩트 정의 package com.bpkim.demospring51; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; import org.springframework.stereotype.Component; @Component @Aspect public class PerfAspect { // Pr.. 더보기
AOP - 프록시 기반 AOP 스프링 AOP 의 특징 - 프록시 기반의 AOP 구현체 - 스프링 빈에만 AOP를 적용할 수 있다. - 모든 AOP 기능을 제공하는 것이 목적이 아니라, 스프링 IoC와 연동하여 엔터프라이즈 애플리케이션에서 가장 흔한 문제에 대한 해결책을 제공하는 것이 목적. 프록시 패턴 - 왜 ? (기존 코드 변경 없이) 접근 제어 또는 부가 기능 추가 - 기존 코드를 건드리지 않고 일을 끼워넣기! 소스코드 - 구현할 함수를 정의한 인터페이스 package com.bpkim.demospring51; public interface EventService { void createEvent(); void publishEvent(); void deleteEvent(); } - 인터페이스를 상속하여 할 일을 선언한 Serive.. 더보기
스프링 AOP - 개념 AOP(Aspect Oriented Programming)는 OOP를 보완하는 수단으로, Aspect를 모듈화 할 수 있는 프로그래밍 기법 흩어진 관심사(Crosscultting Concerns) : 여러 클래스, 여러 메소드에 나타나는 비슷한 코드, 비슷한 필드 예) 트랜잭션 처리 Aspect - 흩어진 관심사들을 각각 모아 독립 적으로 정의 > 모듈화 한 것 - Advice : 해야할 일들 - Pointcut : 어디에 적용해야 하는지 AOP의 주요 개념 - Aspect와 Target(적용이 되는 대상) - Join point와 pointcut ** Join point : 합류점, 메소드 실행 시점, 행성자 호출, 필드 접근전, 필드에 값을 가지고 올때 등등 ** pointcut : 합류점, 메소드 .. 더보기
SpEL(스프링 Expression Language) 스프링 EL 이란 - 객체 그래프를 조회하고 조작하는 기능을 제공한다. - Unified EL과 비슷하지만, 메소드 호출을 지원하며, 문자열 템플릿 기능도 제공한다. - OGNL, MVEL, JBOss EL 등 자바에서 사용할 수 있는 여러 EL이 있지만, SpEL은 모든 스프링 프로젝트 전반에 걸처 사용할 EL로 만들었다. - 스프링 3.0 부터 지원이 가능하다. package com.bpkim.demospring51; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunn.. 더보기

반응형