[JDBC] 데이터베이스 연결
·
Server/Java
데이터베이스 연결 ConnectionConst public abstract class ConnectionConst { public static final String URL = "jdbc:h2:tcp://localhost/~/test"; public static final String USERNAME = "sa"; public static final String PASSWORD = ""; } 데이터베이스에 접속하는데 필요한 기본 정보를 작성하는 추상 클래스. 데이터베이스 URL, 데이터베이스 USERNAME, 데이터베이스 PASSWORD를 작성하여 저장하였다. 변경되는 값이 아니므로 상수로 선언. DBConnectionUtil import lombok.extern.slf4j.Slf4j; import ja..
[Convention] 깃 커밋 컨벤션
·
Server/ETC.
깃 커밋 컨벤션 우아한 테크 코스 과제에서 '커밋 메시지 컨벤션'가이드를 참고하여 커밋 메시지를 작성할 것을 요구하였다. 그간 나중으로 미뤄오고 대충 날짜에 무엇을 했는지만 작성하였던 나의 깃 커밋 컨벤션을 고칠 수 있는 좋은 기회라고 생각했다. # 그동안 처참했던 나의 커밋 기록 예 221107 프로그래머스 완주하지 못한 선수 221107 패스 표현식 수정 커밋 메세지 형식 커밋 메세지의 구조는 제목, 본문, 꼬리말로 이루어져 있습니다. 각 줄을 100자를 넘을 수 없습니다. (): 제목 제목 줄에는 변경 사항에 대한 간결한 설명만을 작성한다. 종류 feat : 새로운 기능 추가 fix : 버그 수정 docs : 문서 수정 style : 코드 포맷팅, 세미콜론 누락 등 refactor : 코드 리팩터링..
[Docker] 수업용 빠른 명령어 정리
·
Server/Infra
해당 게시글은 본인의 수업 용도로 작성되었습니다. 추후에 자세하게 기술하도록 하겠습니다. Docker Docker 설치 sudo su - mkdir git cd git git clone https://github.com/Kyeongrok/docker_minikube_kubectl_install cd docker_minikube_kubectl_install/ sh docker_install.sh Mysql 연동 docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=12345678 -d mysql nginx 연동 docker run -p 80:80 -d nginx maven 설치(sudo 상태) apt update apt install maven Dockerfile 제작 vim..
[JDBC] JDBC와 최신 데이터 접근 기술
·
Server/Java
JDBC와 최신 데이터 접근 기술 최근에는 JDBC를 직접 사용하기보다는 JDBC를 편리하게 사용하는 다양한 기술이 존재 대표적으로 SQL Mapper와 ORM기술로 나눌 수 있다. JDBC 직접 사용 SQL Mapper SQL Mapper 장점 SQL 응답 결과를 객체로 편리하게 변환 JDBC의 반복 코드 제거 단점 : 개발자가 직접 SQL을 직접 작성해야 함. 대표 기술 : 스프링 JdbcTemplate, MyBatisORM 기술 ORM 기술
[JDBC] JDBC의 이해
·
Server/Java
JDBC 등장 배경 애플리케이션을 개발할 때 중요한 데이터는 대부분 데이터베이스에 저장하게 된다. 웹, 앱 ---> 애플리케이션 서버 ---> DataBase 커넥션 연결 : 주로 TCP/IP를 사용해서 커넥션을 연결 SQL 전달 : 애플리케이션 서버는 DB가 이해할 수 있는 SQL을 연결된 커넥션을 통해 DB에 전달 결과 응답 : DB는 전달된 SQL을 수행하고 그 결과를 응답. 애플리케이션 서버는 응답 결과를 활용 문제는 각각의 데이터베이스마다 커넥션을 연결하는 방법, SQL을 전달하는 방법, 결과를 응답받는 방법이 모두 다르다는 점! 닮았다는 MySQL과 ORACLE만 봐도 문법이 미세하게 차이난다는 점을 알 수 있다. 여기서 문제가 두 가지 발생한다 다른 종류의 데이터 베이스로 변경할 시 애플리케..
[Jdbc] queryForObject와 Update의 차이점, queryForObject 변경사항
·
Server/Java
queryForObejct와 Update의 차이점 실습을 진행하던 도중, 상황마다 queryForObject()와 Update()를 따로 사용한다는 것을 발견했다. 어떤 상황에 두 메소드를 분류하여 사용해야 하는지 궁금하여 찾아보고 공부하게 되었다. queryForObject 설명을 듣고 보니 해당 메소드명을 얼마나 잘 지었는지 알 수 있었다. query for object 쿼리를 실행했을 때, Select문을 사용하였을 때 하나의 객체 결괏값이 나올 때 사용하는 메서드였다. public Hospital findById(int id) throws ClassNotFoundException, SQLException { String sql = "select * from nation_wide_hospital w..
[스스로 이해해보는 스프링] 책임의 분리
·
Server/Spring&Spring Boot
책임의 분리 토비의 스프링을 공부하다보면 계속 나오는 단어가 보이는데 그것이 바로 관심, 책임이다. 관심이란 무엇이고, 책임은 무엇이기에 계속해서 나눠야하는 것이며 분리시켜주어야하는 것일까? 비전공자, 개발 초보의 입장에서는 계속해서 물음표가 이어졌다. 토비의 스프링 책을 보면서 처음부터 다시 정리해보자. 1. 우리는 맨 처음 UserDao에 직접 getConnection이라는 메서드를 만들어 DB와 연결을 시도했다. public class UserDao { /*중복된 코드를 독립적인 메소드로 만들어 중복 제거*/ private Connection getConnection() throws ClassNotFoundException, SQLException { Class.forName("com.mysql.c..
[토비의 스프링] 스프링의 IoC - 애플리케이션 컨텍스트의 동작 방식
·
Server/Spring&Spring Boot
스프링의 IoC 애플리케이션 컨텍스트의 동작 방식 오브젝트 팩토리에서 사용했던 IoC 원리를 그대로 적용하는 데 애플리케이션 컨텍스트를 사용하는 이유는 범용적이고 유연한 방법으로 IoC기능을 확장하기 위해서이다. 오브젝트 팩토리로 직접 사용했을 때와 비교해서 애플리케이션 컨텍스트를 사용했을 때 얻을 수 있는 장점 클라이언트를 구체적인 팩토리 클래스를 알 필요가 없다. 오브젝트 팩토리가 아무리 많아져도 이를 알아야 하거나 직접 사용할 필요가 없다. 일관된 방식으로 원하는 오브젝트를 가져올 수 있다. 애플리케이션 컨텍스트는 종합 IoC 서비스를 제공해준다. 오브젝트가 만들어지는 방식, 시점과 전략을 다르게 가져갈수도 있다. 자동생성, 오브젝트에 대한 후처리, 정보의 조합, 설정방식의 다변화, 인터셉팅 등 오..
코드플리
'Server' 카테고리의 글 목록 (16 Page)