您的位置:首页 > 其它

mybatis配置(二)mybatis接口注解方式

2018-04-04 01:43 134 查看
同mybatis配置里面的前三步,1.创建java项目,2.添加jar包,3.创建数据库和表,添加数据

一.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.mybatis.model.User" />
</typeAliases>
<!-- 配置mybatis环境 -->
<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://localhost:3306/test" />
<property name="username" value="root" />
<property name="password" value="110119" />
</dataSource>
</environment>
</environments>
<!-- 使用注解的方式,此处就不需要配置mappers<mappers><mapper/></mappers> -->
</configuration>
二.创建实体类


/**

* @author wuchao

* @time 下午4:14:31

* @description TODO

*/

package com.mybatis.model;

/**

* @author wuchao

* @time 下午4:14:31

*

*/

public class User {

private int id;
private String name;
private String dept;
private String phone;
private String website;

/**
* @author wuchao
* @time 下午4:16:15
*/
public User() {
super();
// TODO Auto-generated constructor stub
}

/**
* @author wuchao
* @time 下午4:16:41
*/
public User(int id, String name, String dept, String phone, String website) {
super();
this.id = id;
this.name = name;
this.dept = dept;
this.phone = phone;
this.website = website;
}

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getDept() {
return dept;
}

public void setDept(String dept) {
this.dept = dept;
}

public String getPhone() {
return phone;
}

public void setPhone(String phone) {
this.phone = phone;
}

public String getWebsite() {
return website;
}

public void setWebsite(String website) {
this.website = website;
}


三.创建接口

/**
* @author wuchao
* @time 下午4:11:30
* @description TODO
*/
package com.mybatis.dao;

import org.apache.ibatis.annotations.Select;

import com.mybatis.model.User;

/**
* @author wuchao
* @time 下午4:11:30
*
*/
public interface IUser {

@Select("SELECT * FROM user WHERE id = #{id}")
public User getUserByID(Integer id);
}


四.创建测试类

/**
* @author wuchao
* @time 下午4:34:30
* @description TODO
*/
package test;

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.mybatis.dao.IUser;
import com.mybatis.model.User;

/**
* @author wuchao
* @time 下午4:34:30
*
*/
public class Test {

private static SqlSessionFactory sqlSessionFactory;
private static Reader reader;
static{
try {
reader = Resources.getResourceAsReader("mybatis-config.xml");
sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
//          Configuration configuration = sqlSessionFactory.getConfiguration();
//          System.out.println("1:"+configuration);
//          configuration.addMapper(IUser.class);
sqlSessionFactory.getConfiguration().addMapper(IUser.class);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
public static SqlSessionFactory getSession(){
return sqlSessionFactory;
}
public static void main(String args[]){
SqlSession session = sqlSessionFactory.openSession();
try {
IUser iuser = session.getMapper(IUser.class);
User user = iuser.getUserByID(1);
System.out.println("用户名:"+user.getName());
System.out.println("所属部门"+user.getDept());
System.out.println("联系方式"+user.getPhone());
System.out.println("网站"+user.getWebsite());
} catch (Exception e) {
// TODO: handle exception
}finally{
session.close();
}
}
}


五.项目结构和测试结果

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: