JDBC & MyBatis - [DB 연동]

728x90

26강. [오라클 데이터베이스 설치 ] 

[데이터베이스 설치]

-JDBC 프로그래밍 실습을 위해 데이터베이스를 설치

-본 과정에서는 오라클 데이터베이스 11g 버전 사용

 
cmd 창 열고 설치 정상인지 확인 

정상 설치 완료.


27강. [SQL Developer 설치]

[SQL Developer]

-오라클 데이터베이스를 GUI 환경에서관리할 수 있도록 제공되는 도구

-Java 8버전에서만 동작함 (이것보다 상위버전에서는 동작X)

       <DB] ORA-12505 에러 해결

-> 접속 전 포트 번호 cmd 창에서 명령어 : lsnrctl service 실행 후 PORT 번호 확인하고

포트 번호 일치시켜준 뒤 접속하면 해결됨.

<정상 설치완료>


28강. [Spring JDBC]

[Spring JDBC]

-Spring FrameworkJDBC 프로그래밍을 위해 jdbcTemplate 클래스를 제공함

-JdbcTemplate 클래스는 SQL 쿼리문 손쉽게 구현할 수 있도록 내부적으로 구현되어 있다.

[라이브러리 추가] : JdbcTemplate클래스 사용을 위해 pom.xml파일에 다음 라이브러리 추가

<dependency>
           <groupId>org.springframework</groupId>
           <artifactId>spring-jdbc</artifactId>
           <version>5.1.9.RELEASE</version>
</dependency>

[Mapper 클래스]

-Select문으로 데이터 가져올 때 어떤 컬럼의 값을 bean 어디에 주입할 ㄹ것인지 결정해줘야 하는데, 이 역할을 하는 클래스가 Mapper 클래스이다.

@Component
public class MapperClass implements RowMapper<JdbcBean>{

	@Override
	public JdbcBean mapRow(ResultSet rs, int rowNum) throws SQLException {
		// TODO Auto-generated method stub
		JdbcBean bean = new JdbcBean();
		bean.setInt_data(rs.getInt("int_data"));
		bean.setStr_data(rs.getString("str_data"));
		
		return null;
	}
}

[JdbcDAO.java]

@Component
public class JdbcDAO {

	//JDBC 관리 객체를 주입받는다.
	@Autowired
	private JdbcTemplate db;
	
	//Mapper 주입받기
	@Autowired
	private MapperClass mapper;
	
	
	//저장
	public void insert_data(JdbcBean bean) {
		String sql = "insert into jdbc_table(int_data, str_data) values(?, ?)";
		db.update(sql, bean.getInt_data(), bean.getStr_data());
		
	}
	//가져오기
	public List<JdbcBean> select_data(){
		String sql = "select int_data, str_data from jdbc_table";
		List<JdbcBean> list = db.query(sql, mapper);
		return list;
	}
	//수정
	public void update_data(JdbcBean bean) {
		String sql = "update jdbc_table set str_data = ? where int_data = ?";
		db.update(sql, bean.getStr_data(), bean.getInt_data());
	}
	//삭제
	public void delete_data(int int_data) {
		String sql = "delete from jdbc_table where int_data = ?";
		db.update(sql, int_data);
	}
}


29강. [MyBatis]

[MyBatis]

-Spring Framework에서 제공하는 JDBC 라이브러리를 보다 쉽게 작업할 수 있도록 만든 라이브러리.

-Mapper 역할 확장하여 쿼리문 작성을 모두 Mapper에서 할 수 있게 지원함

-Spring Framework의 대표적인 JDBC 라이브러리이다.

[라이브러리 추가]

<dependency>
     <groupId>org.mybatis</groupId>
     <artifactId>mybatis</artifactId>
     <version>3.5.2</version>
</dependency>
<dependency>
     <groupId>org.mybatis</groupId>
     <artifactId>mybatis-spring</artifactId>
     <version>2.0.2</version>
</dependency>

[SpringFramework 완강]

완강

 

[참고] - SpringFramework 개발자를 위한 실습을 통한 입문 과정

728x90