Mybatis配置

mybatis
ibatis:apache
2010 ibatis->google colde,Mybatis

MyBatis可以简化JDBC操作,实现数据的持久化
ORM:Object Relational Mapping
person对象 person表
ORM:概念
Mybatis是ORM的一个实现
ORM可以使开发人员像操作对象一样操作数据库表

开发mybatis程序步骤
1.配置mybatis
conf.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">
            <!--指定事务管理的类型,这里简单使用Java的JDBC的提交和回滚设置-->
            <transactionManager type="JDBC"></transactionManager>
            <!--dataSource 指连接源配置,POOLED是JDBC连接对象的数据源连接池的实现-->
            <dataSource type="POOLED">
                <property name="driver" value="oracle.jdbc.OracleDriver"></property>
                <property name="url" value="jdbc:oracle:thin:@127.0.0.1:1521:mldn"></property>
                <property name="username" value="scott"></property>
                <property name="password" value="tiger"></property>
            </dataSource>
        </environment>
    </environments>
    <mappers>        <!--这是告诉Mybatis去哪找持久化类的映射文件,对于在src下的文件直接写文件名,            如果在某包下,则要写明路径,如:com/mybatistest/config/User.xml-->
        <mapper resource="org/myy/entity/personMapper.xml"></mapper>
    </mappers>
</configuration>

 


表-类
映射文件xxMapper.xml:增删改查标签<select>

package org.myy.entity;

public class Person {
    private int id;
    private String name;
    private int age;
    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 int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public Person(int id, String name, int age) {
        super();
        this.id = id;
        this.name = name;
        this.age = age;
    }
    public Person() {
        super();
    }
    @Override
    public String toString() {
        return this.id+","+this.name+","+this.age;
    }
    
}
<?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="org.myy.entity.personMapper"><!--映射文件的路径  -->

    <select id="queryPersonById" parameterType="int" resultType="org.myy.entity.Person">
        select * from person where id=#{id}
    </select>

</mapper>

 

测试类;
session.selectOne("需要查询的sql的namespace的id","SQL的参数值");

 

package org.myy.entity;

import java.io.IOException;
import java.io.Reader;

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 TestMyBatis {
    public static void main(String[] args) throws IOException {
        //加载MyBatis配置文件(访问数据库)
        Reader reader = Resources.getResourceAsReader("conf.xml");
        
        SqlSessionFactory SessionFactory = new SqlSessionFactoryBuilder().build(reader);
        //session--connection
        SqlSession session=SessionFactory.openSession();
        String statement="org.myy.entity.personMapper.queryPersonById";
        Person person=session.selectOne(statement,1);
        System.out.println(person);
        session.close();
    }
}

 

第一个Mybatis程序
0.mybatis.jar ojdbc.jar
1.conf.xml(数据库配置信息+映射文件)
2.表-类映射文件
3.测试类

posted @ 2020-06-24 23:35  myyismyy  阅读(170)  评论(0编辑  收藏  举报