SqlSession的获取及对数据库执行插入操作

原创 2015年11月20日 16:11:32

项目架构如图:


插入代码:


package com.boge;
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;
import com.boge.mapper.UserMapper;
import com.boge.pojo.User;

public class Insert {
	public static void main(String[] args) throws IOException, InterruptedException  {
		Reader reader = Resources.getResourceAsReader("mybatis.xml"); 
        SqlSessionFactory sf = new SqlSessionFactoryBuilder().build(reader);  
        SqlSession session = sf.openSession(true); 
        UserMapper userMapper = session.getMapper(UserMapper.class);
        for (int i = 0; i < 10; i++) {
        	 System.out.println("*****"+i);
        	 User user = new User();
//        	 user.setId(100+i);//id是自增的
             user.setName("******嘿嘿"+i);
             user.setAddress("山东菏泽");
             user.setCode("274000");
             user.setNote("低调");
             user.setSex("汉子");
             userMapper.insert(user);
             Thread.sleep(200);
		}
	}
}


mybatis.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/boge" />
            <property name="username" value="root"/>
            <property name="password" value="7758521song"/>
            </dataSource>
        </environment>
    </environments>

	<mappers>
        <!-- 数据标准化 -->
         <mapper resource="com/boge/xml/UserMapper.xml" />
	</mappers>
</configuration>

用于生成User、UserMapper、以及UserMapper.xml的generatorConfig.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" >
<generatorConfiguration >
<classPathEntry location="C:/Users/Bo/.m2/repository/mysql/mysql-connector-java/5.1.34/mysql-connector-java-5.1.34.jar" /> 
  <context id="user" >
    <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/boge"
      userId="root" password="7758521song">
    </jdbcConnection>
   <javaModelGenerator targetPackage="com.boge.pojo" targetProject="Pro/src/main/java">
    </javaModelGenerator>
    
    <sqlMapGenerator targetPackage="com.boge.xml" targetProject="Pro/src/main/java">
    </sqlMapGenerator>
   <javaClientGenerator type="XMLMAPPER" targetPackage="com.boge.mapper"
      targetProject="Pro/src/main/java">
    </javaClientGenerator>
    
    <table schema="boge" tableName="user" domainObjectName="User">
    </table>
  </context>
</generatorConfiguration>


在pom中加入依赖,pom.xml如下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>Boge</groupId>
	<artifactId>com</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>jar</packaging>

	<name>com</name>
	<url>http://maven.apache.org</url>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	</properties>

	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>3.8.1</version>
			<scope>test</scope>
		</dependency>
	        <dependency>
			<groupId>org.apache.ibatis</groupId>
			<artifactId>ibatis-core</artifactId>
			<version>3.0</version>
		</dependency>
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.34</version>
		</dependency>
	</dependencies>
</project>


项目下载:https://github.com/MyHeartWillFoever/SqlSession.git




ibatis的sqlSessionTemplate实例的sqlSession接口定义。

sqlSession接口的定义如下: /*  *    Copyright 2009-2011 the original author or authors.  *  *    License...
  • suyu_yuan
  • suyu_yuan
  • 2016年10月09日 16:53
  • 711

深入浅出MyBatis-Sqlsession

前面的章节主要讲mybatis如何解析配置文件,这些都是一次性的过程。从本章开始讲解动态的过程,它们跟应用程序对mybatis的调用密切相关。本章先从sqlsession开始。 创建 正如其名,S...
  • hupanfeng
  • hupanfeng
  • 2013年07月03日 22:20
  • 110270

ibatis一次sql过程

为了理清楚ibatis一次sql过程中发生了什么,本文将对ibatis一次sql过程做简要的分析。 String resource = "mybatis.cfg.xml"; Reader rea...
  • wenbo20182
  • wenbo20182
  • 2016年07月21日 16:31
  • 829

浅谈Sqlsession和数据库的连接池

之前mybatis关于Sqlsession的事务的提交,有很多的不解,通过这两天的努力,大致了解了下,分享下,也顺便总结下: 其实我们早就应该知道,在使用mybatis的时候,事务提交的时候...
  • u011239468
  • u011239468
  • 2016年03月31日 21:53
  • 8594

MyBatis常用对象SqlSessionFactory和SqlSession介绍和运用

前言:学习框架一个比较好的路径阅读源码.本文介绍的SqlSessionFactory和SqlSession.可以通过了解SqlSessionFactory接口和SqlSession接口以及两个的实现类...
  • u013412772
  • u013412772
  • 2017年06月23日 15:35
  • 7286

SqlSession的使用范围---Mybatis学习笔记(五)

介绍:SqlSession中封装了对数据库的操作,如:查询、插入、更新、删除等。 通过SqlSessionFactory创建SqlSession,而SqlSessionFactory是通过SqlSe...
  • u013991521
  • u013991521
  • 2016年12月04日 16:28
  • 2281

sqlsession

工作中,需要学习一下MyBatis sqlSession的产生过程,翻看了mybatis-spring的源码,阅读了一些mybatis的相关doc,对mybatis sqlSession有了一些认知和...
  • asdfsadfasdfsa
  • asdfsadfasdfsa
  • 2016年07月26日 16:46
  • 2128

MyBatis中的sqlsession和Mapper

底层的MyBatis知识
  • chunsport
  • chunsport
  • 2016年10月19日 21:24
  • 2303

mybatis学习笔记(八)Sqlsession详解

Sqlsession意味着创建数据库会话。mybatis中使用SqlsessionFactory的openSession方法创建。 public class TestMyBatis { ...
  • oh_Mourinho
  • oh_Mourinho
  • 2016年07月08日 11:06
  • 20303

关于MyBatis sqlSession的一点整理

工作中,需要学习一下MyBatis sqlSession的产生过程,翻看了mybatis-spring的源码,阅读了一些mybatis的相关doc,对mybatis sqlSession有了一些认知和...
  • baicp3
  • baicp3
  • 2016年01月06日 15:28
  • 2239
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SqlSession的获取及对数据库执行插入操作
举报原因:
原因补充:

(最多只允许输入30个字)