User.java
package cn.edu.scnu.entity;
public class User {
private Integer id;
private String name;
private int age;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", name='" + name + '\'' +
", age=" + age +
'}';
}
}
UserDao.java
package cn.edu.scnu.dao;
import cn.edu.scnu.entity.User;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import java.util.List;
public interface UserDao {
@Insert("insert into users(id,username,age) values(#{id},#{name},#{age})")
public int saveUser(User user);
@Delete("delete from users where id=#{id}")
public int deleteUser(Integer id);
@Update("update users set username=#{name},age=#{age} where id=#{id}")
public int updateUser(User user);
@Select("select * from users where id=#{id}")
public User findOne(Integer id);
@Select("select * from users")
public List<User> findAll();
}
Test.java
package cn.edu.scnu;
import cn.edu.scnu.dao.UserDao;
import cn.edu.scnu.entity.User;
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.After;
import org.junit.Before;
import org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
public class Test2 {
private SqlSessionFactory sqlSessionFactory;
private SqlSession sqlSession;
@Before
public void init(){
String resource = "mybatis-config.xml";
try{
InputStream inputStream = Resources.getResourceAsStream(resource);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
sqlSession = sqlSessionFactory.openSession();
} catch (IOException e) {
e.printStackTrace();
}
}
@After
public void destroy(){
sqlSession.commit();
sqlSession.close();
}
@Test
public void addUser(){
User user = new User();
user.setId(2);
user.setName("乔峰");
user.setAge(34);
UserDao userDao = sqlSession.getMapper(UserDao.class);
int result = userDao.saveUser(user);
}
}
mybatis-config.xml
<mapper class="cn.edu.scnu.dao.UserDao"/>
本文介绍了一个使用MyBatis实现用户信息增删改查功能的Java示例。示例中定义了User类,包含基本属性及getter和setter方法;UserDao接口,定义了用户数据操作的方法,并通过MyBatis注解实现SQL语句;Test类用于测试增删改查功能。通过配置文件mybatis-config.xml将UserDao接口映射为实际的数据库操作。
841

被折叠的 条评论
为什么被折叠?



