๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์Šคํ”„๋ง Spring/๐Ÿงถ ์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ Spring

๋งˆ์ด๋ฐ”ํ‹ฐ์Šค(Mybatis)๋ฅผ ์ด์šฉํ•œ insert, delete, update, select

by Meteora_ 2021. 6. 22.
728x90

MyBatisMapper.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
  PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  
<!-- Query๋ฌธ -->

<mapper namespace="mybatis.MyBatisMapper">

<!-- 
	<insert, delete, select, update		id="์™ธ๋ถ€์—์„œ ํ˜ธ์ถœํ•  ๋ฌธ์ž์—ด"
		parameterType="object"
		resultType="object">
		
		์ฟผ๋ฆฌ	#{ ์™ธ๋ถ€๋กœ๋ถ€ํ„ฐ ๋“ค์–ด์˜ค๋Š” ๊ฐ’ } - core tag
			${ ์ˆซ์ž }
			
	</insert, delete, select, update>	
 -->

<insert id="add" parameterType="dto.MemberDto">
	INSERT INTO MEMBERDTO(ID, PWD, EMAIL)
	VALUES( #{ id }, #{ pwd }, #{ email } )
</insert> 

<delete id="remove" parameterType="java.lang.String">
	DELETE FROM MEMBERDTO
	WHERE ID=#{ id }
</delete>



<update id="up" parameterType="dto.MemberDto">
	UPDATE MEMBERDTO SET PWD="ddd" WHERE ID=#{ id }
</update>




<!-- select one -->
<select id="find" parameterType="java.lang.String"
	resultType="dto.MemberDto">
        SELECT * FROM MEMBERDTO
        WHERE ID=#{ id } <!-- #{} == val -->
</select> 
<!-- select list -->
<select id="allData" resultType="dto.MemberDto">
 SELECT * FROM MEMBERDTO
 
</select>


<!-- bbs search  -->
<!-- <select id="bbsSearch" parameterType="dto.BbsParam"
	resultType="dto.BbsDto">
	SELECT*
	FROM BBS
	WHERE 1=1
	<if test="s_category== 'title'">
		AND TITLE LIKE '%'||#{keyword}||'%'
	</if>
	<if test="s_category== 'content'">
		AND CONTENT LIKE '%'||#{keyword}||'%'
	</if>
	<if test="s_category== 'id'">
		AND ID=#{keyword}
	</if>
	
</select> -->


<select id="bbsSearch" parameterType="dto.BbsParam"
	resultType="dto.BbsDto">
	SELECT*
	FROM BBS
	WHERE 1=1
	<choose>
	<when test="s_category== 'title'">
		AND TITLE LIKE '%'||#{keyword}||'%'
	</when>
	<when test="s_category== 'content'">
		AND CONTENT LIKE '%'||#{keyword}||'%'
	</when>
	<when test="s_category== 'id'">
		AND ID=#{keyword}
	</when>
	
	<!-- <otherwise>
	else
	</otherwise>
	 -->
	</choose>
</select>





</mapper>

MainClass.java

package main;

import java.io.InputStream;
import java.util.Iterator;
import java.util.List;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import dto.BbsDto;
import dto.BbsParam;
import dto.MemberDto;

public class MainClass {
	public static void main(String[] args) throws Exception {
		
		// mybatis ์„ค์ •ํŒŒ์ผ์„ ์ฝ์–ด๋“ค์ธ๋‹ค
		InputStream is = Resources.getResourceAsStream("mybatis/config.xml");
		
		// SqlSessionFactory ๊ฐ์ฒด๋ฅผ ์ทจ๋“
		SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
		
		// SqlSession ๊ฐ์ฒด๋ฅผ ์ทจ๋“ 
		SqlSession session = factory.openSession();	// session <- ์‹ค์„ธ
		
		
		/*
		MemberDto dto = new MemberDto("ccc", "111", "a1@a");
		
		//MemberDto dto = new MemberDto("aaa", "111", "a1@a");
		
		int n = session.insert("add", dto);
		if(n > 0) {
			session.commit();
			System.out.println("์ถ”๊ฐ€ ์„ฑ๊ณต!");
		}else {
			session.rollback();
			System.out.println("์ถ”๊ฐ€ ์‹คํŒจ");
		}
		*/
		
		//MemberDto ddto = new MemberDto("aaa", "111", "a1@a");
		
		/*
		String id ="aaa";
		int d = session.delete("remove","aaa");
		
		
		
		
		if(d > 0) {
			session.commit();
			System.out.println("์‚ญ์ œ ์„ฑ๊ณต!");
		}else {
			session.rollback();
			System.out.println("์‚ญ์ œ ์‹คํŒจ");
		}
		*/
		
		
		/*
		MemberDto sdto = new MemberDto("aaa", "777", "a1@a");
		int s = session.update("update", sdto);
		if(s > 0) {
			session.commit();
			System.out.println("์ˆ˜์ • ์„ฑ๊ณต!");
		}else {
			session.rollback();
			System.out.println("์ˆ˜์ • ์‹คํŒจ");
		}
		*/
		
		/*
		//Select
		String id="aaa";
		MemberDto dto = session.selectOne("find", id);
		System.out.println(dto.toString());
		*/
		
		
		
		//select
		/*
		List<MemberDto> list = session.selectList("allData");
		for (MemberDto m: list) {
			System.out.println(m.toString());
		
			*/
			
			
		//bbs select
		BbsParam param = new BbsParam("title","์ฃผ์‹์ด์•ผ๊ธฐ");
		List<BbsDto> list = session.selectList("bbsSearch", param);
		for (BbsDto bbs: list) {
			System.out.println(bbs.toString());
		}	
			
			
			
		
		

	}
}

BbsParam.java

 

package dto;

import java.io.Serializable;

public class BbsParam implements Serializable{
	private String s_category;
	private String keyword;
	
	public BbsParam() {
		
	}

	public BbsParam(String s_category, String keyword) {
		super();
		this.s_category = s_category;
		this.keyword = keyword;
	}

	public String getS_category() {
		return s_category;
	}

	public void setS_category(String s_category) {
		this.s_category = s_category;
	}

	public String getKeyword() {
		return keyword;
	}

	public void setKeyword(String keyword) {
		this.keyword = keyword;
	}
	
	
}

๋Œ“๊ธ€