参考文献:http://www.mybatis.org/mybatis-3/zh/getting-started.html

Mybatis结构

Mybatis基本使用

数据库表

Mybatis基本使用

mybatis-config.xml    --- 作用:注册连接JDBC   (mybatis核心配置文件)

<?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>

	<typeAliases>
        <typeAlias alias="User" type="com.pojo.User" />
    </typeAliases>

 
    <!-- 环境变量 连接数据库的信息 -->
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"></transactionManager>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://127.0.0.1:3306/mybatis"/>
                <property name="username" value="root"/>
                <property name="password" value="123456"/>
            </dataSource>
        </environment>
    </environments>
    
    <!-- 注册Mapper(映射)文件 -->
    <mappers>
        <mapper resource="com/mapper/UserMapper.xml"/>
    </mappers>

</configuration>

UserMapper.java  ---作用:对数据库进行SQL操作

package com.mapper;


import com.pojo.User;

import java.util.List;

/**
 * Mapper接口
 */
public interface UserMapper {

   //根据id查询数据
  public User findUserById(int id);
   
   //查询所有数据
  public  List<User> findAllUser();

   //添加User
  public int addUser(User u);

   //根据id删除数据
  public int deleteUserById(int id);

   //修改User
  public  int updateUser(User user);
}

UserMapper.xml   ---作用:对数据库进行SQL操作配置文件

<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.mapper.UserMapper">
    <!-- 记录总条数 
    <select id="count" resultType="int">
        select count(1) from user;
    </select>
    -->
    <!-- 查询单一 -->
    <select id="findOne" parameterType="int" resultType="com.pojo.User">
        select * from user where id=#{id}
    </select>
    
    <select id="findAllUser" resultType="com.pojo.User">
        SELECT * from user	
    </select>
    
    <select id="findUserById" parameterType="int" resultType="com.pojo.User">  
        select * from user where id = #{id}    
    </select>

    
</mapper>

User.java   ---作用:POJO

package com.pojo;
public class User {
private int id;
private char name;
private int age;

public int getId() {
	return id;
}
public void setId(int id) {
	this.id = id;
}
public char getName() {
	return name;
}
public void setName(char name) {
	this.name = name;
}
public int getAge() {
	return age;
}
public void setAge(int age) {
	this.age = age;
}

}

MyBatisTest.java ---作用:测试Mybatis

package com.test;
import java.io.IOException;
import java.util.*;
import java.io.InputStream;
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.Test;

import com.mapper.UserMapper;
import com.pojo.*;
public class MyBatisTest {
	@Test
	public void findAll() {
			InputStream inputStream = null;
			//获得当前MyBatis总的配置文件路径
			String resource = "com/config/mybatis-config.xml";
			try {
				//获得当前配置文件的输入流
				inputStream = Resources.getResourceAsStream(resource);
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			//通过流对象,来创建SqlSessionFactory对象 ---> 数据库会话工厂
			SqlSessionFactory sqlFactory = new SqlSessionFactoryBuilder().build(inputStream);
			//通过数据库会话工厂开启跟数据库的一次对话
			SqlSession sqlSession = sqlFactory.openSession();
			
			//从SQL中取出数据
			UserMapper mapper = sqlSession.getMapper(UserMapper.class);
			User user = mapper.findUserById(2);
			System.out.println(user.getAge());
//			User user = sqlSession.selectOne("com.mapper.UserMapper.findOne");
//			List<User> user = mapper.findAllUser();
//			for(User user1 : user) {
//				System.out.println(user1);
//			}
			
	}
	
}

log4j.properties

# Global logging configuration
log4j.rootLogger=ERROR, stdout
# MyBatis logging configuration...
log4j.logger.org.mybatis.example.BlogMapper=TRACE
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n

运行结果:

Mybatis基本使用

相关文章:

  • 2021-11-20
  • 2022-01-09
  • 2021-07-14
  • 2022-12-23
  • 2021-12-14
  • 2022-01-14
  • 2021-08-27
猜你喜欢
  • 2021-04-01
  • 2021-07-09
  • 2021-08-28
  • 2021-07-09
  • 2021-09-25
相关资源
相似解决方案