发表于: 2017-06-15 23:55:01
2 999
mybatis
任务1
今天补充的是xml基础知识,以及看视频学mybatis的配置文件解意。
xml
XML 是可扩展标记语言(Extensible Markup Language)的缩写,
XML的家族庞大 ,应用也及其广泛。下面通过一张图来简单了解XML的应用范
应用
声明
视频中介绍写XML代码的工具软件是EditPlus。
在XML的声明
<?xml version="1.0" encoding ="ufg-8"?>
其中的version表示XML 版本,encoding 表示XML文件使用的字符编码方法。
结构
什么又是根元素呢?XML内容必须包含在一个单一元素中,这个单一元素称为根。一个
元素也叫节点,一个元素中有两个标签,一个是开始标签,另外一个是结束标签。
如下:book就是根元素
<book>
<author>
<name>王璐</name>
<email>15732534138@163.com</email>
</author>
</book>
如代码中的<name><email>就是元素。需要注意的是,元素是区分大小写的。
实体引用
上述代码中的<>尖括号是标签组成部分,但是如果我们所要传递的字符也包含尖括
号等符号呢?
我们就需要实体引用了。
事物总有两面性,既然存在实体引用能够使用特殊字符,那么会不会存在让实体引
用失效的标签。
那就是CDATA:在特殊标签 CDATA 下,所有标签和实体引用都被忽略,被XML当做
字符数据看待。
Spring在进行XML配置时,如果属性值包含了一个XML的特殊符号,因此我们特意在属性值外添加了一个<![CDATA[ ]]>的XML特殊处理标签,<![CDATA[ ]]>的作用是让XML解析器将标签中的字符串当作普通的文本对待,以防止某些字符串对XML格式造成破坏。来看一个例子:
- <bean id="car" class="com.baobaotao.attr.Car">
- <property name="maxSpeed">
- <value>200</value>
- </property>
- <property name="brand">①
- <value><![CDATA[红旗&CA72]]></value>
- </property>
mybatis里面是有一个叫SqlSession的东西来传送对象和数据库中的操作的。要是有一个SqlSession,就必须得有一个SqlSessionFactory,因为平时SqlSession去发送sql执行回收结果的时候不是只有一个对象的,是要多个的。所以要有多个SqlSession。这个时候SqlSessionFactory就是来创建SqlSession的。那么还有有个先决条件来创建SqlSessionFactory,就是之前会有一个xml配置文件根绝配置来产生SqlSessionFactory。他是SqlSessionFactoryBuilder。最后在SqlSession通过mapper去执行发送sql,并返回我们得到的结果。这里就是我们认识mybatis的核心部分
在这里我能理解了核心部分的意思,但是一直不能配置好自己的文件,导致老是找不到我的mapper配置文件。估计是取名和路径的原因,但是不知道具体在哪个部位,无法知道原因。不知道他们到底要怎么进行命名。明天将仔细问问师兄该怎么做。
今天的收获:能深入了解SqlSession,学习了基本xml的基本知识和一些简单的操作,以及在mybatis官网山下载中文档案找到关于mybatis的操作和相关信息。
明日计划:必须当天完成mybatis成功执行,继续学习mybatis方面的基础知识,找到一个原因。
遇到的问题:
1.一直无法找到mapper配置文件
原因个人认为是在一些配置和包创建的名字上没有对应以及是路径的问题,当然是猜的,不切实际
2.不知道在
<select id="selectTable1ByID" resultType="com.mybatis.entity.User" parameterType="long" >
List<Table1> cs=session.selectList("listCategory");
这些东西到底怎么杨定义,有的人说在parameterType需要配置一个类型,我不知道这个类型是什么,以为是配置在表中字段的类型,有说int,有说long的。select id="" 这个地方到底该怎么用,这也是没有搞懂的。 resultType是不是要设置绝对路径也不太懂的
3.不知道怎么去设置一个简单的完整的项目路径,有的人一个文件一个包。有的人实体类和xml一个包。
真的好难,卡死了,要往回看的东西好多
评论