MyBatis Day_1

StudentMapper.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">
<mapper namespace="com.Greatest.MyBaites.Mapper.StudentMapper">
              <!-- 类似驼峰式命名 -->
		 <!-- <resultMap type="examstudent" id="student">
		     <id column="flow_id" property="FlowId" javaType="int"/>
		     <result  column="IDCard" property="Idcard"/>
		</resultMap> -->
		<!-- <resultMap type="examstudent" id="exam">
		    <id colunm="flow_id" property="FlowId" javaType="int"/>
		    <result column="IDCard" property="IDCard"></result>
		   级联属性
            <result column="bookname" property="library.bookname"/>		
             <association property="library"  javaType="com.Greatest.MyBaites.Model.Library">
		     <id column="flow_id" property="FlowId"/>
		     <result   column="bookname" property="bookname"></result>
		         <result   column="price" property="price"></result>
		    </association>
		</resultMap> -->
		<resultMap type="com.Greatest.MyBaites.Model.examstudent" id="MyExam">
		<id column="flow_id" property="FlowId"/>
		<result  column="bookname" property="library.bookname"/>
		<result column="price" property="library.price"/>
		</resultMap>
		<!-- 链接查询 -->
		<select id="getExam" parameterType="java.lang.String" resultType="examstudent">
		select * from ${table} where Type=13
		</select>
		 <select id="selectLibrary" resultMap="MyExam">
		 select  examstudent.flow_id,examstudent.Type,IDCard,examCard,StudentName,bookname,Price
    		 from examstudent  join library  where examstudent.flow_id=#{FlowId}  and   examstudent.flow_id=library.flow_id
		 </select>
		<select id="selectBolg" resultType="examstudent">
		select * from examstudent where Type=#{Type}
		</select>
		<select id="getStudents" resultType="examstudent">
		select * from examstudent where Type=#{Type}
		</select>
		<select id="getStudentsList" resultType="examstudent">
		select * from examstudent 
		</select>
		<select id="getExamStuMap" resultType="examstudent">
		select * from examstudent 
		</select>
		<select id="getExamStuMapMH" resultType="examstudent">
		 <bind name="StudentName" value="'%'+StudentName+'%'"/>
		SELECT * FROM examstudent WHERE StudentName LIKE #{StudentName}
		</select>
        <insert id="insertBolg">
        insert into examstudent  values(1,12,140525199702115117,955880,"lvqian",02,100)
        </insert>
        <insert id="insertTWO"  parameterType="examstudent">
        insert into examstudent  values(#{FlowId},#{Type},#{IDCard},#{ExamCard},#{StudentName},#{Location},#{Grade})
        </insert>
        <!-- 自动生成主键值    要配置KeyProperty属性-->
        <insert id="insertOne"  parameterType="examstudent" keyProperty="FlowId" useGeneratedKeys="true">
        insert into examstudent(Type,Idcard,ExamCard,StudentName,Location,Grade)    values(#{Type},#{IDCard},#{ExamCard},#{StudentName},#{Location},#{Grade})
        </insert>
        <delete id="dleetethree"  parameterType="int">
        delete   from examstudent where Type=#{Type}
        </delete>
        <update id="updateFour">
        update   examstudent set  IdCard=#{card} where Type=#{type}
        </update>
        <update id="updateFive">
        update   examstudent set  IdCard=#{c} where Type=#{tp}
        </update>
        <!-- 返回自动生成的主键值 -->
        <insert id="insertStu" parameterType="examstudent">
           <selectKey  keyProperty="FlowId" order="AFTER" resultType="java.lang.Integer">
                    select   Last_INSERT_ID()
           <!--  SELECT uuid()  非自增主键的返回 -->
           </selectKey>
         insert into examstudent(Type,Idcard,ExamCard,StudentName,Location,Grade)  values(#{Type},#{IDCard},#{ExamCard},#{StudentName},#{Location},#{Grade})
        </insert>
</mapper> 

mybatis-config.xml
<?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"></properties>
     <settings>
    <!-- 支持驼峰命名 -->
    <setting name="mapUnderscoreToCamelCase" value="true"></setting>
    </settings>
     <typeAliases>
     <!--  为全类名起别名 -->
       <typeAlias type="com.Greatest.MyBaites.Model.examstudent" alias="examstudent"></typeAlias>
     </typeAliases>
      <environments default="development"><!-- 可创建多个数据库配置文件 -->
          <environment id="development">
            <transactionManager type="JDBC"/> <!--  -->
            <dataSource type="POOLED">
            <property name="username" value="${user}"/>
            <property name="password" value="${password}"/>
            <property name="driver" value="${driverClass}"/>
            <property name="url" value="${jdbcUrl}"/>
            </dataSource>
          </environment>
      </environments>
      <mappers>
        <package name="com.Greatest.MyBaites.Mapper"/><!-- 扫描的是接口的包 -->
          <!-- <mapper resource="StudentMapper.xml" /> -->  <!-- 配置文件的名字要与接口的名字一致-->     
       </mappers>
</configuration>

package com.Greatest.MyBaites.TestMain;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

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.junit.Test;

import com.Greatest.MyBaites.Mapper.StudentMapper;
import com.Greatest.MyBaites.Model.examstudent;
public  class TestMyBatis{
	@Test
	public  void  test1() throws Exception{
		String   resource="mybatis-config.xml";
		InputStream  in=Resources.getResourceAsStream(resource);
		SqlSessionFactory  sqlSessionFactory=new SqlSessionFactoryBuilder().build(in);
		SqlSession  sqlsession=sqlSessionFactory.openSession();
	    try{
	    	examstudent  stu=sqlsession.selectOne("com.Greatest.MyBaites.Mapper.StudentMapper.selectBolg",13);
	        System.out.println(stu);
	    }finally{
	    	sqlsession.close();
	    }
	}
	//根据接口的方法名直接查询
	@Test
	public  void  test2() throws Exception{
		String   resource="mybatis-config.xml";
		InputStream  in=Resources.getResourceAsStream(resource);
		SqlSessionFactory  sqlSessionFactory=new SqlSessionFactoryBuilder().build(in);
		SqlSession  sqlsession=sqlSessionFactory.openSession();
		try{
			StudentMapper  stuMapper=sqlsession.getMapper(StudentMapper.class);
			examstudent  stu=stuMapper.getStudents(13);
			System.out.println(stu);
		}finally{
			sqlsession.close();
		}
	}
	@Test
	public  void  testgetmap() throws Exception{
		String resuorce="mybatis-config.xml";
		InputStream   inputstream=Resources.getResourceAsStream(resuorce);
		SqlSessionFactory   sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputstream);
		SqlSession  sqlsession=sqlSessionFactory.openSession();
		StudentMapper  studentMapper=sqlsession.getMapper(StudentMapper.class);
       try{
//    	   Map<String ,examstudent>  examstudent=studentMapper.getExamStuMap();		
//    	 for (Map.Entry<String, examstudent> Exam : examstudent.entrySet()) {
//			System.out.println("Examstudent:  " +Exam.getValue() );
//		}                     //根据Key获取value
//    	   System.out.println(examstudent.get(14));
    	   Map<String ,examstudent> map=studentMapper.getExamStuMapMH();
    	   System.out.println(map.get("a"));
    	   for(Map.Entry<String , examstudent> exams:map.entrySet()){
    		   System.out.println("模糊查询的结果:   "+exams.getValue());
    	   }
       }finally{
    	   sqlsession.close();
       }
	}
	@Test
	public  void  test2_1() throws Exception{
		String   resource="mybatis-config.xml";
		InputStream  in=Resources.getResourceAsStream(resource);
		SqlSessionFactory  sqlSessionFactory=new SqlSessionFactoryBuilder().build(in);
		SqlSession  sqlsession=sqlSessionFactory.openSession();
		try{
			StudentMapper  stuMapper=sqlsession.getMapper(StudentMapper.class);
			List<examstudent>  stu=stuMapper.getStudentsList();
			for (examstudent examstudent : stu) {
				System.out.println(examstudent);
			}
		}finally{
			sqlsession.close();
		}
	}
	//可以选择不同的表  用${}   传值的时候用#{}
	@Test
	public  void  test2_2() throws Exception{
		String   resource="mybatis-config.xml";
		InputStream  in=Resources.getResourceAsStream(resource);
		SqlSessionFactory  sqlSessionFactory=new SqlSessionFactoryBuilder().build(in);
		SqlSession  sqlsession=sqlSessionFactory.openSession();
		try{
			StudentMapper  stuMapper=sqlsession.getMapper(StudentMapper.class);
			  examstudent  stu=stuMapper.getExam("examstudent");
			  System.out.println(stu);
		}finally{
			sqlsession.close();
		}
	}
	@Test
	public  void  test3() throws Exception{
		String   resource="mybatis-config.xml";
		InputStream  in=Resources.getResourceAsStream(resource);
		SqlSessionFactory  sqlSessionFactory=new SqlSessionFactoryBuilder().build(in);
		SqlSession  sqlsession=sqlSessionFactory.openSession();
		try{
			examstudent  stu=sqlsession.selectOne("com.Greatest.MyBaites.Mapper.StudentMapper.insertBolg");
		}finally{
			sqlsession.close();
		}
	}
	@Test
	public  void  test4() throws Exception{
		String   resource="mybatis-config.xml";
		InputStream  in=Resources.getResourceAsStream(resource);
		SqlSessionFactory  sqlSessionFactory=new SqlSessionFactoryBuilder().build(in);
		SqlSession  sqlsession=sqlSessionFactory.openSession(true);//提交事物
		StudentMapper  stuMapper=sqlsession.getMapper(StudentMapper.class);
		try{
			examstudent  examstudent=new examstudent(14,"140525199709269587","955330","钟馗","05",101);
			stuMapper.insertTWO(examstudent);
		}finally{
			sqlsession.close();
		}
	}
	//返回 自动生成的主键值
	@Test
	public  void  test4_1() throws Exception{
		String   resource="mybatis-config.xml";
		InputStream  in=Resources.getResourceAsStream(resource);
		SqlSessionFactory  sqlSessionFactory=new SqlSessionFactoryBuilder().build(in);
		SqlSession  sqlsession=sqlSessionFactory.openSession(true);//提交事物
		try{
			examstudent  examstudent=new examstudent(14,"140525199911265982","955888","刘唐","99",191);
		sqlsession.insert("com.Greatest.MyBaites.Mapper.StudentMapper.insertOne",examstudent);
		System.out.println(examstudent.getFlowId());
		}finally{
			sqlsession.close();
		}
	}
	@Test
	public  void  test4_2() throws Exception{
		String   resource="mybatis-config.xml";
		InputStream  in=Resources.getResourceAsStream(resource);
		SqlSessionFactory  sqlSessionFactory=new SqlSessionFactoryBuilder().build(in);
		SqlSession  sqlsession=sqlSessionFactory.openSession(true);//提交事物
		try{
			examstudent  examstudent=new examstudent(34,"999999999999999999","999888","鲁提辖","99",191);
			sqlsession.insert("com.Greatest.MyBaites.Mapper.StudentMapper.insertStu",examstudent);
			System.out.println(examstudent.getFlowId());
		}finally{
			sqlsession.close();
		}
	}
	@Test
	public  void  test5() throws Exception{
		String   resource="mybatis-config.xml";
		InputStream  in=Resources.getResourceAsStream(resource);
		SqlSessionFactory  sqlSessionFactory=new SqlSessionFactoryBuilder().build(in);
		SqlSession  sqlsession=sqlSessionFactory.openSession(true);
		StudentMapper  stuMapper=sqlsession.getMapper(StudentMapper.class);
		try{
 			stuMapper.dleetethree(13);
		}finally{
			sqlsession.close();
		}
	}
	@Test
	public  void  test6() throws Exception{
		String   resource="mybatis-config.xml";
		InputStream  in=Resources.getResourceAsStream(resource);
		SqlSessionFactory  sqlSessionFactory=new SqlSessionFactoryBuilder().build(in);
		SqlSession  sqlsession=sqlSessionFactory.openSession(true);
		StudentMapper  stuMapper=sqlsession.getMapper(StudentMapper.class);
		try{
			stuMapper.dleetethree(13);
		}finally{
			sqlsession.close();
		}
	}
	@Test
	public  void  test7() throws Exception{
		String   resource="mybatis-config.xml";
		InputStream  in=Resources.getResourceAsStream(resource);
		SqlSessionFactory  sqlSessionFactory=new SqlSessionFactoryBuilder().build(in);
		SqlSession  sqlsession=sqlSessionFactory.openSession(true);
		StudentMapper  stuMapper=sqlsession.getMapper(StudentMapper.class);
		try{
			stuMapper.updateFour("140525199809188897", 10);
		}finally{
			sqlsession.close();
		}
	}
	@Test
	public  void  test8() throws Exception{
		String   resource="mybatis-config.xml";
		InputStream  in=Resources.getResourceAsStream(resource);
		SqlSessionFactory  sqlSessionFactory=new SqlSessionFactoryBuilder().build(in);
		SqlSession  sqlsession=sqlSessionFactory.openSession(true);
		StudentMapper  stuMapper=sqlsession.getMapper(StudentMapper.class);
		try{
			Map  map=new HashMap<>();
			map.put("c", "123456789012345678");
			map.put("tp", 11);
			stuMapper.updateFive(map);
		}finally{
			sqlsession.close();
		}
	}
	@Test
	public  void  Testjilian() throws Exception{
		String resource="mybatis-config.xml";
		InputStream   inputStream=Resources.getResourceAsStream(resource);
		SqlSessionFactory  sqlSessionFactory=new  SqlSessionFactoryBuilder().build(inputStream);
		SqlSession   sqlsession=sqlSessionFactory.openSession();
		StudentMapper  studentMapper=sqlsession.getMapper(StudentMapper.class);
		try{
			examstudent   examstudent=studentMapper.selectLibrary(6);
			System.out.println(examstudent);
		}finally{
			sqlsession.close();
		}
		
	}
	
	
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值