• Mybatis配置-简单的使用


    导包

    基本配置

     

     配置mybatis.config.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/mybatis1"/>
                <property name="username" value="root"/>
                <property name="password" value="root"/>
            </dataSource>
            </environment>
        </environments>

    <mappers>
      <mapper resource="cn/zys/entity/user-mapper.xml"/>
    </mappers>

    </configuration>

     MyBatisUtils.java

    package cn.zys.until;
    
    import java.io.IOException;
    import java.io.InputStream;
    
    import org.apache.ibatis.io.Resources;
    import org.apache.ibatis.session.SqlSession;
    import org.apache.ibatis.session.SqlSessionFactory;
    import org.apache.ibatis.session.SqlSessionFactoryBuilder;
    
    public class MyBatisUtils {
        public static SqlSessionFactory getSqlSessionFactory() throws IOException{
            String resource = "mybatis.config.xml";
            InputStream inputStream = Resources.getResourceAsStream(resource);
            SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
            return sqlSessionFactory;
        }
        
        public static SqlSession getSqlSession() throws IOException{
            SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();
            return sqlSessionFactory.openSession();
        }
    }

    user-mapper.xml      注意xml命名和命名空间的格式对应

    <?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="cn.zys.entity.UserMapper">
        <select id="selectUser" resultType="cn.zys.entity.User">
            select name from user where id = #{id}
        </select>
    </mapper>

    User.java

    package cn.zys.entity;
    
    public class User {
        private int id;
        private String name;
        private String pwd;
        //
        public int getId() {
            return id;
        }
        public void setId(int id) {
            this.id = id;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public String getPwd() {
            return pwd;
        }
        public void setPwd(String pwd) {
            this.pwd = pwd;
        }
        @Override
        public String toString() {
            return "User [id=" + id + ", name=" + name + ", pwd=" + pwd + "]";
        }
    }

    test.java  

    package cn.zys.test;
    
    import java.io.IOException;
    
    import org.apache.ibatis.session.SqlSession;
    
    import cn.zys.entity.User;
    import cn.zys.until.MyBatisUtils;
    
    public class test {
        public static void main(String[] args) throws IOException {
            SqlSession sqlsession = MyBatisUtils.getSqlSession();
            User user = sqlsession.selectOne("cn.zys.entity.UserMapper.selectUser", 1); 此处命名空间加   id 
            System.out.println(user.toString());
            sqlsession.close();
        }
    }

    运行结果

  • 相关阅读:
    vscode开发环境安装配置-连载【2】-企业级系统开发实战连载系列 -技术栈(vue、element-ui、qt、c++、sqlite)
    nodejs开发环境安装-连载【1】-企业级系统开发实战连载系列 -技术栈(vue、element-ui、qt、c++、sqlite)
    vs 2015 菜单重复的问题解决方法
    ecshop代码详解之init.php
    前端jquery实现点击图片弹出大图层(且滚动鼠标滑轮图片缩放)
    thinkPHP中省市级联下拉列表
    mysql函数date_format统计刷选按年月日统计的数据
    jQuery插件实现select下拉框左右选择_交换内容(multiselect2side)
    php代码生成二维码
    ASP.NET无效的视图
  • 原文地址:https://www.cnblogs.com/xiaozhang666/p/11627804.html
Copyright © 2020-2023  润新知