728x90

마이바티스 6

[JPA] JPA란 무엇인가?

JPA(Java Persistence API) : 자바 진영의 ORM 기술 표준 그렇다면 ORM은? (Object Relational Mapping) ORM은 이름 그대로 객체와 관계형 데이터베이스를 매핑한다는 뜻. ORM프레임워크는 객체와 테이블을 매핑해서 패러다임의 불일치 문제를 개발자 대신 해결해준다. 왜 JPA를 사용해야 하는가? 1) 생산성 JPA를 사용하면 다음 코드처럼 자바 컬렉션에 객체를 저장하듯이 JPA에게 저장할 객체를 전달하면 된다. INSERT SQL을 작성하고 JDBC API를 사용하는 지루하고 반복적인 일은 JPA가 대신 처리해준다. jpa.persist(member);//저장 Member member = jpa.find(memberId);//조회 그렇기때문에 지루하고 반복적인 ..

JAVA 2021.12.21

[MyBatis] 동적 쿼리 LIKE문 적용하기

MyBatis로 동적 쿼리를 적용해보기, 검색해보니 DB마다 쿼리가 조금씩 다르다고함. LIKE문은 보통 Select * from test where num like 'ABC%' 식으로 특정문자를 가지고 있는 형태를 추출하고자 사용하는 경우가 많음. 일단 MyBatis에서 종류별에 대해 차이를 잠깐 보자면 1) MySQL or MariaDB select * from table_name where column_name like cancat('%', #{keyword}, '%') 2) Oracle select * from table_name where column_name like '%'||#keyword#||'%' 식으로 적용 할 수 있다고한다. 그외 MS-SQL나 PostgreSQL에서도 방법은 다를것이..

[Java]Cannot create PoolableConnectionFactory

스프링에서 db에 접속하는 방법 1. JDBC만을 이용한 접속 이 경우에는 pom.xml를 이용하여 jdbc 작성을 위해 driver를 다운로드 2. Spring에서 datasource를 정의하고 이를 통한 접속 이 경우에 pom.xml과 root-context.xml이 사용 혹은 context-datasource 3. Mybatis를 이용한 접속 - 2번과 사용하는 파일은 똑같지만 sqlSessionFactory 라는 Mybatis 이용시 필요한 객체를 사용하여 db에 접속하는 방법

JAVA 2021.07.27

[Java] Loading xml bean definitions from class path resource

지금 생각해보면 어이가 없지만 꽤나 시간이 오랫동안 사용된 실수.. 실수라고 하기엔 좀 창피한데, Loading xml bean definitions from class path resource 라는 메시지가 계속 나타나는것이었다. 검색을 해보니 SQL문법의 구조상 오류가 있다고했는데, 내 문법은 정상적인 상황.. DB도 잘 연결되어있는데, 도대체 뭐지 뭐지라는 생각을 하고 있었다. 그런데 진짜...ㅎㅎ 나중에 파악했을때 헛 웃음 나와버렸음. INSERT INTO reviseLIST (TITLE, CONTENT, USER_NAME) VALUES (#{title}, #{content}, #{user_name}) MyBatis로 Mapper로 하고 있었고 insert 해주는 녀석의 구문... 제목 내용 작성..

오류 모음집 2021.05.27

[Java] 전자정부프레임워크 MyBatis 예제

WEB-INF/ └ web.xml ( WEB-INF/ ) - 일반 스프링 프로젝트와 동일 - 스프링 설정파일 2개의 xml (contextConfigLocation과 서블릿 컨텍스트 파일)의 경로 지정 - contextConfigLocation: classpath*:META-INF/spring/context-*.xml - 서블릿 컨텍스트 파일 : /WEB-INF/spring/dispatcher-*.xml WEB-INF/spring/ └ dispatcher-servlet.xml ( /WEB-INF/spring/ ) - 일반 스프링 프로젝트와 동일 - Pagination 기능을 위한 2개의 빈 설정 - PaginationManager, imageRender META-INF/spring/ └ context-c..

JAVA 2020.09.01

[KITRI]한국정보기술연구원 웹 자바 플랫폼을 활용한 기업 솔루션 개발자 과정(95일) - MyBatis

JavaScript와 jQuery에 이은 MyBatis 진도. 하루하루 진도가 빠르기 때문에 모든걸 다 이해하는건 힘들어서 복습을 통해 조금이라도 기억을 유지하는것으로 목표를 두고 있다. 일단 MyBatis는 JDBC를 사용하기 편리하게 소스코드(java)와 SQL(xml)을 분리하여 개발 할 수 있게 해주는 프레임워크다. 흔히 ORM이라고 말하는 객체와 관계를 연결해주는 개념(Object / Relation / Mapping) 에서 객체와 테이블 시스템(RDBMS)을 변형 및 연결해주는 작업으로 이중 가장 많이 사용하는 ORM이 바로 MyBatis와 Hibernate(JPA)가 대표적이다. 하나하나씩 배울수록 해야할일들이 많아지지만 유지보수가 편리해진다는 프레임워크의 특성을 잘 나타내고 있는듯하다. S..

728x90