Zookeeper安装 vector dns coldfusion bootstrap中文api文档 pytorch安装教程 leach算法 css选择器有几种 matlab取实部 python编程 python创建对象 python自定义异常 python的安装路径 java在线教程 java字符串 java对象 java遍历集合 java的框架 java读取文件 java中的泛型 高效能人士的七个习惯pdf matlab2016a安装教程 python队列 lseek函数 vbs编程教学 dep 手机模拟器下载 视频加字幕软件 JScodeblocks汉化包 流水账软件 steam怎么卸载 asp编程 全能音频转换通 回收站在哪个盘 重复文件查找 winrar去广告版 mysql密码重置 论文封面怎么做 网红男头像 cad标题栏
当前位置: 首页 > 学习教程  > 编程语言

IDEA2020的mybatis的环境搭建步骤以及小案例

2020/12/5 10:05:04 文章标签:

关于IDEA2020的mybatis的环境搭建步骤mybatis的环境搭建第一步:创建maven工程并导入依赖第二步:创建实体类和dao接口第三步:创建Mybatis的主配置文件SqlMapConfig.xml第四步:创建映射配置文件UserMapper.xml环境搭建的注意事项&am…

关于IDEA2020的mybatis的环境搭建步骤


mybatis的环境搭建
 第一步:创建maven工程并导入依赖
 第二步:创建实体类和dao接口
 第三步:创建Mybatis的主配置文件
   SqlMapConfig.xml
 第四步:创建映射配置文件
   UserMapper.xml


环境搭建的注意事项:
 第一个:创建UserMapper.xml和UserDao.java时名称是为了和我们之前的知识保持一致。
 在Mybatis中它把持久层的操作接口名称和映射文件也叫做:Mapper

 第二个:在idea中创建目录的时候,它和包是不一样的包在创建时:com.xkit.ht03.dao它是三级结构而在resources下创建则是一级目录

 第三个:mybatis的映射配置文件位置必须和dao接口的包结构相同

 第四个:映射配置文件的mapper标签namespace属性的取值必须是dao接口的全限定类名

 第五个:映射配置文件的操作配置(select),id属性的取值必须是dao接口的方法名

当我们遵从了第三、四、五点之后,我们在开发中就无需再写dao的实现类。

案例:
1.读取配置文件
2.创建SqlSeesionFactory工厂
3.创建SqlSession
4.创建Dao接口的代理对象
5.执行dao中的方法
6.释放资源
注意事项:必须告知mybatis要封装到哪个实体类中,
配置的方式:指定实体类的全限定类名

上代码!
跟着步骤来!
先来创建一个maven文件,新建module,选择maven这里啥也不用选择取名就好了
在这里插入图片描述直接下一步
在这里插入图片描述完成之后是这样子的,我这个resources里面呢是打了一个properies配置文件所以有这个箭头你们新建的是没有的
在这里插入图片描述注意我文件的位置啊很重要,这里呢就是我的数据库配置文件
在这里插入图片描述

新建完成之后就需要开始导入依赖了我这里做显示的话只用到了mysql和mybatis所以只导入了两个,依赖是卸载pom.xml里面的,刚写完会标红别着急
在这里插入图片描述看到右上角的一个小m了吗,点击一下稍等一会
在这里插入图片描述大概30秒左右好了之后刚刚的代码就不会标红了,然后你的外部库也会多了两个东西这就说明依赖添加成功了!(补充说明一下这里的mysql的jar一定要5.0以上的)

在这里插入图片描述
然后就是创建实体类和dao接口咱们先把需要包结构创建好吧
在这里插入图片描述然后变成我这样,这就是我们待会需要用到的
在这里插入图片描述接着呢就是新建resources包结构,resources不能直接建包所以咱们新建目录,这里新建目录必须一级一级的建包结构必须和java目录下的包结构一样因为咱们后面需要放置Mapper映射文件也就是包结构是com.xkit.ht03.dao先建com目录再建xkit如果一路点过去你就发现你的resources目录下只有一个文件夹名字就是com.xkit.ht03.dao结构就不一样了后面就会报错,所以这里务必需要一级一级的创建目录,创建出来后的样子如下
在这里插入图片描述
OK包结构弄完了可以开始创建实体类和dao接口了一个User和一个UserDao,User类里面有一个空参构造方法和toString()方法还有就是get()set()了
在这里插入图片描述

在这里插入图片描述
差点忘了还有数据库结构,我这里User的属性是和数据库表的字段名是保持一致的
在这里插入图片描述
这里推一个mybatis的中文网址:https://mybatis.org/mybatis-3/zh/getting-started.html

现在开始创建Mybatis的主配置文件:SqlMapConfig.xml,直接创建在resources目录下的不是在我们之前创的包里面注意,接着去网站里复制这一段
在这里插入图片描述

然后改一下变成这样子,记得把数据库配置文件写进去

<?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>

	<properties resource="database.properties"/>
    <environments default="mysql">
        <environment id="mysql">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="${driver}"/>
                <property name="url" value="${url}"/>
                <property name="username" value="${username}"/>
                <property name="password" value="${password}"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="com/xkit/ht03/dao/UserMapper.xml"/>
    </mappers>
</configuration>

这里的UserMapper.xml还没有写不着急先把这个写上去,然后就开始写创建映射配置文件:UserMapper.xml,创建在resources下咱们之前创建的包下面,现在接着去网站复制
在这里插入图片描述
改一下,改的地方标注了
在这里插入图片描述代码给放出来吧

<?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">
<!--1-->
<mapper namespace="com.xkit.ht03.dao.UserDao">
    <!--2.这里的id是和UserDao中的方法名保持一致的,resultType返回的类型是实体类User-->
    <select id="findAll" resultType="com.xkit.ht03.entity.User">
        <!--3-->
        select * from users
    </select>
</mapper>

OK写完了可以写一下测试类试试看了在test的java目录下创建一个Test文件步骤:

  1. 读取配置文件
  2. 创建SqlSeesionFactory工厂
  3. 创建SqlSession
  4. 创建Dao接口的代理对象
  5. 执行dao中的方法
  6. 释放资源

    这里的话我是写了一个工具类卸载了util包下的:MybatisUtil 把前三步写了进去,这样写的好处就是后期再接着写其它测试文件的时候不需要再把前三步再写一遍也就是获得SqlSession对象
    在这里插入图片描述
private static SqlSessionFactory factory = null;
    static {
        InputStream in = null;
        try {
            //1.读取配置文件
            in = Resources.getResourceAsStream("SqlMapConfig.xml");
            //2.创建SqlSessionFactory工厂
            SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
            factory = builder.build(in);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                //释放资源
                in.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    public static SqlSession getSession(){
        //3.使用工厂生产SqlSession对象
        return factory.openSession();
    }

然后测试类可以获得SqlSession对象了,接着
4. 创建Dao接口的代理对象
5. 执行dao中的方法
6. 释放资源

 public static void main(String[] args) {
    //获得SqlSession对象
    SqlSession session = MybatisUtil.getSession();
    //4.使用SqlSession创建Dao接口的代理对象
    UserDao userDao = session.getMapper(UserDao.class);
    //5.使用代理对象执行方法
    List<User> users = userDao.findAll();
    //因为之前实体类写了toString()所以可以遍历一下
    for(User user:users){
        System.out.println(user);
    }
    //这里是查询就不用提交事务了
    //释放资源
    session.close();
}

在这里插入图片描述

最后附上一张完整的文件结构图
在这里插入图片描述

以上就是全部内容了,具体为啥这样做我这里就不多做解释了自己去深究吧!再说了我也处于学习阶段呢!加油吧打工人!


本文链接: http://www.dtmao.cc/news_show_450148.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?