로그기록(logback이용) log4j를 기반으로 사용하는 로그프레임워크 Logger, Appender, Encoder Logger : 로깅담당 Appender : 로그가 출력될 대상관리 Encore : 특정 형식으로 로그 메시지를 변환하는 역할 로그레벨 ERROR : 일반적인 에러가 발생하는 상황 WARN : 경고(에러는 아니지만 주의 필요) INFO : 일반 정보 DEBUG : 일반정보를 좀 더 상세히 표현 TRACE : 경로추적 작성방법 API추가 설정파일작성(logback.xml) 적절한 곳에서 로그를 기록할 수 있도록 추가 dependency 등록 ch.qos.logback logback-classic 1.1.3 ch.qos.logback logback-core 1.1.3 src/main/res..
Controller가 실행 되기 전, 실행 될때, 실행 후에 실행되도록 하는 클래스 컨트롤러가 실행되는 시간 측정 package kr.encore.bigdataShop.interceptor; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; // 컨트롤러가 실행되는 시간을 측정(접속자 ip) public class..
회원 서비스 package kr.example.spring.service; import kr.example.spring.domain.Member; import kr.example.spring.repository.MemberRepository; import java.util.List; import java.util.Optional; public class MemberService { private final MemberRepository memberRepository = new MemoryMemberRepository(); // 회원 가입 public Long join(Member member) { // 같은 이름이 있는 중복 회원 X validateDuplicateMember(member); // 중복 ..
컨트롤러: 웹 MVC의 컨트롤러 역할 서비스: 핵심 비즈니스 로직 구현 리포지토리: 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인: 비즈니스 도메인 객체, 예) 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨 회원 도메인과 리포지토리 회원 객체 package kr.example.spring.domain; public class Member { private Long id; private String name; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String na..
정적 컨텐츠 html 그대로 서버로 전달 -> 웹 페이지에 보여진다. docs.spring.io/spring-boot/docs/2.3.1.RELEASE/reference/html/spring-boot-features.html#boot-features-spring-mvc-static-content Spring Boot Features Graceful shutdown is supported with all four embedded web servers (Jetty, Reactor Netty, Tomcat, and Undertow) and with both reactive and Servlet-based web applications. It occurs as part of closing the applicat..
프로젝트 생성 start.spring.io/ 스프링 부트를 기반으로 프로젝트를 생성해 주는 사이트 Dependencies 중요 : 웹 프로젝트에 필요한 라이브러리들을 자동으로 다운로드 받는다. 생성을 한 후 압축을 풀고 폴더안에 build.gradle를 연다 생성 프로젝트 실행 스프링부트라 이브러리에 톰캣 웹서버를 내장하고 있다 ( 기본 8080포트 ) Intellij 사용시 자바가 Gradle을 통해 실행되서 로딩이 느릴 때가 있다. Gradle을 통하지 않고 바로 실행되도록 바꾼다. View 환경설정 정적 페이지 생성 src -> main -> resources -> static 위치에 index.html을 생성하면 도메인 첫 페이지로 등록된다. 스프링부트 메뉴얼 : docs.spring.io/spr..
transaction 처리 auto commit을 해제 -> 트랜잭션의 시작 state의 기본값을 false로 지정, try 문이 정상 실행 되면 state값을 true로 변경 state에 따라서 commit 할지 rollback할지 결정 package transaction; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; public class TransactionBasicTest { public static void main(String[] args) { String url =..
관점지향프로그래밍 핵심기능과 공통기능을 각각의 코드로 구현한 후 필요한 곳에서 적절하게 조합해서 완성된 코드로 실행되도록 하는 프로그래밍 기법 [용어] 1. core concern (핵심기능) - 비지니스로직(주업무) 2. cross-cutting concern(공통기능) - 부가기능(보조업무) => 로깅, 트랜잭션처리, 자원처리, 보안처리 ... 3. code core concern이 구현된 객체 4. advice cross-cutting concern이 구현된 객체 5. joinPoint code와 advice를 연결할 수 있도록 도와주는 설정정보 즉, advice를 적용할 지점에 대한 정보(메소드 호출, 필드값을 변경, ..) 6. Point-cut joinPoint의 부분집합으로 실제 advice..
- Total
- Today
- Yesterday
- File Protection
- 빅데이터 플랫폼
- 하둡
- oracle
- jdbc
- Allocation methods
- linux
- maven
- gradle
- springboot
- Disk System
- JSON
- SQL
- SPARK
- Flume
- Variable allocation
- I/O Mechanisms
- aop
- mapreduce
- Disk Scheduling
- HDFS
- vmware
- Java
- Spring
- RAID Architecture
- Replacement Strategies
- 빅데이터
- I/O Services of OS
- hadoop
- Free space management
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |