• 【Mybaits学习】02_ 快速入门


    Mybatis快速入门(mysql)---Maven环境

    1、添加Mybatis jar包

    		<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
    		<dependency>
    			<groupId>org.mybatis</groupId>
    			<artifactId>mybatis</artifactId>
    			<version>3.4.0</version>
    		</dependency>
    		<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
    
    		<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
    		<dependency>
    			<groupId>mysql</groupId>
    			<artifactId>mysql-connector-java</artifactId>
    			<version>6.0.2</version>
    		</dependency>
    

    2、本地数据库建表

    3、添加Mybatis的配置文件,以及db.properties文件

    db.properties文件

    db.driver=com.mysql.jdbc.Driver
    db.url=jdbc:mysql://localhost:3307/mybaits?serverTimezone=UTC
    db.username=root
    db.password=123456
    

    Mybaits.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>
    	<properties resource="db.properties"></properties>
    
    	<environments default="development">
    		<environment id="development">
    			<transactionManager type="JDBC" />
    			<dataSource type="POOLED">
    				<property name="driver" value="${db.driver}" />
    				<property name="url" value="${db.url}" />
    				<property name="username" value="${db.username}" />
    				<property name="password" value="${db.password}" />
    			</dataSource>
    		</environment>
    	</environments>
    
    
    </configuration>
    

      

     4、 定义实体类

    package nh.ui.automation.tools.Mybaits;
    
    /**
     * 项目 :UI自动化测试 Mybaits 类描述:
     * 
     * @author Eric
     * @date 2017年3月4日 nh.ui.automation.tools.Mybaits
     */
    public class User {
    	private int id;
    	private String name;
    	private int age;
    
    	/**
    	 * @param id
    	 * @param name
    	 * @param age
    	 */
    	public User(int id, String name, int age) {
    		super();
    		this.id = id;
    		this.name = name;
    		this.age = age;
    	}
    	/*
    	 * (non-Javadoc)
    	 * 
    	 * @see java.lang.Object#toString()
    	 */
    
    	/**
    	 * 
    	 */
    	public User() {
    		super();
    	}
    
    	/**
    	 * @param name
    	 * @param age
    	 */
    	public User(String name, int age) {
    		super();
    		this.name = name;
    		this.age = age;
    	}
    	@Override
    	public String toString() {
    		return "User [id=" + id + ", name=" + name + ", age=" + age + "]";
    	}
    
    	/**
    	 * @return the id
    	 */
    	public int getId() {
    		return id;
    	}
    
    	/**
    	 * @param id
    	 *            the id to set
    	 */
    	public void setId(int id) {
    		this.id = id;
    	}
    
    	/**
    	 * @return the name
    	 */
    	public String getName() {
    		return name;
    	}
    
    	/**
    	 * @param name
    	 *            the name to set
    	 */
    	public void setName(String name) {
    		this.name = name;
    	}
    
    	/**
    	 * @return the age
    	 */
    	public int getAge() {
    		return age;
    	}
    
    	/**
    	 * @param age
    	 *            the age to set
    	 */
    	public void setAge(int age) {
    		this.age = age;
    	}
    
    }
    

    5、定义操作user表的sql映射文件userMapper.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="nh.ui.automation.tools.Mybaits.User.userMapper">
        <select id="getUser" parameterType="int"
            resultType="nh.ui.automation.tools.Mybaits.User">
            select * from user where id=#{id}
        </select>
    
    </mapper>

    6、在Mybaits.xml文件中注册userMapper.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>
        <properties resource="db.properties"></properties>
    
        <environments default="development">
            <environment id="development">
                <transactionManager type="JDBC" />
                <dataSource type="POOLED">
                    <property name="driver" value="${db.driver}" />
                    <property name="url" value="${db.url}" />
                    <property name="username" value="${db.username}" />
                    <property name="password" value="${db.password}" />
                </dataSource>
            </environment>
        </environments>
    
        <mappers>
            <mapper resource="Mappings/userMapper.xml"/>
        </mappers>
    </configuration>

     

    7、测试代码

    public class App 
    {
        public static void main( String[] args )
        {
            /**
             * 1,加载mybaits的配置文件
             * 2,构建sqlsession工厂
             * 3,创建能执行sql的会话
             * 4,映射sql的标识字符串
             * 5,执行sql
             * 6,打印结果
             */
            
            String myBaitsConifg = "Mybaits.xml";
            InputStream loadConfig = App.class.getClassLoader().getResourceAsStream(myBaitsConifg);
            
            SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(loadConfig);
            SqlSession sqlSession = sessionFactory.openSession(true);
               //这里就是mybaits文件中的namespace+方法
            String statement = "nh.ui.automation.tools.Mybaits.User.userMapper.getUser";
            //执行sql并传递值
            User user1 = sqlSession.selectOne(statement, 1);
            User user2 = sqlSession.selectOne(statement, 2);
            System.out.println(user1);
            System.out.println(user2);
       }

    }
  • 相关阅读:
    java正则表达式(九)
    java正则表达式(八)
    java正则表达式(十)
    正确理解ThreadLocal
    Class.getResource与ClassLoader.getResource()区别
    seajs中define方法的id和dependencies参数
    seajs研究一二三
    十八年开发经验分享(三)问题解决篇(中)
    EntityModelStudio系列教程4静态建模进阶
    EntityModelStudio系列教程6EMLib框架之Orm
  • 原文地址:https://www.cnblogs.com/hylinux/p/6503269.html
Copyright © 2020-2023  润新知