xml,可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。
学习xml的作用有很多,在学习mybatis框架中需要使用到xml文档,在这个过程中xml的主要作用就是配置数据库链接,统一的管理数据存取格式及保存数据之间的映射关系。
具体为web项目中conf.xml文档与对应类的xml文档的建立(备注:需要注意xml文档的配置)。在xml文件中我们可以做到连接数据库,在这里需要注意到字符串编码的统一,一般均为UTF-8。然后把相应类对应的xml文档配置到conf.xml中。在相应类对应的xml文件中你就可以自定义你的sql语句了,当然不要忘记类与xml文件的映射。数据库的操作业务最基本的便是增删改查,而在xml文件中也正是使用与之相对应的insert,delete,update,select标签。
xml文档的结构:
最基本的便是xml必要声明和xml元素。
xml声明:xml文档规范了每份文档必须要有一份声明,而且必须放在第一行,其中指明了文档版本,字符集等相应的文档信息。
例:
<?xml version="1.0" encoding="UTF-8"?>
xml元素:每份xml文档中都包含了一个或者多个xml元素,它就像xml文档中的一个个工具,而我们需要做的就是填充这些工具。
例:
<mapper namespace="com.ntqingniao.mybatis.mapping.UserMapper">
<!-- 在select标签中编写查询的SQL语句, 设置select标签的id属性为getUser,id属性值必须是唯一的,不能够重复.使用parameterType属性指明查询时使用的参数类型,resultType属性指明查询返回的结果集类型
resultType="com.ntqingniao.mybatis.entity.User"就表示将查询结果封装成一个User类的对象返回 User类就是users表所对应的实体类 -->
<!-- 根据id查询得到一个user对象 -->
<insert id ="add" parameterType="com.ntqingniao.mybatis.entity.User" >
insert into users (name,age) values(#{name},#{age})
</insert>
<select id="getById" parameterType="int" resultType="com.ntqingniao.mybatis.entity.User">
select * from users where id = #{id}
</select>
<select id="getAll" resultType="com.ntqingniao.mybatis.entity.User">
select * from users
</select>
<delete id="deleteById" parameterType="int" >
delete from users where id = #{id}
</delete>
<update id="update" parameterType="com.ntqingniao.mybatis.entity.User" >
update from users set name=#{name},age=#{age} where id = #{id}
</update>
</mapper>
处理指令:在XML文档中经常会出现与XML必要声明相类似的指令,这也是XML处理程序必须扫描的指定,被称为处理指令(Process Instrument,PI)。处理指令的格式也是以“<?”开始,并以“?>”结束。
DTD声明:DTD称为文档类型定义(Document TypeDeclaration),主要用于确定XML文档的合法性。也就是说,在DTD中对XML文档中要出现的每一个标记与其属性应加以定义,明确文档中标记之间的关系、标记数据类型以及标记数量的多少等内容。 文档类型定义是以<!DOCTYPE…>的结构在XML文档中出现。
例:
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">