MyBatis初探

第一个mybatis程序
总结一下大体步骤:
1、导包
2、在数据库中创建表
3、在ide中创建javabeen实体类,和数据库中的表对应
4、配置mybatis的全局配置文件
5、配置xml映射文件
6、测试类
7、遇到的问题

我是用的是idea, 创建的maven项目

1 需要在pom.xml中导入mysql的jar包和mybatis的jar包,,我也导入了junit的jar包,

<dependency>
            <!-- junit测试的依赖-->
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>

        </dependency>
 <dependency>
            <!-- mysql的依赖-->
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.15</version>
        </dependency>
        
        <dependency>
            <!-- mybatis的依赖 -->
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.5</version>
        </dependency>

2、接下来:在数据库中创建一个表

	CREATE TABLE `tal_employee` (
	  `id` int(11) NOT NULL AUTO_INCREMENT,
	  `lastname` varchar(255) NOT NULL,
	  `gender` varchar(1) NOT NULL,
	  `email` varchar(255) DEFAULT NULL,
	  PRIMARY KEY (`id`)
	) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;

3、然后创建一个和之前创建的表一样的javabeen实体类

public class Employee {
    private int id;
    private String lastName ;
    private String gender ;
    private String email;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    @Override
    public String toString() {
        return "Employee{" +
                "id=" + id +
                ", lastName='" + lastName + '\'' +
                ", gender='" + gender + '\'' +
                ", email='" + email + '\'' +
                '}';
    }
}
4、然后配置你的mybatis全局配置文件:
<?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>
    <!--现在只配置 数据库环境 和 映射 -->

    <!-- 1:配置数据库的环境 这里的default关联的是哪个数据库,就使用的哪个数据库 -->
    <environments default="test">

        <!--环境①:开发环境 : 以后的事务和连接池都是交给spring框架管理-->
        <environment id="dev">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">

            </dataSource>
        </environment>

        <!--环境②:测试环境 -->
        <environment id="test">
            <!--①配置事务管理器 -->
            <transactionManager type="JDBC"/>
            <!--②配置数据源(连接池) -->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/mybatis?serverTimezone=UTC"/>
                <property name="username" value="root"/>
                <property name="password" value=""/>
            </dataSource>

        </environment>
    </environments>

    <!-- 2:配置Mapper映射器  :告诉 MyBatis 到哪里去找映射文件(存放sql语句)  -->
    <mappers>
        <mapper resource="com\liam\MyBatis\EmployeeMapper.xml"/>
    </mappers>
</configuration>

5、接下来配置你的xml映射文件,我把他暂时放在了javabeen同路径下:

<?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不同-->
<mapper namespace="com.liam.MyBatis.EmployeeMapper">
    <!--
        select 语句左门专门来查询的sql
            id : 命名空间中的唯一标识符,可被用来代表这条语句   id + namespace 是唯一标识这个sql语句
            #{id}:会在预编译的时候转换为 ?
            parameterType: 往sql语句中传的参数的类型,可不写,mybatis可自行推测出来
            resultType: 将结果集中的对象封装成什么对象。

    -->
    <select id="selectEmployee" parameterType="int" resultType="com.liam.MyBatis.Employee">
        SELECT * FROM tal_employee where id= #{id}
    </select>

</mapper>

6、接着写一个测试类:

public class testDemo1 {
    @Test
    public void select() throws IOException {
        // 1、以流的形式加载mybatis的配置文件,
        String resource = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        // 2、创建SqlSessionFactoyBudiler

        SqlSessionFactoryBuilder buder = new SqlSessionFactoryBuilder();
        // 3.创建sqlSessionFactory ,并且将mybatis配置文件导入
        SqlSessionFactory factory = buder.build(inputStream);
        // 4、创建Sqlsession对象
        SqlSession session = factory.openSession();
        // 5、使用session对象进行具体操作
            // 选择: 第一个参数导入xml文件
        Employee ployer = session.selectOne("com.liam.MyBatis.EmployeeMapper.selectEmployee", 1);
        // 6、将session对象关闭
        session.close();
        System.out.println(ployer);
    }
}

结果: Employee{id=1, lastName='tom', gender='1', email='tom@163.com'}

遇到的问题:
1、java.io.IOException: Could not find resource 。。。。
找不到配置信息
原因:
在maven项目下, idea不会编译src路径下面的xml文件,所以找不到,要在maven的pom.xml文件中的builder中添加以下:

<resources>
    <resource>
        <directory>src/main/java</directory>
        <includes>
            <include>**/*.xml</include>
        </includes>
    </resource>
</resources>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MybatisMybatis Plus是两个在Java开发中常用的持久层框架。Mybatis是一个优秀的持久层框架,它通过XML配置文件或注解的方式实现了数据库的操作,同时提供了强大的SQL映射功能。而Mybatis Plus是在Mybatis的基础上进行二次封装的框架,它简化了Mybatis的使用,提供了更加便捷的CRUD操作方法和更加灵活的查询方式,同时还集成了一些常用的功能模块,如分页、逻辑删除等。 在Spring Boot中整合MybatisMybatis Plus可以通过引入相应的依赖和配置文件来实现。可以参考示例代码中的Spring Boot项目,其中包含了整合MybatisMybatis Plus的配置和示例代码。 在配置文件中,可以通过配置MybatisPlusConfig来配置Mybatis Plus的一些参数和功能,例如分页插件、逻辑删除插件等。同时,需要将Mybatis的XML文件放置在resources目录下的mapper文件夹中,以供Mybatis进行SQL映射。 总之,MybatisMybatis Plus都是非常常用的持久层框架,它们可以帮助开发者简化数据库操作,提高开发效率。在Spring Boot中整合它们可以通过引入依赖和配置文件来实现。希望以上信息对您有所帮助。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [SpringBoot+Mybatis+Mybatis Plus+Shiro实现一个简单的项目架构](https://download.csdn.net/download/feritylamb/11490995)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [spring boot整合mybatis+mybatis-plus的示例代码](https://download.csdn.net/download/weixin_38506798/12764240)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [spring boot整合mybatis+mybatis-plus](https://blog.csdn.net/aotun7642/article/details/102437856)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值