初学mybatis

打印 上一主题 下一主题

主题 523|帖子 523|积分 1573

Mybatis

IDEA创建一个空项目,然后添加Maven模块
maven项目路径如下所示
  1. --项目名
  2.         --/src
  3.                 --/main #存放主程序java代码和资源
  4.                         --/java        #java代码
  5.                         --/resources #配置文件和资源等,放到这里的文件等同于放到了根目录下
  6.                 --/test #测试程序文件夹
  7.                         --/java
  8.                         --/resources
  9.         --/pom.xml   #maven 的核心配置文件
复制代码

  • 第一步:在pom文件中配置MySQL和mybatis依赖,并且设置打包方式为jar
  1. <packaging>jar</packaging>
  2. <dependencies>
  3.    
  4.     <dependency>
  5.         <groupId>org.mybatis</groupId>
  6.         <artifactId>mybatis</artifactId>
  7.         <version>3.5.11</version>
  8.     </dependency>
  9.    
  10.     <dependency>
  11.         <groupId>com.mysql</groupId>
  12.         <artifactId>mysql-connector-j</artifactId>
  13.         <version>8.0.31</version>
  14.     </dependency>
  15. </dependencies>
复制代码

  • 第二步:编写mybatis核心配置文件mybatis-config.xml文件
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE configuration
  3.         PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  4.         "http://mybatis.org/dtd/mybatis-3-config.dtd">
  5. <configuration>
  6.     <environments default="development">
  7.         <environment id="development">
  8.             <transactionManager type="JDBC"/>
  9.             <dataSource type="POOLED">
  10.                 <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
  11.                 <property name="url" value="jdbc:mysql://mysql数据库地址/数据库名称"/>
  12.                 <property name="username" value="用户名"/>
  13.                 <property name="password" value="密码"/>
  14.             </dataSource>
  15.         </environment>
  16.     </environments>
  17.     <mappers>
  18.         //此处填写引入mapper文件
  19.         <mapper resource="studentMapper.xml"/>
  20.         <mapper resource="teacherMapper.xml"/>
  21.     </mappers>
  22. </configuration>
复制代码

  • 第三步:编写mapper文件,并在mybatis-config.xml文件中引入mapper文件
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3.         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4.         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="org.mybatis.example.BlogMapper">
  6.     //此处填写sql语句
  7.     <insert id="studentInsert">
  8.         insert into stu values (null,'winter','nan');
  9.     </insert>
  10. </mapper>
复制代码

  • 第四步:编写mybatis程序。在java目录下新建一个类
  1. public class mybatisTest {
  2.         public static void main(String[] args) throws Exception{
  3.             
  4.             //获取SqlSessionFactoryBuilder对象
  5.             SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
  6.             //获取SqlSessionFactory对象
  7.             InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
  8.             //Resources.getResourceAsStream方法是从类路径加载文件,移植性强
  9.             //核心配置文件的文件名不固定,只要能通过Resources.getResourceAsStream方法获取到就行
  10.             SqlSessionFactory factory = builder.build(is);
  11.             //获取SqlSession
  12.             SqlSession sqlSession = factory.openSession();
  13.             //执行sql语句
  14.             int count =  sqlSession.insert("studentInsert");//此处的字符串要和mapper文件中的insert标签的id对应
  15.             System.out.println("改动了"+count+"条记录");
  16.             //commit手动提交
  17.             sqlSession.commit();
  18.         }
  19.     }
复制代码

注意

mybatis-config.xml文件只有一个,是核心配置文件,存放数据库连接信息等,一般是一个数据库对应一个config文件
mapper文件可以有多个,专门编写sql语句的配置文件,一般一张表对应一个mapper文件
获取SqlSessionFactory对象时要传入一个InputStream对象,该对象还可以使用FileinputStream来获取,但是这样代码灵活性较差,可移植性差,不建议使用。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

篮之新喜

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表