Web/Servlet && Spring
-
[Spring] @Transactional사용법 ( 트랜잭션: transaction )Web/Servlet && Spring 2019. 8. 29. 21:35
Transaction이란? DBMS에서 수행하는 작업의 단위이다. ACID 원자성, 일관성, 격리성, 지속성 여러 작업이 동시에 실행이 되어야 할때, 즉 한트랜잭션에 3가지 작업이 있다고 가정하고 1가지 작업에서 에러가 나면 이 트랜잭션은 중지 되어야 한다. 그래서 Spring에서 트랜잭션을 구현할 수 있다. 트랜잭션 설정방법 servlet-context.xml 내용 추가 servlet-context.xml 에서 Namespaces에서 tx체크 후 태그 하나 더 추가 StudentDAO.java 메소드 추가 private JdbcTemplate jdbcTemplate; // DataSource는 sql것으로 임포트 // 세터 주입방식 @Autowired public void setDataSource(Da..
-
[Spring] mysql 연결 에러 해결 (deprecated)Web/Servlet && Spring 2019. 8. 29. 15:32
스프링 실행시 하단에 deprecated가 되었다고 콘솔창에 떴다. 아래와 같은 내용었다. Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary. 해결방법은 servlet-context.xml파일의 db를 연결하는 value를 첫번째줄에서 두번째 줄로 변경한다. com.mysql.cj.jdbc.Driver"> 버젼이 업데이트 되면서 경로가 변경되었다.
-
[Spring] Logger 객체 사용법Web/Servlet && Spring 2019. 8. 29. 09:24
logging - 기록을 남기는것 - 앱 실행중 발생하는 이벤트나 다른사용자의 SW간의 메세지를 기록한 파일 Log Level의 6단계 FATAL - 아주 심각한 ERROR - 요청 처리중 에러 WARN - 향후 시스템 에러 원인이 될수 있는 INFO - 상태변경과 같은 정보성 메세지 DEBUG - 디버그 용도 TRACE - 디버그 보다 상세한 정보 이클립스에서는 SYSOUT으로 출력도 가능하지만 Logger클래스를 사용해 로그를 남기는게 좋다. 왜냐하면 Logger클래스는 에러의 단계를 지정할 수 있기 때문이다. 또 sysout이 많아지면 프로그램이 조금 느려질 수 있다. 사용법 MyLoggingAdvice.java 생성 Logger클래스는 import org.slf4j.Logger; //Advice는..
-
[Spring] ContextLoaderListener에러Web/Servlet && Spring 2019. 8. 27. 17:25
Spring java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener 에러 jresystemLibrarary의 버젼이 잘못 되었다. java1.8로 버전 수정후 정상작동 프로젝트 우클릭 - Build path - Configure Build Path - JRE System Library - Edit JavaSE-1.8로 변경
-
[Spring] mariadb 와 연결하기Web/Servlet && Spring 2019. 8. 25. 21:16
JDBC - Java에서 제공하는 API로 Java에서 사용되는 모든 데이터 접근 기반 기술 DB연결을 여닫고 예외 처리하는 코드 실행하는 것이 번거롭다. 반면에... Spring JDBC는 DB사용 중 저수준의 세부사항을 담당한다(ex. SQL문실행, 예외처리, 트랜잭션처리, 연결 닫기 등) - JDBC Template (Spring에서 제공하는 class) - 개발자는 핵심적인 것만 담당(SQL문) 나머지는 프레임워크에서 담당하겟다. - Spring설정 파일에 DataSource를 설정하고 공유된 DataSource Bean을 DAO클래스에 의존성 주입하여 사용 DAO(Data Access Object) - 실제로 DB에 접근하는 객체, CRUD를 사용 DTO(Data Transfer Object) ..