mybatis对表进行增删改查

前面我们学了mybatis的简单的入门程序,今天我们就来讲一下,怎么运用mybatis进行增删改查的操作。

还有要记得导入我们需要的jar包哦!如果不记得了,可以去看我前面的文章或者百度,都是可以的。
我们先看一下我文件的路径,我们现在要操作的dept表,要用到的文件有:

Dept.java:dept表的字段类
DeptMapper.xml映射文件
Demo02.java运行代码
mybatis.xml配置文件

mybatis对表进行增删改查_第1张图片

最开始,我们先把配置文件给配好了

mybatis.xml代码





	
		
		
			
			
			
			
		
	




	


添加数据

修改xml文件








	insert into dept(deptno,dname,loc) values(#{deptno},#{dname},#{loc})


 

测试代码

    String resource = "mybatis.xml";//配置文件的路径
	Reader reader = null;
	SqlSessionFactory sqlMapper = null;
	SqlSession session = null;
	try {
		//读取配置文件
		reader = Resources.getResourceAsReader(resource);
		sqlMapper = new SqlSessionFactoryBuilder().build(reader);
		//获取SqlSession
		session = sqlMapper.openSession();
		Dept dept = new Dept(70,"中国","地球中心");
		//第一个参数是映射文件的namespace+id,第二个是的参数
		session.insert("mapper.DeptMapper.insertDept", dept);
		//提交事務
		session.commit();
		System.out.println(dept);
	} catch (IOException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}finally {
		if(session!=null){
			session.close();
		}
	}

你熟悉了之后可以把代码进行优化,简写。

注意:
插入使用session的insert()方法
对于增删改操作都必须提交,即调用session的commit()方法,因为他要提交到数据库中

修改数据

修改xml文件








	update dept set loc=#{loc} where deptno = #{deptno}


 

测试代码

String resource = "mybatis.xml";//配置文件的路径
	Reader reader = null;
	SqlSessionFactory sqlMapper = null;
	SqlSession session = null;
	try {
		//读取配置文件
		reader = Resources.getResourceAsReader(resource);
		sqlMapper = new SqlSessionFactoryBuilder().build(reader);
		//获取SqlSession
		session = sqlMapper.openSession();
		session.update("mapper.DeptMapper.updateDept", new Dept(80, "IT", "中国"));
		session.commit();
	} catch (IOException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}finally {
		if(session!=null){
			session.close();
		}
	}

修改数据,也一定要记得提交哦,因为他要提交到数据库中

删除数据

修改xml文件








	delete from dept where deptno=#{id}


 

测试代码

String resource = "mybatis.xml";//配置文件的路径
	Reader reader = null;
	SqlSessionFactory sqlMapper = null;
	SqlSession session = null;
	try {
		//读取配置文件
		reader = Resources.getResourceAsReader(resource);
		sqlMapper = new SqlSessionFactoryBuilder().build(reader);
		//获取SqlSession
		session = sqlMapper.openSession();
		session.delete("mapper.DeptMapper.deleteDeptByDeptno", 50);
		session.commit();
	} catch (IOException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}finally {
		if(session!=null){
			session.close();
		}
	}

删除也要记得提交哦!因为他要提交到数据库中。

查询单条数据

修改xml文件










测试代码

String resource = "mybatis.xml";//配置文件的路径
	Reader reader = null;
	SqlSessionFactory sqlMapper = null;
	SqlSession session = null;
	try {
		//读取配置文件
		reader = Resources.getResourceAsReader(resource);
		sqlMapper = new SqlSessionFactoryBuilder().build(reader);
		//获取SqlSession
		session = sqlMapper.openSession();
		Dept dept = session.selectOne("mapper.DeptMapper.selectDeptByDeptno", 20);
		System.out.println(dept);
	} catch (IOException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}finally {
		if(session!=null){
			session.close();
		}
	}

查询数据可以不用提交哦!

查询所有数据

修改xml文件










 

测试代码

String resource = "mybatis.xml";//配置文件的路径
	Reader reader = null;
	SqlSessionFactory sqlMapper = null;
	SqlSession session = null;
	try {
		//读取配置文件
		reader = Resources.getResourceAsReader(resource);
		sqlMapper = new SqlSessionFactoryBuilder().build(reader);
		//获取SqlSession
		session = sqlMapper.openSession();
		List depts = session.selectList("mapper.DeptMapper.selectAll",null);
		for (Dept dept : depts) {
			System.out.println(dept);
		}
	} catch (IOException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}finally {
		if(session!=null){
			session.close();
		}
	}

查询数据的时候就可以不用提交哦!

你可能感兴趣的:(mybatis对表进行增删改查)