发表于: 2018-03-23 23:37:54

1 518


今天完成的事情:

1.学习Mybatis并用单元测试实现了连接数据库增删改查

    ①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>
   <typeAliases>
       <package name="chen"/>
   </typeAliases>
   <environments default="development">
       <environment id="development">
           <transactionManager type="JDBC"/>
           <dataSource type="POOLED">
               <property name="driver" value="com.mysql.jdbc.Driver"/>
               <property name="url" value="jdbc:mysql://118.126.115.97:3306/mydb"/>
               <property name="username" value="ROOT"/>
               <property name="password" value="ChinaNo1!"/>
           </dataSource>
       </environment>
   </environments>
   <mappers>
       <mapper resource="chen/Students.xml"/>
   </mappers>
</configuration>

    ②Students.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="chen">
   <insert id="addStudents" parameterType="Students">
       INSERT INTO students (name, qq, major, school, schoolnum, diarylink, wish)
VALUES (#{name}, #{qq}, #{major}, #{school}, #{schoolnum}, #{diarylink}, #{wish})
</insert>

   <delete id="deleteStudents" parameterType="Students">
       DELETE FROM students WHERE id = #{id}
</delete>
   <update id="updateStudents" parameterType="Students">
       UPDATE students SET wish=#{wish} WHERE id=#{id}
</update>
   <select id="getStudents" parameterType="_int" resultType="Students">
       SELECT * FROM students WHERE id=#{id}
</select>
   <select id="listStudents" resultType="Students">
       SELECT * FROM students
</select>
</mapper>

    ③Students具体类,和之前的一样就不贴了


    ④单元测试实现增删改查代码

package chen;

import java.io.IOException;
import java.io.InputStream;
import java.util.List;

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 chen.Students;

public class TestMybatisTest {

public static void main(String[] args) throws IOException {
       String resource = "mybatis-config.xml";
       InputStream inputStream = Resources.getResourceAsStream(resource);
       SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
       SqlSession session = sqlSessionFactory.openSession();

       Students s = new Students();
//        
     s.setName("新新学生");
       s.setQq(123456733);
       s.setSchool("哈尔滨佛学院");
       s.setSchoolnum("css119");
       s.setMajor(3);
       s.setDiarylink("www.hafo.com");
       s.setWish("学不好只能吃泡面");
       session.insert("addStudents",s);
//        
//        s.setId(25);
//        session.delete("deleteStudents", s);
//        
       Students s1 = session.selectOne("getStudents",22);
       s1.setWish("我是修改后的学生");
       session.update("updateStudents", s1);
//        
//        System.out.println(s1.getName() + s1.getId() + s1.getWish());
       listAll(session);

       session.commit();
       session.close();

   }

private static void listAll(SqlSession session) {
List<Students> ls = session.selectList("listStudents");
       for (Students s : ls) {
System.out.print(s.getName() + "\t");
           System.out.print(s.getWish() + "\t");
           System.out.println(s.getId());
       }
}
}

     ⑤执行结果:

明天计划的事情:

1.到这里task1-17到task1-20算是初步完成了,还有一些不熟练的地方需要复习

2.继续后面的任务完成task1-21到task1-24(这里由于我一直是用腾讯云服务器部署的数据库,所以task1-22第一天就完成了)

3.补充javase后面的知识

遇到的问题:

1.刚开始xml文件里配置的内容不理解,导致弄错,后来慢慢解决了


收获:

1.学习了mybatis的基本使用,说一下我的理解:mybatis-config.xml用于连接数据库,也就是JDBC的作用,Students.xml用于执行SQL代码,Students具体类用于封装记录执行SQL语句需要用到的数据,将Students对象装在listStudents集合,用于输出。

2.了解了一点javase集合的知识。


返回列表 返回列表
评论

    分享到