My Batis
2023. 12. 19. 11:24ㆍDaily Codig Reminder
JDBC_MyBatis_Ver_3
import com.dto.Dept;
import com.service.OracleMyBatisService;
public class OralceMyBatisMain {
public static void main(String[] args) {
// SqlSession sess = MySqlSessionFactory.getSqlSession();
// System.out.println(sess);
OracleMyBatisService service = new OracleMyBatisService();
// int num = service.update(new Dept(99, "영업","서울"));
// System.out.println("update 갯수 : "+num);
Dept dept = service.selectByDeptno(99);
System.out.println(dept);
}
}
package com.service;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import com.config.MySqlSessionFactory;
import com.dao.OracleMyBatisDAO;
import com.dto.Dept;
public class OracleMyBatisService {
OracleMyBatisDAO dao;
public OracleMyBatisService() {
super();
dao= new OracleMyBatisDAO();
}
public int insert (Dept dept) {
SqlSession session = MySqlSessionFactory.getSqlSession();
int num=0;
try {
num= dao.insert(session, dept);
session.commit();
} finally {
session.close();
}return num;
}
public int update (Dept dept) {
SqlSession session = MySqlSessionFactory.getSqlSession();
int num=0;
try {
num= dao.update(session, dept);
session.commit();
} finally {
session.close();
}return num;
}
public Dept selectByDeptno (int deptno) {
SqlSession session = MySqlSessionFactory.getSqlSession();
Dept dept =null;
try {
dept= dao.selectByDeptno(session, deptno);
session.commit();
} finally {
session.close();
}return dept;
}
public List<Dept> selectAll(){
SqlSession session = MySqlSessionFactory.getSqlSession();
List<Dept> list = null;
try {
list = dao.selectAll(session);
} finally {
session.close();
}return list;
}
}
package com.dao;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import com.dto.Dept;
public class OracleMyBatisDAO {
public List<Dept> selectAll(SqlSession session){
List<Dept> list = session.selectList("selectAll");//mapper id지점 mapper sql 사용
System.out.println("in dao : "+ list);
return list;
}
public int insert (SqlSession session, Dept dept) {
int num = session.insert("deptInsert", dept);
System.out.println("추가된 레코드 ========="+num);
return num;
}
public int update (SqlSession session, Dept dept) {
int num = session.update("deptUpdate", dept);
System.out.println("업데이트 갯수 ========="+num);
return num;
}
public Dept selectByDeptno (SqlSession session, int deptno) {
Dept dept = session.selectOne("selectByDeptno", deptno);
return dept;
}
}
<?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.mybatis.example.BlogMapper">
<insert id="deptInsert" parameterType="com.dto.Dept" >
insert into dept values ( #{deptno}, #{dname},#{loc})
</insert>
<select id = "selectAll" resultType ="com.dto.Dept">
select deptno, dname, loc from dept
</select>
<select id = "selectByDeptno" parameterType="int" resultType ="com.dto.Dept">
select deptno, dname, loc from dept where deptno =#{deptno}
</select>
<update id="deptUpdate" parameterType="com.dto.Dept">
update dept set dname= #{dname}, loc= #{loc} where deptno= #{deptno}
</update>
</mapper>
JDBC_MyBatis_Ver_5
import java.util.List;
import com.dto.Dept;
import com.service.OracleMyBatisService;
public class OralceMyBatisMain {
public static void main(String[] args) {
OracleMyBatisService service = new OracleMyBatisService();
service.insert(new Dept(99,"aa","서울"));
List<Dept> list = service.selectAll();
for (Dept dept : list) {
System.out.println(dept);
}
}
}
import java.util.List;
import com.dto.Dept;
import com.service.OracleMyBatisService;
public class OralceMyBatisMain2 {
public static void main(String[] args) {
OracleMyBatisService service = new OracleMyBatisService();
int num = service.deptRecordCount();
System.out.println("레코드 갯수는 num==="+num);
List<Dept> list = service.selectAll();
for (Dept dept : list) {
System.out.println(dept);
}
}
}
package com.dao;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import com.dto.Dept;
public class OracleMyBatisDAO {
public List<Dept> selectAll(SqlSession session){
List<Dept> list = session.selectList("com.dept.DeptMapper2.selectAll");//mapper id지점 mapper sql 사용
System.out.println("in dao : "+ list);
return list;
}
public int insert (SqlSession session, Dept dept) {
int num = session.insert("com.dept.DeptMapper.deptInsert", dept);
System.out.println("추가된 레코드 ========="+num);
return num;
}
public int deptRecordCount(SqlSession session) {
int num = session.selectOne("com.dept.DeptMapper2.deptRecordCount");
return num;
}
}
package com.service;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import com.config.MySqlSessionFactory;
import com.dao.OracleMyBatisDAO;
import com.dto.Dept;
public class OracleMyBatisService {
OracleMyBatisDAO dao;
public OracleMyBatisService() {
super();
dao= new OracleMyBatisDAO();
}
public List<Dept> selectAll(){
SqlSession session = MySqlSessionFactory.getSqlSession();
List<Dept> list = null;
try {
list = dao.selectAll(session);
} finally {
session.close();
}return list;
}
public int insert (Dept dept) {
SqlSession session = MySqlSessionFactory.getSqlSession();
int num=0;
try {
num= dao.insert(session, dept);
session.commit();
} finally {
session.close();
}return num;
}
public int deptRecordCount () {
SqlSession session = MySqlSessionFactory.getSqlSession();
int num=0;
try {
num= dao.deptRecordCount(session);
session.commit();
} finally {
session.close();
}return num;
}
}
<?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="com.dept.DeptMapper2">
<select id = "selectAll" resultType ="com.dto.Dept">
select deptno, dname, loc from dept
order by 1
</select>
<select id = "deptRecordCount" resultType ="int">
select count(*) from dept
</select>
</mapper>
JDBC_MyBatis_Ver_6
import java.util.HashMap;
import java.util.List;
import com.dto.Dept;
import com.service.OracleMyBatisService;
public class OralceMyBatisMain3 {
public static void main(String[] args) {
OracleMyBatisService service = new OracleMyBatisService();
HashMap<String, Integer> map = new HashMap<>();
map.put("key1", 20);
map.put("key2", 30);
List <Dept> list = service.selectByHashMap(map);
for (Dept dept : list) {
System.out.println(dept);
}
}
}
package com.dao;
import java.util.HashMap;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import com.dto.Dept;
public class OracleMyBatisDAO {
public List<Dept> selectAll(SqlSession session){
List<Dept> list = session.selectList("com.dept.DeptMapper2.selectAll");//mapper id지점 mapper sql 사용
System.out.println("in dao : "+ list);
return list;
}
public int deptRecordCount(SqlSession session) {
int num = session.selectOne("selectByDeptno");
return num;
}
public HashMap selectByDeptnoHashMap(SqlSession session, int deptno) {
HashMap map = session.selectOne("selectByDeptnoHashMap", deptno);
return map;
}
public List<Dept> selectByHashMap(SqlSession session, HashMap<String, Integer> map) {
List<Dept> list = session.selectList("selectByHashMap", map);
return list;
}
}
package com.service;
import java.util.HashMap;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import com.config.MySqlSessionFactory;
import com.dao.OracleMyBatisDAO;
import com.dto.Dept;
public class OracleMyBatisService {
OracleMyBatisDAO dao;
public OracleMyBatisService() {
super();
dao= new OracleMyBatisDAO();
}
public List<Dept> selectAll(){
SqlSession session = MySqlSessionFactory.getSqlSession();
List<Dept> list = null;
try {
list = dao.selectAll(session);
} finally {
session.close();
}return list;
}
public int deptRecordCount () {
SqlSession session = MySqlSessionFactory.getSqlSession();
int num=0;
try {
num= dao.deptRecordCount(session);
session.commit();
} finally {
session.close();
}return num;
}
public HashMap selectByDeptnoHashMap(int deptno) {
SqlSession session = MySqlSessionFactory.getSqlSession();
HashMap map =null;
try {
map= dao.selectByDeptnoHashMap(session, deptno);
session.commit();
} finally {
session.close();
}return map;
}
public List<Dept> selectByHashMap(HashMap<String, Integer> map) {
SqlSession session = MySqlSessionFactory.getSqlSession();
List<Dept> list = null;
try {
list = dao.selectByHashMap(session, map);
} finally {
session.close();
}return list;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<properties resource="jdbc.properties"/>
<typeAliases >
<typeAlias type="com.dto.Dept" alias = "Dept"></typeAlias>
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<!-- db 연결 4가지 정보 -->
<dataSource type="POOLED">
<property name="driver" value="${oracle.jdbc}"/>
<property name="url" value="${oracle.url}"/>
<property name="username" value="${oracle.userid}"/>
<property name="password" value="${oracle.passwd}"/>
</dataSource>
</environment>
</environments>
<!-- Mapper.xml의 경로 등록 (Mapper.xml파일이 존재해야함 )-->
<mappers>
<mapper resource="DeptMapper.xml"/>
<mapper resource="DeptMapper2.xml"/>
</mappers>
</configuration>
<?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="com.dept.DeptMapper2">
<select id="selectAll" resultType="Dept">
select deptno, dname, loc from dept order by 1
</select>
<select id="deptRecordCount" resultType="int">
select deptno, dname, loc from dept order by 1
</select>
<select id="selectByDeptHashmap" resultType="hashmap" parameterType="int">
select * from dept where deptno=#{deptno}
</select>
<select id="selectByHashMap" parameterType="hashmap" resultType="Dept">
select deptno, dname, loc from dept where deptno between #{key1} and #{key2}
</select>
</mapper>
JDBC_MyBatis_Ver_7
import java.util.HashMap;
import java.util.List;
import com.dto.Dept;
import com.service.OracleMyBatisService;
public class OralceMyBatisMain4 {
public static void main(String[] args) {
OracleMyBatisService service = new OracleMyBatisService();
int deptno =10;
HashMap<String, Integer> map = new HashMap<String, Integer>();
// map.put("key1", 20);
map.put("deptno", deptno);
List <Dept> list = service.selectDynamicDeptno(map);
for (Dept dept : list) {
System.out.println(dept);
}
}
}
import java.util.HashMap;
import java.util.List;
import com.dto.Dept;
import com.service.OracleMyBatisService;
public class OralceMyBatisMain3 {
public static void main(String[] args) {
OracleMyBatisService service = new OracleMyBatisService();
HashMap<String, Integer> map = new HashMap<>();
map.put("key1", 20);
map.put("key2", 30);
List <Dept> list = service.selectByHashMap(map);
for (Dept dept : list) {
System.out.println(dept);
}
}
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Set;
import javax.annotation.processing.SupportedSourceVersion;
import com.dto.Dept;
import com.service.OracleMyBatisService;
public class OralceMyBatisMain4_1 {
public static void main(String[] args) {
OracleMyBatisService service = new OracleMyBatisService();
List<HashMap> list = service.selectAllHashmap();
System.out.println(list);
// List<Dept> list = service.selectAll();
// for (Dept dept : list) {
// System.out.println(dept);
// }
// System.out.println();
// for (HashMap hash : list) {
// Set<String> keys = hash.keySet();
// for (String s : keys) {
// System.out.print(s+" "+hash.get(s));
// }
// System.out.println("\n----------------");
//
// for (HashMap dept : list) {
// BigDecimal dno = (BigDecimal)dept.get("DEPTNO");
// int deptno = dno.intValue();
// String dname = (String)dept.get("DNAME");
// String loc = (String)dept.get("LOC");
// System.out.println(deptno+"\t"+dname+"\t"+loc);
// }
// System.out.println("=======================");
for (HashMap dept : list) {
Set<String> keys = dept.keySet();
int deptno =0;
String dname="";
String loc ="";
for (String key : keys) {
if (key.equals("DEPTNO")) {
deptno = ((BigDecimal)dept.get(key)).intValue();
}
if (key.equals("DNAME")) {
dname = (String)dept.get(key);
}
if (key.equals("LOC")) {
loc = (String)dept.get(key);
}
}Dept ndept = new Dept (deptno, dname, loc);
System.out.println(ndept);
System.out.println("----------------------------------");
}
}
}
package com.dao;
import java.util.HashMap;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import com.dto.Dept;
public class OracleMyBatisDAO {
// public List<Dept> selectAll(SqlSession session){
// List<Dept> list = session.selectList("com.dept.DeptMapper2.selectAll");//mapper id지점 mapper sql 사용
// System.out.println("in dao : "+ list);
// return list;
// }
public int deptRecordCount(SqlSession session) {
int num = session.selectOne("selectByDeptno");
return num;
}
public HashMap selectByDeptnoHashMap(SqlSession session, int deptno) {
HashMap map = session.selectOne("selectByDeptnoHashMap", deptno);
return map;
}
public List<Dept> selectByHashMap(SqlSession session, HashMap<String, Integer> map) {
List<Dept> list = session.selectList("selectByHashMap", map);
return list;
}
public List<Dept> selectDynamicDeptno(SqlSession session, HashMap<String, Integer> map) {
System.out.println(map.get("deptno"));
List<Dept> list = session.selectList("com.dept.DeptMapper2.selectDynamicDeptno", map);
return list;
}
public List<HashMap> selectAllHashmap(SqlSession session) {
List<HashMap> list = session.selectList("com.dept.DeptMapper2.selectAll2");//mapper id지점 mapper sql 사용
return list;
}
}
package com.service;
import java.util.HashMap;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import com.config.MySqlSessionFactory;
import com.dao.OracleMyBatisDAO;
import com.dto.Dept;
public class OracleMyBatisService {
OracleMyBatisDAO dao;
public OracleMyBatisService() {
super();
dao= new OracleMyBatisDAO();
}
// public List<Dept> selectAll(){
// SqlSession session = MySqlSessionFactory.getSqlSession();
// List<Dept> list = null;
// try {
// list = dao.selectAll(session);
// } finally {
// session.close();
// }return list;
// }
public List<HashMap> selectAllHashmap(){
SqlSession session = MySqlSessionFactory.getSqlSession();
List<HashMap> list = null;
try {
list = dao.selectAllHashmap(session);
} finally {
session.close();
}return list;
}
public HashMap selectByDeptnoHashMap(int deptno) {
SqlSession session = MySqlSessionFactory.getSqlSession();
HashMap map =null;
try {
map= dao.selectByDeptnoHashMap(session, deptno);
session.commit();
} finally {
session.close();
}return map;
}
public List<Dept> selectByHashMap(HashMap<String, Integer> map) {
SqlSession session = MySqlSessionFactory.getSqlSession();
List<Dept> list = null;
try {
list = dao.selectByHashMap(session, map);
} finally {
session.close();
}return list;
}
public List<Dept> selectDynamicDeptno(HashMap<String, Integer> map) {
SqlSession session = MySqlSessionFactory.getSqlSession();
List<Dept> list = null;
try {
list = dao.selectDynamicDeptno(session, map);
} finally {
session.close();
}return list;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<properties resource="jdbc.properties"/>
<typeAliases >
<typeAlias type="com.dto.Dept" alias = "Dept"></typeAlias>
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<!-- db 연결 4가지 정보 -->
<dataSource type="POOLED">
<property name="driver" value="${oracle.jdbc}"/>
<property name="url" value="${oracle.url}"/>
<property name="username" value="${oracle.userid}"/>
<property name="password" value="${oracle.passwd}"/> <!-- value 틀린경우-->
</dataSource>
</environment>
</environments>
<!-- Mapper.xml의 경로 등록 (Mapper.xml파일이 존재해야함 )-->
<mappers>
<mapper resource="DeptMapper.xml"/>
<mapper resource="DeptMapper2.xml"/> <!-- mapper 등록안한경우-->
</mappers>
</configuration>
<?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="com.dept.DeptMapper2">
<select id="selectAll" resultType="Dept">
select deptno, dname, loc from dept order by 1
</select>
<select id="deptRecordCount" resultType="int">
select deptno, dname, loc from dept order by 1
</select>
<select id="selectByDeptHashmap" resultType="hashmap" parameterType="int">
select * from dept where deptno=#{deptno}
</select>
<select id="selectByHashMap" parameterType="hashmap" resultType="Dept">
select deptno, dname, loc from dept where deptno between #{key1} and #{key2}
</select>
<select id="selectDynamicDeptno" parameterType="hashmap" resultType="Dept">
select deptno, dname, loc
from dept
<if test="deptno != null">
where deptno= #{deptno}
</if>
</select>
<select id="selectAll2" resultType="hashmap">
select deptno, dname, loc from dept order by 1
</select>
</mapper>
'Daily Codig Reminder' 카테고리의 다른 글
javascript (0) | 2023.12.24 |
---|---|
My batis2 (1) | 2023.12.23 |
JDBC 2 (0) | 2023.12.19 |
JDBC (0) | 2023.12.14 |
자바 IO (0) | 2023.12.14 |