MyBatis入门

前言:java web开发的后端技术包括MyBatis框架,因此mybatis的学习是必须的了

阅读目录:

  • 1.MyBatis是什么
  • 2.MyBatis下载
  • 3.MyBatis入门开发

1.MyBatis是什么

MyBatis是一款优秀的持久层框架,即ORM框架(Object Relation Mapping)​,它支持定制化SQL、存储过程、高级映射。MyBatis可以使用简单的XML或注解来配置和映射原生信息,将接口和java的pojo映射成数据库的记录

它的特点是小巧、​上手快。

2.MyBatis下载​

MyBatis官网是http://www.mybatis.org/mybatis-3/zh/index.html

mybatis 代码由github.com托管 下载地址: http://github.com/mybatis/mybatis-3/releases

目前MyBatis版本​mybatis-3.4.5

3.MyBatis入门开发

   一个简单的MyBatis连接Oracle数据库的例子

3.1​ 准备环境  Eclipse+Maven+Oracle

     maven引入jar包​:mybatis-3.4.5.jar  ojdbc14-10.2.0.5.0.jar

     数据库使用项目中的测试数据库​,里面有用户表User

  3.2进入开发---这里采用Mapper代理开发

  1. 创建maven的java web工程 mybatisdemo
  2. 在pom文件中加入mybatis和ojdbc的jar包
  3.  在src/main/resources目录下创建mybatis-config配置文件

         和user映射文件

4.创建实体User类和接口UserMapper

5.创建测试类Test1

3.3详解

1.​全局配置文件mybatis-config.xml,配置mybatis的数据库连接信息,文档的顶层结构如下:

configuration 配置

mybatis-config.xml 内容为:

<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <properties resource="jdbc.properties">
    </properties>

    <!-- 和spring整合后 environments配置将废除 -->
    <environments default="development">
        <environment id="development">
            <!-- 使用jdbc事务管理,事务控制由mybatis管理 -->
            <transactionManager type="JDBC" />
            <!-- 数据库连接池,由mybatis管理 -->
            <dataSource type="POOLED">

                <property name="driver" value="${driver}" />
                <property name="url" value="${url}" />
                <property name="username" value="${username}" />
                <property name="password" value="${password}" />

                <!--数据库连接信息除了上述配置方式外,还有下面一种配置方式,数据库连接相关信息直接写在value上, 注意:jdbc通过thin方式连接oracle,使用service_name的格式为 
                    jdbc:oracle:thin:@//host:port/service_name -->
                <!-- <property name="driver" value="oracle.jdbc.driver.OracleDriver"  /> 
<property name="url" value="jdbc:oracle:thin:@//10.221.129.208:1523/otatransuser" />
<property name="username" value="otatransuser" />
<property name="password" value="otatransuser123" />
--> </dataSource> </environment> </environments> <!-- 加载映射文件 --> <mappers> <mapper resource="UserMapper.xml" /> </mappers> </configuration>

​  2.映射文件UserMapper.xml

这个映射文件的命名规则一般是表名+Mapper.xml​

<!-- namespace命名空间,作用就是对sql进行分类化的管理,理解为sql隔离
注意:使用mapper代理开发时,namespace有特殊作用
-->
<mapper namespace="mybatisdemo.dao.UserDao">
<select id="findUserByName" parameterType="java.lang.String" resultType="mybatisdemo.pojo.User">
select * from ota_user where username=#{username}
</select>

</mapper>

3.创建Mapper接口 UserMapper

mapper接口的命名方式建议:表名+Mapper​

public interface UserMapper {

public User findUserByName(String name) throws Exception;

}

4.测试类 BatisTest

public class BatisTest {

public static void main(String[] args) throws Exception{

String resource ="Mybatis-Config.xml";

InputStream inputStream = Resources.getResourceAsStream(resource);

SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(inputStream);

SqlSession session = factory.openSession();

UserMapper userdao = session.getMapper(UserMapper.class);

User user = userdao.findUserByName("wanghaixia");

System.out.println(user);

session.close();

}

​运行测试类,得到结果:

User [id=4283, username=wanghaixia, password=gxBB2fIrpx8=

, offices=null, ips=*, max_Concurrent_Call=1, available=true, company=中国航信, email=null, last_Login=null, create_Time=Mon Apr 20 00:00:00 CST 2015, tel=57651606, mobile=null, contact=王海霞, iata=*, user_Groups=INNER, abbreviation=中国航信, belongs=暂未分类, temp_Password=null, black_Offices=SHA177]

原文地址:https://www.cnblogs.com/whx7762/p/7693353.html