본문 바로가기

Java20

[자료구조-Java] 배열(Array)? 자료구조란? 데이터 단위와 데이터 자체 사이의 물리적 또는 논리적인 관계를 말합니다 쉽게 말해서 자료를 효율적으로 이용할 수 있도록 컴퓨터에 저장하는 방법입니다 배열 배열은 같은 자료형의 변수로 이루어진 구성요소(Component)가 모인 것입니다 변수가 하나의 데이터를 저장하기 위한 것이라면, 배열은 여러 데이터를 저장하기 위한 것이라 할 수 있습니다 배열의 선언 데이터 타입에 대괄호[] 를 붙이는 방법과 변수의 이름에 대괄호[] 를 붙이는 방법, 이렇게 두가지가 있는데 주로 데이터 타입에 대괄호[] 를 붙이는 방법을 많이 사용합니다 int[] number;// 많이 사용하는 방법 int number[]; String[] str;// 많이 사용하는 방법 String str[]; 배열의 생성 구성요소(C.. 2022. 1. 16.
[Spring] 스프링 AOP Pointcut 표현식 포인트컷을 이용하면 어드바이스 메소드가 적용될 비즈니스 메소드를 정확하게 필터링 할 수 있음 ( ※ Pointcut : 특정 조건에 의해 필터링된 Joinpoint, 수많은 Joinpoint 중에 특정 메서드에서만 공통기능(횡단관심사)을 수행시키기 위해서 사용한다) 지시자(PCD, AspectJ pointcut designators)의 종류 (PCD : 흔히 우리가 사용하고 있는 execution이라든지 @annotation 지정자를 PointCut Desinator라 하여 통상 "PCD"라 불림 PCD는 타깃의 여러 Joinpoint 중에 어드바이스를 어디에 적용을 시킬지, AOP에게 알려주는 키워드라고 할 수 있음) 1. execution : 가장 정교한 포인트컷을 만들 수 있음 리턴타입 패키지경로 .. 2021. 8. 18.
[Spring] Spring MVC? MVC Architecture ( Model 1 / Model 2 ) MVC Architecture란 ? Model, View, Controller를 분리한 디자인 패턴 Model View Controller - 애플리케이션의 상태를 나타낸다 - 비즈니스 로직과 데이터 엑세스 로직 - Java Class가 담당, Java Beans - 디스플.. wpunch2000.tistory.com Java MVC Architecture은 위 링크를 참고 1. Spring MVC - Spring MVC는 자바 기반의 웹 애플리케이션을 개발할 때 사용하는 프레임워크의 하나로서 프레임워크 Architecture로 MVC 패턴을 채택 - Model 2 MVC 을 기반으로 하는 스프링 프레임워크에서 제공하는 웹모듈 1-1 .. 2021. 6. 2.
[Spring] Bean 설정, 컴포넌트 스캔(Component Scan) 1. Bean 설정 방법 방법 설명 XML 기반 설정 방식 XML 파일을 사용하는 방법 요소의 class 속성에 FQCN(Fully-Qualified Class Name)을 기술하면 빈이 정의됨 으로 bean 생성 또는 요소를 사용해 의존성주입(DI) Annotation 기반 설정 방식 @Component 계열 Annotation이 명시된 클래스를 탐색(Component Scan)해서 IoC Container에 Bean을 자동으로 등록하는 방법 Java 기반 설정 방식 @Configuration을 Java Class에 명시하여 설정하고 @Bean을 사용해 bean을 정의하는 방법 (XML + Annotation 방식 또는 Java class + Annotation 방식 의 조합으로 주로 설정한다) 1-1.. 2021. 6. 1.
[Spring/MyBatis] MyBatis? MyBatis란? SQL 기반의 영속성 계층 프레임워크 (Persistence layer framework) - SQL과 자바 객채를 매핑하는 사상에서 개발된 데이터베이스 접근용 프레임워크 - SQL을 별도의 파일로 분리해서 관리하게 해준다 JDBC Framework - Hibernate나 JPA 처럼 새로운 DB프로그래밍 패러다임을 익혀야 하는 부담없이 SQL을 그대로 이용 - JDBC 코드 작성의 불편함도 제거해주고 도메인 객체나 VO 객체를 중심으로 개발이 가능 특징 SQL문과 프로그램 코드의 분리 - SQL을 설정파일이나 Annotation에 선언적으로 정의해서 자바로 작성된 비즈니스 로직(애플리케이션)에서 SQL 자체를 숨길 수 있음 - SQL에 변경이 있을 때마다 자바 코드를 수정하거나 컴파일.. 2021. 5. 28.
[Spring] 스프링 AOP(관점지향 프로그래밍, Aspect-Oriented-Programming) 1. 관점 지향 프로그래밍(AOP: Aspect-Oriented-Programming)? 1-1 AOP 개요 - 어떤 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누어서 보고 그 관점을 기준으로 각각 모듈화하겠다는 것 - 시스템을 핵심관심사(Core Concern)와 횡단관심사(Cross-cutting Concern)로 구분하여 설계와 구현을 한다 핵심관심사 시스템의 목적에 해당하는 주요 로직 횡단관심사 시스템의 여러 부분에 걸쳐 공통적이고 반복적으로 필요로 하는 처리내용. 대표적으로 로깅, 보안, 트랜잭션 관리, 예외처리 등 - 시스템의 여러 영역에 걸쳐 공통적이고 반복적으로 적용된 횡단관심사를 분리하여 별도의 모듈에서 설계, 구현, 운영하는 프로그래밍 기법 - 애플리케이션 코드에서 공통적인 기.. 2021. 5. 24.