mybatis的基本配置

mybatis的配置


mybatis的配置主要有两个,一个是config配置,一个是mapper配置文件也就是映射文件。

config配置

配置文件具体如下

<?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下是主要的配置文件
<configuration>
    <settings>
    //lazyLoadingEnabled是用来配置延迟加载的,默认值是false也就死关闭
        <setting name="lazyLoadingEnabled" value="false"/>
        /*aggressiveLazyLoading是用来设置侵入式加载的,默认值是true
        侵入式加载指的是将关联查询和主查询绑定到了一起,即主查询执行则关联查
        询就执行*/
        <setting name="aggressiveLazyLoading" value="true"/>
       //logImpl是用来配置日志的设置,配置它在运行是可以看到组合好的sql语句
        <setting name="logImpl" value="STDOUT_LOGGING" />
    </settings>
    //typeAliases是用来起别名的标签
    <typeAliases>
    //使用package标签就可以让本包下的所有类重命名,且重命名的名称为此类的类名
    不区分首字母大小写
        <package name="priv.ze.mybatis.domain"/>
    </typeAliases>
    //environments标签的作用是来配置数据库的,其中可以存放多个数据库的连接
    <environments default="development">
    //environment主要就是用来配置单个数据库的连接
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/db?serverTimezone=GMT%2B8&amp;useSSL=false"/>
                <property name="username" value="root"/>
                <property name="password" value="00312000"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
    //mapper标签是用来配置映射文件的
   <mapper resource="config/mapper/StudentMapper.xml"/>
   //谁用package标签来进行配置的话,必须要让xml文件,也就是mapper文件与接口写在同一目录下,且名称必须相同,且必须使用mapper代理
        <package name="priv.ze.mybatis.mapper"/>
    </mappers>
</configuration>

mapper配置

mapper中主要写了sql语句以及一些调用sql语句的属性

<?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="priv.ze.mybatis.mapper.StudentMapper">
<resultMap  type="student" id="studentResultMap">
    <id column="ID" property="stuID"/>
    <result column="name" property="stuName"/>
</resultMap>
<select id="getByStuID"  resultType="student">
    select * from student
    <where>
        <if test="stuID!=null and stuID!=''">
            and stuID=#{stuID}
        </if>
    </where>
</select>
<select id="getAll" resultType="priv.ze.mybatis.domain.Student">
    select stuName,tel from student
</select>
<insert id="save" parameterType="priv.ze.mybatis.domain.Student">
    insert into student (stuName,stuID,tel,major,direction,state) values (#{stuName},#{stuID},#{tel},#{major},#{direction},#{state})
</insert>
<delete id="deleteone">
    delete from administrator where tel=#{d}
</delete>
<update id="updateone" parameterType="priv.ze.mybatis.domain.Student1" >
    update administrator set tel = #{tel} where stuID = #{stuID}
</update>
<!--对resultMap的使用-->
<select id="findByMajor" resultMap="studentResultMap">
    select stuID ID,stuName name from student where major=#{major}
</select>
</mapper>

mapper配置中主要牵扯到了一些属性,例如resultMap,resultType,parameterType。
resultMap主要是用来定义返回的包装类型的。
resultType相对于resulrMap功能稍微少一些,不能返回集合。
parameterType主要就是传参数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值