spring
-
토비의 스프링[8] 스프링이란 무엇일까?Spring 2021. 7. 19. 11:08
스프링 프레임워크 자바 엔터프라이즈 개발을 편하게 해주는 오픈소스 경량급 애플리케이션 프레임워크 애플리케이션의 전 영역을 관통하는 일관된 프로그래밍 모델과 핵심 기술을 바탕으로 해서 각 분야의 특성에 맞는 필요를 채워주고 있기 때문에, 애플리케이션을 빠르고 효과적으로 개발할 수가 있다. 이것이 스프링이 애플리케이션 프레임워크라 불리는 이유다. 스프링을 MVC프레임워크 혹은 JDBC/ORM 지원 프레임워크라고 생각하는 것은 스프링이 다루는 일부 영역만 봤기 때문이다. 스프링을 IoC/DI 프레임워크나 AOP 툴이라고 보는 이유는 스프링이 제공하는 핵심 기술에만 주목했기 때문이다. 스프링의 일차적인 존재 목적은 핵심 기술에 담긴 프로그래밍 모델을 일관되게 적용해서 엔터프라이즈 애플리케이션 전 계층과 전 영역..
-
토비의 스프링[4] 예외처리Spring 2021. 1. 27. 06:05
서론 UserDao를 JdbcTemplate로 변경하면서 SQLException이 사라진 이유와 예외처리 및 전환 방법에 대해 알아보자. 예외의 종류와 특징 자바에서 throw를 발생시킬 수 있는 예외는 크게 세 가지가 있다. Error 시스템에 뭔가 비정상적인 상황이 발생했을 경우에 사용된다. 주로 자바 VM에서 발생시키며, 애플리케이션에서 코드로 잡을 수 없으며, 별도로 처리하지 않아도 된다. Exception 과 체크 예외 java.lang.Exception 클래스와 그 서브클래스로 정의되며, 에러와 달리 개발자들이 만든 애플리케이션 코드의 작업중 예외상황이 발생할 경우 사용된다. 체크예외는 throw로 던지던가, catch 로 잡아 주어야 컴파일 에러가 발생하지 않는다. RunTimeExcepti..
-
토비의 스프링[1] 오브젝트와 의존관계Spring 2020. 12. 17. 01:20
서론 관심사 분리하여 DAO를 처리하는 방법과 싱글톤 패턴 및 애플리케이션 컨텍스트에 대해 알아보며, 제어의 역전(IoC)에 대해 알아보자. 관심사 분리 초난감 DAO 처리하기 public class UserDao { public void add(User user) throws SQLException, ClassNotFoundException { Class.forName("com.mysql.cj.jdbc.Driver"); Connection c = DriverManager.getConnection("jdbc:mysql://localhost:3306/sys?serverTimezone=UTC&characterEncoding=UTF-8", "root", "1234"); PreparedStatement ps =..
-
H2 DB 사용하기데이터베이스 2020. 11. 11. 21:36
H2 DB란? H2DB는 자바 기반의 오픈소스 관계형 데이터 베이스 관리 시스템입니다.(RDBMS) H2DB는 서버모드, 인베디드 모드의 인메모리 기능을 지원한다. 무엇보다 간편한 설치(저용량)으로 인하여 사용하기 쉬우며 테스트에 적합하다. DB자체가 매우 라이트하며, 속도도 빠르고 JDBC API 까지 지원하고 있다. 다운하기 h2database.com/html/main.html 다운로드 후 설치 저게 끝이다... 설치 이후 설치경로의 /bin/h2.bat 을 실행시켜주면 된다.(window 기준 linux는 sh 실행) 실행을 할 경우 8082포트에서 가동되며 웹상에서 h2DB를 사용할 수 있게된다.
-
Spring Boot HikariCPSpring 2020. 2. 4. 13:51
DB Connection Pool 쉽게 설명을 하자면 클라이언트가 서버로부터 값을 받길 원하는 과정에서 가장 오래걸리는 시간은 바로 데이터베이스에 처음 연결하는 커넥션 부분이다. 이러한 시간을 줄이기 위해서 Spring Boot 에서는 데이터베이스와 연결된 커넥션을 미리 생성을 해서 풀속에 저장해 두고 있다가 필요할 때 커넥션 풀에서 쓰고 반환하는 DB Connection Pool 인 HikariCP를 사용한다. HikariCP 기존의 사용하던 Tomcat JDBC Connection Pool보다 가볍고(130KB), 빠르고, 단순하고, 안정적이며, zero-overhead를 자랑한다. 설정방법 Spring Boot 2.0이상 버전에서는 HikariCP가 default로 잡혀있기에 pom.xml OR g..
-
Spring Boot DB 오류해결Spring 2020. 1. 20. 15:07
0. Github https://github.com/hodolee246/on-my-own/tree/master/DBConfig 1. 개요 Spring Boot 프로젝트에서 오류 원인 및 해결방법 "Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine a suitable driver class" ("데이터 소스를 구성하지 못하였습니다.") 2. 문제 및 원인 Maven 기준 pom.xml에 데이터베이스를 사용하기 위한 dependency가 존재하는 경우 @SpringBootApplication 에서 자동으로..