<?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" >
<mapper namespace="org.joonzis.mybatis.green"> <!-- 경로 표기법이 클래스명 표기법처럼 사용된다! -->
<!--
mapper에서는 ?(물음표)를 사용할 수 없다
대신 전달한 파라미터의 이름은 #{}을 통해 적는다
sql문 뒤에 ;(세미콜론)이 없다
-->
<!--
각 태그 속성
1. id : id를 통해서 sql문을 선택 (임의로 결정 가능)
2.parameterType : 매개변수의 타입
3.resultType :리턴 데이터 타입(풀 패키지로 작성)
-insert,update,delete의 경우 무조건 int 형식이기 떄문에 작성할 필요가 없다
-->
<!-- 1.전체 검색 -->
<select id="select_all" resultType="org.joonzis.ex.GreenVO">
<!--위에 세가지 속성 외우기 1.페이지 지정 2.결과 타입(테이블구조에 따라서 달라진다) 3.parameterType=""가 문자열이면string을 넣어준다-->
select * from green order by idx
</select>
<!-- 한개의 데이터 검색 -->
<select id="view_one" resultType="org.joonzis.ex.GreenVO" parameterType="String">
select * from green where id=#{id}
</select>
<!-- 2.회원 추가 -->
<insert id="insert" parameterType="org.joonzis.ex.GreenVO"><!-- vo로 전달받았으니까 GreenVO로 넣어준다 -->
insert into green values(green_seq.nextval, #{id}, #{pw}, #{name}, #{age}, #{addr}, sysdate)
</insert>
<!-- 3.회원 삭제 -->
<delete id="delete" parameterType="org.joonzis.ex.GreenVO">
DELETE FROM green WHERE id=#{id} and pw=#{pw}
</delete>
<!-- 5.회원 수정 -->
<update id="update" parameterType="org.joonzis.ex.GreenVO">
update green set pw=#{pw} ,name=#{name} ,age=#{age} ,addr=#{addr} where idx=#{idx}
</update>
</mapper>