发表于: 2017-08-22 23:49:41
1 1106
今天完成的任务
1.在师兄的指导下将mybatis配置完成,现在说一下自己的理解
配置mybatis需要两个xml文件
1)第一个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="com.how2java.pojo"/>
</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://localhost:3306/how2java?characterEncoding=UTF-8"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/how2java/pojo/Category.xml"/>
</mappers>
</configuration>
2.第二个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.how2java.pojo">
<select id="S" resultType="Category">
select * from category_
</select>
</mapper>
select id中,书写一个名称作为测试类调用指向,作为session()方法的参数
select resultType里面声明了一个类,并且把sql的数据返回到实体类中。
也就是数据是以sql——实体类——测试类的走向
值得注意的一点是如果直接使用sql输入到session方法里面,程序会报错
public class Category {
private int id;
private String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Category{" + "id=" + id + ", name='" + name + '}';
}
}
实体类里面是返回sql的方法,但是还是不太懂toString()方法的运用,明天得多看一下
ublic class TestMybatis {
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();
List<Category> cs=session.selectList("S");
System.out.println(cs);
}
}
测试类里String resource = "mybatis-config.xml";链接数据
而
List<Category> cs=session.selectList("S");
则是把sql语句返回的数值,保存到cs当中
关于List<>的使用方法也还是不太理解,明天得好好看看
明天要做的事
1.吃透如何配置mybatis
2.学习怎么运用toString和List
3.对基础的掌握还是太差了,还得多补补
遇到的问题
今天在师兄的指导下,算是知道怎么配置mybatis,自己的基础太差,还是有点费力,总感觉很多东西还是没吃透,希望今后能多学习一下吧..
收获
今天闭门造车一天也没有什么进展,但是多亏师兄指导,当然自己太笨也让师兄气的不少2333,在这里感谢一下师兄,真是不余遗力的帮助我,也希望以后尽快掌握基础知识,很多东西都是没有基础很难理解..
评论