파일을 첨부할 수 있는 게시글 작성을 할 경우 게시글 테이블에 게시글을 입력하고 첨부파일 테이블에 해당 게시글 번호를 같이 입력해줘야 한다. 오라클은 시퀀스를 이용하여 시퀀스를 먼저 뽑아낸 뒤 두 테이블에 동일한 값을 추가하지만 mysql은 auto-increment로 설정된 column은 그 값을 먼저 가져올 수 없다. 이럴 경우에 mysql은 last_insert_id()라는 함수를 사용하면 된다. 이 함수는 가장 최근에 성공적으로 수행된 insert 구문의 첫번째 auto-increment의 값을 반환한다. 이 함수는 connection마다 따로 괸리된다. 두 개의 다른 insert가 발생하더라도 connection이 다르다면 각각의 id값을 가져온다. 참고 블로그 링크
1. SLF4J: Class path contains multiple SLF4J bindings 에러내용 : 1 2 3 4 SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/C:/eng/spring_project/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps/SampleBoard/WEB-INF/lib/logback-classic-1.2.3.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/C:/eng/spring_project/.metadat..
Log4j : 자바기반의 로깅 유틸리티. Apache에서 만든 오픈소스 라이브러리 System.out.println()만 사용한다면 1) 운영시에 불필요한 로그가 계속 출력된다. println이 운영에서도 남아 있다면 불필요한 로그로 리소그가 낭 비된다. 2) 모든 println을 삭제하면 에러가 발생했을 때, 해당 원인을 찾기가 어렵다. println이 모두 삭제된 상태라면 원인을 찾을 수 없다. 3) 성능에 영향을 미친다. 1부터 100까지의 단순 출력이라면 단시간에 실행이 되여 성능에 큰 영향이 없지만 계산 과정 같은 로직을 출력하게 했다면 시간이 오래 걸리게 되고 성능에 영향을 미치게 된다. Log4j는 위의 문제를 해결 할 수 있고 옵션 설정을 통해 선택적으로 로그를 남기거나 특정 파일에 로그를..
오류(error) : 시스템에 비정상적인 상황이 생겼을 때 발생한다. 이는 시스템 레벨에서 발생하기 때문에 심각한 수준의 오류이다. 따리사 개발자가 미리 예측하여 처리할 수 없기 때문에 어플리케이션에서 오류에 대한 처리를 신경 쓰지 않아도 된다. 예외(exception) : 개발자가 구현한 로직에서 발생한다. 즉, 예외는 발생할 상황을 미리 예측하여 처리할 수 있다. 예외는 개발자가 처리할 수 있기 때문에 예외를 구분하고 그에 따른 처리 방법을 명확히 알고 적용하는 것이 중요하다. -- 예외클래스 구조 그림 checked/unchecked exception checked excepiton unchecked exception 처리여부 반드시 예외를 처리해야 함 명시적인 처리를 하지 않아도 됨 확인시점 컴파..
blocking- system call이 끝날때까지 프로그램은 대기하고 system call이 완료되면 return한다.- wait queue에 들어간다.- 예로 c언어의 scanf()처럼 입력하기 전까지 대기하고 입력 받으면 ruturn한다. non-blocking- system call이 완료되지 않아도 대기하지 않고 return 한다.- wait queue에 들어가지 않는다. blocking, non-blocking 차이- 프로그램의 실행하는 순서 관점으로 보면된다.- 프로그램이 바로 실행할 수 있는 유무가 다르다. ----- synchronous(동기)- system call이 끝날때까지 기다리고 결과물을 가져온다. asynchronous(비동기)- system call이 완료되지 않아도 나중에 ..
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253package org.opentutorials.javatutorials.classninstance; class Calculator2 { static double PI = 3.14; // 클래스 변수인 base가 추가되었다. static int base = 0; int left, right; public void setOprands(int left, int right) { this.left = left; this.right = right; } public void sum() { // 더하기에 base의 값을 포함시킨다. System.o..
ㄴ 출처 : 교보증권 SaaS (Software as a Service)- 클라우드 환경에서 운영되는 어플리케이션 서비스- pc에 설치하지 않고 웹에서 소프트웨어를 빌려 사용할 수 있다.- 예 : 드롭박스, ms오피스 365, 구글 앱스, 네이버 클라우드 등 IaaS (Infrastructure as a Service)- 웹을 통해 서버와 스토리지 등 데이터 센터 자원을 빌려 쓸 수 있는 서비스- 데이터 센터를 구축하는 대신 클라우드를 이용해 필요한 컴퓨팅 인프라를 사용한다.- 서버나 스토리지 구입 비용을 줄일 수 있다.- 예 : aws PaaS (Platform as a Service)- 소프트웨어 서비스를 개발할 때 필요한 플랫폼을 제공하는 서비스- PaaS 운영업체는 개발자가 소프트웨어를 개발할 때..
자바에서 date와 timestamp java.util.Date- 일반적으로 날짜와 시간을 저장할 때 사용한다.- 2018-12-09 16:39:20 java.sql.Timestamp- date보다 정밀한 시간을 요구할 때 사용한다.- 시스템간의 프로세스 시간, 우선순위 정하거나 할 때 밀리세컨드 이하까지 사용하기 위해 사용한다.- 2018-12-09 16:39:20.000000000 --------------------------------------------------------- 데이터베이스에서 date와 timestamp DATE- yyyy-mm-dd DATETIME- yyyy-mm-dd hh:mm:ss- '1000-01-01 00:00:00' to '9999-12-31 23:59:59'- 문자..
- Total
- Today
- Yesterday
- 컨트롤러
- NoClassDefFoundError
- 횡단 관심
- afterCompletion
- exclude-mapping
- aop
- @Autowired
- 스프링 컨테이너
- Class path contains multiple SLF4J bindings
- 검색
- blocking
- ViewResolver
- application context
- setter 인젝션
- 의존성
- aspect oriented programming
- XmlWebApplicationContext
- multiple SLF4J bindings
- LoggingEvent
- #java.lang.NoClassDefFoundError: org/slf4j/event/LoggingEvent삭제
- 의존성 주입
- Controller
- 어노테이션
- servlet context
- java.lang.NoClassDefFoundError: org/slf4j/event/LoggingEvent
- postHandler
- preHandler
- SqlSessionFactoryBean
- handlermapping
- JoinPoint
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |