MyBatis操作数据库——增删改查

新建项目:MyBatisOperateDatabaseLiuJie

设置Maven版本、配置文件以及仓库

导包:MySQL驱动包、框架基础包、添加MyBatis核心配置文件

1.select——查询单条数据

entity包:User

dao包:UserDao

在resources资源包下新建dao包:UserDao.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">
<mapper namespace="dao.UserDao">
<select id="selectUserById" resultType="entity.User">
SELECT * FROM user WHERE id = #{id}
</select>
</mapper>

Test:UserTest

测试运行:

2.select——查询多条数据

dao:UserDao.xml

<select id="selectUserList" resultType="entity.User">
SELECT * FROM user
</select>

使用List集合来装对象查询多条数据——Dao:UserDao

/**
* 查询所有用户信息
*
* @return
*/
List<User> selectUserList();

UserTest.java

// 调用查询所有用户信息的方法
List<User> userList = dao.selectUserList();
userList.forEach(u -> System.out.println(u));

测试运行:

3.insert——插入数据

UserDao.java

/**
* 新增用户信息
*
* @param user
* @return
*/
int insertUser(User user);

UserDao.xml

<insert id="insertUser" parameterType="entity.User">
INSERT INTO user VALUES (#{id},#{username},#{age},#{score})
</insert>

UserTest.java

测试运行:

4.update——修改数据

UserDao.java

/**
* 修改用户信息
*
* @param user
* @return
*/
int updateUserById(User user);

UserDao.xml

<update id="updateUserById" parameterType="entity.User">
UPDATE user SET
age = #{age},
username = #{username},
score = #{score}
WHERE id = #{id}
</update>

UserTest.java

// 调用通过用户id查询用户信息的方法
User userBefore = dao.selectUserById(8);
System.out.println(userBefore);
// 把成绩改为900
userBefore.setScore(900);
// 调用修改用户信息的方法
dao.updateUserById(userBefore);
// 调用通过用户id查询用户信息的方法
User userAfter = dao.selectUserById(8);
System.out.println(userAfter);

测试运行:

5.delect——删除数据

UserDao.java

/**
* 删除用户信息
*
* @param id
* @return
*/
int deleteUserById(Integer id);

UserDao.xml

<delete id="deleteUserById" parameterType="entity.User">
DELETE FROM user WHERE id = #{id}
</delete>

UserTest.java

// 调用删除用户信息的方法——————————删除一条数据
int count = dao.deleteUserById(8);

测试运行:

总代码:

UserDao.xml

 UserDao.java

UserTest.java

原文地址:https://www.cnblogs.com/Anm214/p/14598613.html