简单application下实现mybatis的使用

mybatis简单介绍:

它是一种ORM(object relational mapping)框架,即对象关系映射。意在根据对象和数据库记录之间的联系,实现操作对象就达到数据库的持久化存储(存储到硬盘)。

案例:做一个简单的图书表的增删改查,只涉及dao层

1.不管是xml配置还是注解配置,都需要这以下几个步骤。

(1)导入相应架包

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <!--3.3.0没有sessionFactory-->
    <mybatis.version>3.2.8</mybatis.version>

</properties>

<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>3.8.1</version>
        <scope>test</scope>
    </dependency>
    <!--mybatis-->
    <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
        <version>${mybatis.version}</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.29</version>
    </dependency>
</dependencies>
<!--此配置指不忽略java文件夹下的所有xml文件和属性文件,十分重要-->
<build>
    <resources>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
            <filtering>false</filtering>
        </resource>
    </resources>
</build>

(2)添加pojo类,即领域类,与数据库表对应,有基本属性(字段),get、set方法,toString()

(3)在resources文件夹下创建mybatis的配置文件,主要配置数据源(数据库参数),和相关mapper.xml的注册(如果基于xml配置)。

mybatis配置文件conf.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>
 <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/book" />
 <property name="username" value="root" />
 <property name="password" value="1234" />
 </dataSource>
 </environment>
 </environments>
 <mappers>
 <!-- 注册BookMapper.xml文件,基于xml配置mybatis使用,若不是,不需要配置
 userMapper.xml位于me.gacl.mapping这个包下,所以resource写成me/gacl/mapping/userMapper.xml-->
 <mapper resource="edu/cn/mapper/BookMapper.xml"/>
 </mappers>
</configuration>

基于xml配置和基于注解配置的不同点的不仅是是否需要在配置文件上注册mapper文件,更大的不同是基于注解直接省略了mapper.xml文件的创建,相关的sql语句都写在dao层接口上,可以直接调用接口实现数据库的操作。

基于xml方式(mapper文件)

<?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,namespace的值习惯上设置成包名+sql映射文件名,这样就能够保证namespace的值是唯一的
例如namespace="edu.cn.mapper.bookMapper"就是edu.cn.mapper(包名)+bookMapper(bookMapper.xml文件去除后缀)
 -->
<mapper namespace="edu.cn.mapper.BookMapper">
 <!-- 在select标签中编写查询的SQL语句, 设置select标签的id属性为getBook,id属性值必须是唯一的,不能够重复
 使用parameterType属性指明查询时使用的参数类型,resultType属性指明查询返回的结果集类型
 resultType="edu.cn.pojo.Book"就表示将查询结果封装成一个User类的对象返回
 Book类就是bookta表所对应的实体类
 -->
 <!--
 根据id查询得到一个book对象
 -->
 <select id="getBook" parameterType="String"
 resultType="edu.cn.pojo.Book">
 select * from bookta where isbn=#{isbn}
 </select>
</mapper>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值