MyBatis+mysql 配置与连接 详细教程

4 篇文章 0 订阅
3 篇文章 0 订阅

   使用MyBatis的一般步骤如下(本人从 XML 中构建 SqlSessionFactory)

   本人使用Maven开发 , 没有使用Maven的话 ,相应jar需要自行下载 ,放在项目中

  maven中的 pom.xml 导入jar部分配置如下:

 

    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.12</version>
      <scope>test</scope>
    </dependency>
    
    <!-- Mysql驱动包 -->
    <dependency>
	  <groupId>mysql</groupId>
	  <artifactId>mysql-connector-java</artifactId>
	  <version>5.1.38</version>
	</dependency>
    
    <!-- Mybatis -->
    <dependency>
	  <groupId>org.mybatis</groupId>
	  <artifactId>mybatis</artifactId>
	  <version>3.4.1</version>
    </dependency>

 

 

 

 

 

   一. (本人创建一个Web项目)在 src/main/resources 目录中创建一个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/usertest" />
				<property name="username" value="root" />
				<property name="password" value="root" />
			</dataSource>
		</environment>
	</environments>

        <!-- 这里配置映射 -->
	<mappers>
		<mapper resource="mapper/UserMapper.xml"/>
	</mappers>
</configuration>

 二. 在 mysql 数据库中创建 usertest表

 

 

create table users(
    username varchar(20) not null,
    upassword varchar(20) not null
);

insert into users values('admin','admin');
--谨记需要进行提交
commit;

三. 创建相关java类

 

1. 在 com.lsy.entity 包中创建 User.java

 

package com.lsy.entity;

public class User {
	private String username;
	private String upassword;
	
	public User() {
	}

	public User(String username, String wpassword) {
		super();
		this.username = username;
		this.upassword = wpassword;
	}

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public String getWpassword() {
		return upassword;
	}

	public void setWpassword(String wpassword) {
		this.upassword = wpassword;
	}

	@Override
	public String toString() {
		return "User [username=" + username + ", wpassword=" + upassword + "]";
	}
}

 2. 在 com.lsy.mapper 包中创建 UserMapper.java

 

 

package com.lsy.mapper;

import com.lsy.entity.User;

public interface UserMapper {

	User login(String username, String upassword);

}

3. 在 src/main/resources 中 创建 mapper目录 , 在mapper中创建 UserMapper.xml(此处与你上面mybatis.xml中配置的映射目录名称一样),内如如下:

 

 

<?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">
<!-- namespace中配置的路径与你所创建的UserMapper全类名一致  -->
<mapper namespace="com.lsy.mapper.UserMapper">

  <!-- resultType指定你查询语句所查询对象类型  #{0}和#{1} 表示你传入的两个参数username和upassword -->
  <select id="login" resultType="com.lsy.entity.User">
    select * from users where username = #{0} and upassword = #{1}
  </select>
  
</mapper>

四. 创建 Junit 测试类

package com.lsy.conn.test;

import static org.junit.Assert.*;

import java.io.IOException;
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.lsy.entity.User;
import com.lsy.mapper.UserMapper;

public class ConnTest {

	@Test
	public void test() {
		InputStream in = null;
		
		//加载Mybatis配置文件
		try {
			in = Resources.getResourceAsStream("mybatis.xml");
			//根据相关的mybatis配置文件, 创建连接SQLSessionFactory连接对象
			SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
			//创建出SQLSession对象
			SqlSession sqlSeesion = factory.openSession();
			//通过sqlSession取到映射接口
			UserMapper userMapper = sqlSeesion.getMapper(UserMapper.class);
			User user = userMapper.login("admin","admin");
			System.out.println(user);
			assertNotNull(user);
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

 

 

 

 

 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值