반응형 개발/spring, spring boot19 [spring] 스프링 관련 프로젝트 1. 스프링 MVC MVC 패턴을 따르는 웹 애플리케이션 개발을 위한 프레임워크. POJO(Plain Old Java Object) 형태로 구현하는 방식이나 애너테이션 기반 설정, 서블릿 API의 추상화, 스프링 DI 컨테이너와의 연계, 풍부한 확장 기능을 지원하며, 각종 서드파티 라이브러리와의 연계와 같은 다양한 특징과 함께 대규모 시스템 개발에 필요한 기능을 갖추고 있다. 2. 스프링 시큐리티 스프링 기반의 애플리케이션 인증(Authentication)이나 인가(Authorization)와 같은 보안 기능을 쉽게 구현할 수 있게 도와주는 프레임워크. 베이직 인증(Basic) 및 다이제스트 인증(digest authentication), X.509 클라이언트 인증서, LDAP(Lightweight Di.. 2021. 1. 17. [spring 에러] slf4j failed to load class org.slf4j.impl.staticloggerbinder Maven 프로젝트에서 pom.xml 파일에 slf4j를 추가하고 로그 출력 시 아래와 같은 오류가 표시되고 로그가 찍히지 않을 경우.. slf4j failed to load class org.slf4j.impl.staticloggerbinder pom.xml 파일에 slf4j-simple도 추가 해주어야 함. ex) org.slf4j slf4j-api 1.7.30 org.slf4j slf4j-simple 1.7.30 2021. 1. 17. [spring 에러] 일치하는 와일드 카드 문자가 엄격하게 적용되지만 ... 요소에 대한 선언을 찾을 수 없습니다. 와 같은 내용이 있을때 xmls 항목을 추가하면 xsi:schemaLocation의 내용도 추가해야 한다. 즉 위와 같이 xmlns="http://www.springframework.org/schema/security" 항목을 추가하면 http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.2.xsd" 도 xsi:schemaLocation에 추가해 주어야 한다. 2021. 1. 17. [spring] Environment - 프로필(profile) XML설정에서 프로필 사용 태그에 profile 속성을 사용 GenericXmlApplicationContext context = new GenericXmlApplicationContext(); context.getEnvironment().setActiveProfiles("dev"); // 2개이상일 경우 context.getEnvironment().setActiveProfiles("dev", "mysql"); context.load("classpath:/dataSource-dev.xml", "classpath:/dataSource-prod.xml"); context.refresh(); java -Dspring.profiles.active=prod,oracle 자바 @Configuration 설정에서 프.. 2021. 1. 17. [spring] Environment - PropertySource 프로퍼티를 사용하는 이유 실제 업무에서 개발을 할 경우 로컬 환경, 개발 환경, 운영 환경에 따라 DB 연결, 파일 경로 등의 값이 바뀌는데 스프링에서 제공하는 프로퍼티와 프로파일을 이용하여 소스의 변경 없이 편하게 관리 할 수 있다. 프로퍼티를 읽어 오는 과정 ConfigurableEnvironment -> MutablePropertySources -> PropertySource(시스템 프로퍼티, 환경변수, 자바 Properties, JNDI) Environment가 제공하는 주요 메서드 boolean containsProperty(String key) : 지정한 key에 해당하는 프로퍼티가 존재하는지 확인 String getProperty(String key) : 지정한 key에 해당하는 프로퍼티값 .. 2021. 1. 17. [spring] 스프링 코어 - AOP (Aspect Oriented Programming) 스프링 코어 - AOP (Aspect Oriented Programming) AOP 가 필요한 이유 일정규모 이상의 프로젝트 진행 시 소스코드 양이 많아지며, 업무 로직과 상관없는 로깅이나 캐시 같은 처리 내용이 소스코드 여기저기에 존재하게 된다. 또한 공통으로 처리해야 하는 업무도 존재한다. (보안, 로깅, 트랜잭션관리, 모니터링, 캐시 처리, 예외 처리) 스프링 AOP를 사용하면 소스코드에서 공통적인 기능을 효율적으로 분리하고 원하는 시점에 실행하도록 할 수 있다. AOP 개념 용어 용어 설명 애스펙트 (Aspect) AOP의 단위를 애스펙트라고 부름. 예를 들어 공통처리 업무 내용 중 "로그 출력", "모니터링" 조인포인트 (Join Point) AOP가 실행될 지점이나 시점. 메소드 단위로 조인 .. 2021. 1. 17. 이전 1 2 3 4 다음 반응형