学习mybatis源码系列

这个博客写的比较详细,

觉得不错. 博客地址:

http://www.cnblogs.com/dongying/tag/Mybatis%E6%B7%B1%E5%85%A5%E6%B5%85%E5%87%BA%E7%B3%BB%E5%88%97/

顺便复习了一下jdbc链接数据库

//第一步,注册驱动程序  
//com.MySQL.jdbc.Driver  
Class.forName("数据库驱动的完整类名");  
  
//第二步,获取一个数据库的连接  
Connection conn = DriverManager.getConnection("连接URL","用户名","密码");  
  
//第三步,创建一个会话  
Statement stmt=conn.createStatement();  
  
//第四步,执行SQL语句,增加,删除,修改记录  
stmt.executeUpdate("增加,删除,修改记录的SQL语句");  
  
//或者查询记录  
ResultSet rs = stmt.executeQuery("查询记录的SQL语句");  
  
//第五步,对查询的结果进行处理  
while(rs.next()){  
//对记录的操作  
}  
  
//第六步,关闭连接  
rs.close();  
stmt.close();  
conn.close();  

 

自己写的例子

package com.jia.mybatis;

import java.sql.DriverManager;
import java.sql.ResultSet;

import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;

public class Main {
	
	private static final String url="jdbc:mysql://127.0.0.1:3306/mybatis?useUnicode=true&characterEncoding=utf-8&useSSL=false";
	private static final String username="root";
	private static final String password="123456";
	
	public static void main(String[] args) throws Exception {
		    //加载MySql的驱动类   
		    Class.forName("com.mysql.jdbc.Driver") ;   
		    //获取链接
			Connection con = (Connection) DriverManager.getConnection(url , username , password );
			//准备执行sql
			PreparedStatement pst = (PreparedStatement) con.prepareStatement("select * from user");
			//获得结果
			ResultSet resultSet=pst.executeQuery();
			while (resultSet.next()) {
				System.err.print(resultSet.getInt(1));
				System.err.print("\t");
				System.err.print(resultSet.getString(2));
				System.err.print("\t");
				System.err.print(resultSet.getString(3));
				System.err.print("\t");
				System.err.println(resultSet.getInt(4));
			}
			//结果关闭
			resultSet.close();
            pst.close(); 
			//连接关闭
			con.close();
	}
}

 

package com.jia.mybatis;

import java.io.IOException;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Assert;
import org.junit.Test;

import com.jia.mybatis.dao.UserMapper;
import com.jia.mybatis.pojo.User;

public class App 
{
    
	@Test
    public void test() {
        SqlSession sqlSession = getSessionFactory().openSession(true);  
        UserMapper userMapper = sqlSession.getMapper(UserMapper.class);  
        User user=new User();
        user.setSex(new Integer(1));
        user.setName("123");
        user.setEmail("286718857@qq.com");
        userMapper.insertSelective(user);
        //sqlSession.commit();
        System.err.println(user.getId());
        // User user = userMapper.selectByPrimaryKey(14);  
         //Assert.assertNotNull("没找到数据", user);
    }
    //Mybatis 通过SqlSessionFactory获取SqlSession, 然后才能通过SqlSession与数据库进行交互
    private static SqlSessionFactory getSessionFactory() {  
        SqlSessionFactory sessionFactory = null;  
        String resource = "mybatis-config.xml";  
        try {  
            sessionFactory = new SqlSessionFactoryBuilder().build(Resources.getResourceAsReader(resource));
        } catch (IOException e) {  
            e.printStackTrace();  
        }  
        return sessionFactory;  
    }  
	

}
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/mybatis?useUnicode=true&characterEncoding=utf-8&useSSL=false
username=root
password=123456
<?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配置文件, 我这里面配置的是数据库相关 -->
  <properties resource="dbConfig.properties" ></properties>
  
  <!-- 指定Mybatis使用log4j -->
  <settings>
     <setting name="logImpl" value="LOG4J"/>
  </settings>
      
  <environments default="development">
    <environment id="development">
      <transactionManager type="JDBC"/>
      <dataSource type="POOLED">
          <!--
          如果上面没有指定数据库配置的properties文件,那么此处可以这样直接配置 
        <property name="driver" value="com.mysql.jdbc.Driver"/>
        <property name="url" value="jdbc:mysql://localhost:3306/test1"/>
        <property name="username" value="root"/>
        <property name="password" value="root"/>
         -->
         
         <!-- 上面指定了数据库配置文件, 配置文件里面也是对应的这四个属性 -->
         <property name="driver" value="${driver}"/>
         <property name="url" value="${url}"/>
         <property name="username" value="${username}"/>
         <property name="password" value="${password}"/>
         
      </dataSource>
    </environment>
  </environments>
  
  <!-- 映射文件,mybatis精髓, 后面才会细讲 -->
  <mappers>
    <mapper resource="com/jia/mybatis/dao/mysql/UserMapper.xml"/>
  </mappers>
  
</configuration>

 

转载于:https://my.oschina.net/mifans/blog/844470

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值