国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

MyBatis.3.CRUD

2019-11-11 02:09:40
字體:
來源:轉載
供稿:網友
<?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.dao.DeptMapper">	<select id="selectOne" parameterType="int"		resultType="org.mybatis.example.dao.Dept">			select * from dept where deptno=#{id}	</select>	<insert id="insertDept" parameterType="org.mybatis.example.dao.Dept"	useGeneratedKeys="true" keyPRoperty="dept">		insert into dept(dname,loc)		values(			   #{dname,jdbcType=VARCHAR},			   #{loc,jdbcType=VARCHAR})	</insert> 	<update id="updateDept" parameterType="org.mybatis.example.dao.Dept">		update dept set dname=#{dname},loc=#{loc}					where deptno=#{deptno}	</update>	<delete id="deleteDept" parameterType="java.lang.Integer">		delete from dept where deptno=#{id}	</delete></mapper>
package org.mybatis.example.dao;public interface DeptMapper {	public Dept selectOne(int id);	public int insertDept(Dept dept);	public int updateDept(Dept dept);	public int deleteDept(int id);}
import java.io.IOException;import java.io.Reader;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 org.mybatis.example.dao.Dept;import org.mybatis.example.dao.DeptMapper;public class Test2 {	public static void main(String[] args) throws IOException {		String resource="mybatisConfig.xml";		Reader reader=Resources.getResourceAsReader(resource);		SqlSessionFactory sqlMapper=new SqlSessionFactoryBuilder().build(reader);				SqlSession session=sqlMapper.openSession();				try {			DeptMapper mapper=session.getMapper(DeptMapper.class);			//1.查詢//			Dept dept=mapper.selectOne(2);//			System.out.println(dept.getDname());			//2.插入操作			Dept dept=new Dept();			dept.setDname("張沅湲");			dept.setLoc("鄭州");			mapper.insertDept(dept);			session.commit();//實現增加 修改 刪除			//3.更新操作;//			Dept dept=new Dept();//			dept.setDeptno(3);//			dept.setDname("張沅湲");//			dept.setLoc("湖南");//			mapper.updateDept(dept);//			session.commit();			//4.刪除操作;//			int i=mapper.deleteDept(3);//			session.commit();//			System.out.println(i);		} catch (Exception e) {			e.printStackTrace();		}finally{			session.close();		}			}}

復雜的查詢,在項目開發中,可以使用一個工具類來封裝這些復雜的步驟:

package org.mybatis.example.dao;import java.io.Reader;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;public class SqlSessionFactoryUtil {	private static SqlSessionFactory factory;	public SqlSessionFactoryUtil() {}	static{		Reader reader=null;				try {			reader=Resources.getResourceAsReader("mybatisConfig.xml");			factory=new SqlSessionFactoryBuilder().build(reader);		} catch (Exception e) {			e.printStackTrace();		}finally{			try {				if(reader!=null)reader.close();			} catch (Exception e2) {				e2.printStackTrace();			}		}	}		public static SqlSession getSqlSession(){		return factory.openSession();	}}DeptMapper接口的完全代碼:

package org.mybatis.example.dao;import java.util.List;public interface DeptMapper {	public Dept selectOne(int id);	public int insertDept(Dept dept);	public int updateDept(Dept dept);	public int deleteDept(int id);	public List<Dept>selectAllDepts();	public List<Dept>selectByCriteria(String deptName);}1.查詢所有部門信息參考代碼;

<select id="selectAllDepts" resultType="org.mybatis.example.dao.Dept" >		select deptno,dname,loc from dept	</select>測試代碼;

import java.util.List;import org.apache.ibatis.session.SqlSession;import org.mybatis.example.dao.Dept;import org.mybatis.example.dao.DeptMapper;import org.mybatis.example.dao.SqlSessionFactoryUtil;public class Test3 {	public static void main(String[] args) {		SqlSession session=SqlSessionFactoryUtil.getSqlSession();		try {			DeptMapper mapper=session.getMapper(DeptMapper.class);			List<Dept>depts=mapper.selectAllDepts();			for(Dept dept:depts){				System.out.println("部門名稱:"+dept.getDname());			}		} catch (Exception e) {			e.printStackTrace();		}finally{			session.close();		}	}}2.按條件查詢,映射文件做以下修改,新增條件為模糊查詢方法:

<!-- 按條件查詢 -->	<select id="selectByCriteria" parameterType="java.lang.String"		resultType="org.mybatis.example.dao.Dept">		select deptno,dname,loc from dept		where dname like '%${_parameter}%'		</select>測試代碼

import java.util.List;import org.apache.ibatis.session.SqlSession;import org.mybatis.example.dao.Dept;import org.mybatis.example.dao.DeptMapper;import org.mybatis.example.dao.SqlSessionFactoryUtil;//按照條件進行查詢;public class Test4 {	public static void main(String[] args) {		SqlSession session=SqlSessionFactoryUtil.getSqlSession();		try {			DeptMapper mapper=session.getMapper(DeptMapper.class);			List<Dept>depts=mapper.selectByCriteria("網絡部");						for(Dept dept:depts){				System.out.println("部門名稱:"+dept.getDname());			}		} catch (Exception e) {			e.printStackTrace();		}finally{			session.close();		}	}}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 瑞安市| 卓资县| 正定县| 兰溪市| 修文县| 平昌县| 澎湖县| 塔河县| 鹤庆县| 专栏| 潮州市| 河西区| 鲜城| 台湾省| 特克斯县| 万州区| 昂仁县| 清原| 宜川县| 张家港市| 韶山市| 甘南县| 永吉县| 忻城县| 蓬溪县| 登封市| 静安区| 涪陵区| 宁河县| 克拉玛依市| 兰坪| 丹凤县| 阜新市| 松潘县| 白城市| 东丽区| 镇坪县| 株洲市| 漾濞| 天峨县| 伊通|