MyBatis的配置文件

来源:互联网 发布:smtp.gmail.com 端口 编辑:程序博客网 时间:2024/05/17 18:01

核心配置文件

<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration>    <!-- 配置属性         先加载内部属性,再加载外部属性,如果有同名属性会覆盖。    -->    <properties resource="db.properties">        <property name="jdbc.driver" value="com.mysql.jdbc.Driver"/>        <property name="jdbc.url" value="jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf-8"/>        <property name="jdbc.username" value="hello"/>    </properties>    <!-- 配置pojo别名 -->    <typeAliases>        <!-- <typeAlias type="cn.itheima.mybatis.po.User" alias="user"/> -->        <!-- 扫描包的形式创建别名,别名就是类名,不区分大小写 -->        <package name="cn.fcf.mybatis.po"/>    </typeAliases>    <!-- 和spring整合后 environments配置将废除-->    <environments default="development">        <environment id="development">        <!-- 使用jdbc事务管理-->            <transactionManager type="JDBC" />        <!-- 数据库连接池-->            <dataSource type="POOLED">                <property name="driver" value="${jdbc.driver}" />                <property name="url" value="${jdbc.url}" />                <property name="username" value="${jdbc.username}" />                <property name="password" value="${jdbc.password}" />            </dataSource>        </environment>    </environments>    <!-- 加载mapper文件 -->    <mappers>        <!-- resource基于classpath查找 -->        <!-- <mapper resource="sqlmap/user.xml"/> -->        <!-- <mapper resource="mapper/mapper.xml"/> -->        <!-- 根据接口名称加载mapper文件        要求:1、mapper映射文件和接口在同一个目录下            2、mapper映射文件的名称和接口名称一致。            3、class就是接口的权限定名         -->        <!-- <mapper class="cn.fcf.user.mapper"/> -->        <!-- 使用扫描包的形式加载mapper文件 -->        <package name="cn.fcf.user.mapper"/>    </mappers></configuration>

映射文件

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!-- namespace是命名空间,作用sql语句的隔离,后面还有重要作用 #{}作用就是占位符,相当于jdbc的“?”parameterType:查询的参数类型resultType:查询结果的数据类型,如果时候pojo应该给全路径。--><mapper namespace="cn.fcf.user.mapper.UserMapper">    <select id="getUserById" parameterType="int" resultType="cn.fcf.domain.User">        SELECT * FROM `user` WHERE id=#{id};    </select>    <!-- 如果查询结果返回list, resultType设置为list中一个元素的数据类型        ${}字符串拼接指令    -->    <select id="getUserByName" parameterType="string" resultType="cn.fcf.domain.User">        SELECT * FROM `user` WHERE username LIKE '%${value}%'    </select>    <!-- 参数时候pojo时,#{}中的名称就是pojo的属性 -->    <insert id="insertUser" parameterType="cn.fcf.domain.User">        <!-- keyProperty:对于pojo的主键属性             resultType:对应主键的数据类型            order:是在insert语句执行之前或者之后。            如果使用uuid做主键,应该先生成主键然后插入数据,此时应该使用Before        -->        <selectKey keyProperty="id" resultType="int" order="AFTER">            SELECT LAST_INSERT_ID()        </selectKey>        INSERT into user (username,birthday,sex,address)         values (#{username}, #{birthday}, #{sex}, #{address})    </insert>    <!-- 删除用户 -->    <delete id="deleteUser" parameterType="int">        DELETE from user WHERE id=#{id1}    </delete>    <!-- 修改用户信息 -->    <update id="updateUser" parameterType="cn.fcf.domain.User">        update user set username=#{username} WHERE id=#{id}    </update></mapper>
原创粉丝点击