BackEnd

· BackEnd/Java
자바 국비 과정을 이수하면서 깜빡할 때마다 읽어보려고 만들었습니다! 지켜야 할 약속, 꼭 알고 있어야 하는 부분 변수명, 패키지명, 메소드명은 소문자로 시작한다. 클래스명, 프로젝트명은 대문자로 시작한다. 인스턴스 변수 - 인스턴스 변수의 값을 읽어오거나 저장하려면 인스턴스를 생성해야한다. 클래스 변수 - 인스턴스 변수에 static만 붙여주면 된다. 스태틱은 정적으로 값이 변하지 않는다. 선언하면 프로그램이 종료될 때 까지 값이 고정이다. 그러나 선언된 함수나 공간에서만 사용이 된다. 스태틱을 선언하면 프로그램이 종료될 때 까지 값을 가지고 있고 종료되면 사라진다. 지역 변수 - 메서드 내에서 선언하며 선언된 메서드 내에서만 사용할 수 있는 변수이다. 메서드가 실행될 때 메모리를 할당 받으며 메서드가 ..
스프링 의존성 주입 의존성, Dependency 특정 객체가 작동하기 위해 필요한 외부 객체와의 연결 public class EmpController { // EmpController class는 EmpService 객체에 의존적이다 private EmpService empService = new EmpServiceImpl(); } // EmpController Class 가 작동하기 위해서는 EmpService 객체가 필요하게 된다, // 그러므로 private EmpService empService = new EmpServiceImpl(); 를 선언하는데, // 이때부터 의존관계가 되는 것 의존성 주입, Dependency Injection, DI 객체가 의존성을 직접 발생시키지 않고 외부(스프링)의..
@Autowired 의 바인딩 전략 바인딩 : 실행코드와 정의코드가 연결되는 것 주로 메소드 호출코드와 메소드 정의코드가 연결되는 것을 의미한다 @Autowired 는 객체변수와 스프링 Bean 을 연결하는 것을 뜻한다 (DI, Dependecy Injection) byType 스프링 Bean 의 이름(id)에 상관없이 같은 타입의 Bean 이 한 개만 존재한다면 바인딩한다 같은 타입으로 등록된 Bean 이 두가지 이상 존재한다면 예외처리가 발생한다 NoUniqueBeanDefinitionException byName 같은 타입의 빈이 여러 개 등록되어 있더라도 지정된 이름의 빈을 바인딩 이름이 지정되지 않았다면 스프링 빈의 id와 멤버필드의 이름을 비교해서 바인딩 같은 이름으로 여러 개의 스프링 빈이 ..
AOP, Aspect Oriented Programming 관점 지향 프로그래밍 시스템의 규모와 복잡도가 증가하면서 기능별로 모듈화를 거치더라도 중복되는 코드가 생겨나게 된다 트랜잭션 관리, 로깅처리 등 이러한 코드들을 다시 한번 더 모듈화 해내어 분리하는 것이 AOP 이다 재 모듈화 라고 생각하면 이해가 쉬울 것이다 AOP 용어 Advice PointCut 에서 지정한 JoinPoint 에서 실행되어야 하는 코드 Around Advice : JoinPoint 의 앞과 뒤에서 실행되는 Advice Before Advice : JoinPoint 의 앞에서 실행되는 Advice After return Advice : JoinPoint 메소드 호출이 정상적으로 종료된 뒤에 실행되는 Advice After Th..
Spring Annotation 어노테이션은 자바 1.8 버전부터 지원한다 스프링은 어노테이션을 이용하여 bean과 관련된 정보를 설정할 수 있다 스프링에서 어노테이션을 사용하기 위해 필요한 설정 의존성 관련 어노테이션 태그를 applicationContext.xml 에 등록하면 @Autowired, @Required, @Resource 등을 사용할 수 있다 bean 으로 등록하는 것과 관련된 어노테이션 context:annotation-config + @Component, @Controller, @Service, @Repository 등 @Component : 클래스 위에 선언하며, 해당 클래스를 자동으로 bean으로 등록한다, bean 의 이름은 해당 클래스명이 사용된다 (첫글자는 소문자) @Cont..
Spring Framework 스프링의 특징 자바를 이용한 프로그램 개발 프레임워크 DI (Dependency Injection), 의존성 주입 Spring AOP (Aspect Oriented Programming), 관점 지향 프로그래밍 POJO, Plain Old Java Object IOC (Inversion Of Control), 제어의 반전 스프링 홈페이지 Spring STS Tool Spring Tool Suite STS 버전과 스프링의 버전은 다르다, 문서에 작성 할 때는 분리하여 작성할 것 이클립스에서 Spring Framework 를 개발할 수 있게 해주는 툴 설치방법 두가지 이클립스에 플러그인 형태로 STS 툴을 설치하는 방법 STS Tool 을 다운받아 한번에 설치하는 방법 (이클립..
헌일