发表于: 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集合的知识。
评论