zoukankan      html  css  js  c++  java
  • mybaits入门学习

    学习了简单的mybatis的配置

    Bean层:

    这个都会很简单

    一个完整的Bean 需要getter和setter方法还需要一个空的构造方法和一个满的构造方法。

    Dao层:

    创建一个接口就ok了

    package dao;
    
    import bean.User;
    
    import java.util.List;
    
    public interface IUserDao {
        /**
         * 查询
         * @return
         */
        List<User> findAll();
    }
    

     关键是xml的配置文件:

    SqlMapConfig.xml的配置,配置数据库和映射dao层

    <?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="mysql">
            <!--   配置mysql的环境     -->
            <environment id="mysql">
                <!--   配置事务的类型          -->
                <transactionManager type="JDBC"></transactionManager>
                <!-- 配置数据源连接池           -->
                <dataSource type="POOLED">
                    <!--  -->
                    <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                    <property name="url" value="jdbc:mysql://localhost:3306/runmybatis?serverTimezone=UTC"/>
                    <property name="username" value="root"/>
                    <property name="password" value="123456"/>
                </dataSource>
            </environment>
        </environments>
        <!-- 指定映射配置文件的位置,映射配置文件的是每个dao独立的配置文件 -->
          <mappers>
             <mapper resource="dao/IUserDao.xml" />
          </mappers>
    </configuration>
    

     Dai层对应的,返回类型的出处写好,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="dao.IUserDao">
        <!-- SQL语句 -->
        <!-- 配置查找-->
        <select resultType="bean.User" id="findAll">
            select * from user
        </select>
    </mapper>
    

     这样便可使用了

    Test.java:

    package test;
    
    
    
    import bean.User;
    import dao.IUserDao;
    import org.apache.ibatis.session.SqlSession;
    import org.apache.ibatis.session.SqlSessionFactory;
    import org.apache.ibatis.session.SqlSessionFactoryBuilder;
    import org.apache.ibatis.io.Resources;
    
    import java.io.IOException;
    import java.io.InputStream;
    import java.util.List;
    
    public class Test {
        public static void main(String[] args) throws IOException {
            //读取配置文件
    
            InputStream inputStream = Resources.getResourceAsStream("SqlMapConfig.xml");
            //创建SqlSessionFactory工厂
            System.out.println(inputStream);
            SqlSessionFactoryBuilder builder =new SqlSessionFactoryBuilder();
            SqlSessionFactory factory =builder.build(inputStream);
    
            //使用工厂生产SqlSession对象
            SqlSession session =factory.openSession();
            //使用SqlSession创建Dao接口代理对象
            IUserDao userDao =session.getMapper(IUserDao.class);
            //使用代理对象
            List<User> users =userDao.findAll();
            System.out.println(users);
            for(User user: users)
            {
                System.out.println(user.toString());
            }
            //释放资源
            session.close();
            inputStream.close();
        }
    }
    

     测试结果

    [User{id=1, userName='dada'}, User{id=2, userName='xiaoming'}]
    User{id=1, userName='dada'}
    User{id=2, userName='xiaoming'}

    图片上传不上来

    但是也有缺漏,我的log4文件没有配好

     
     
     
     
     
     
     
     
     
     
     
     
  • 相关阅读:
    git(1)-git关联GitHub-windows-转载
    jenkins(4)-jenkins配置邮件通知
    jenkins(3)-linux下安装jenkins(yum install方式)
    【PAT甲级】1090 Highest Price in Supply Chain (25 分)(DFS)
    【PAT甲级】1087 All Roads Lead to Rome (30 分)(MAP【int,string】,邻接表,DFS,模拟,SPFA)
    【PAT甲级】1018 Public Bike Management (30 分)(DFS,SPFA)
    Educational Codeforces Round 61 (Rated for Div. 2) G(线段树,单调栈)
    Atcoder Grand Contest 032C(欧拉回路,DFS判环)
    Educational Codeforces Round 62 (Rated for Div. 2)E(染色DP,构造,思维,组合数学)
    Atcoder Grand Contest 031C(构造,思维,异或,DFS)
  • 原文地址:https://www.cnblogs.com/gonT-iL-evoL-I/p/11675230.html
Copyright © 2011-2022 走看看