亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

本篇文章主要介紹了使用MyBatis框架完成數(shù)據(jù)庫的增、刪、改、查操作。

準(zhǔn)備工作

運(yùn)行schema.sql和data.sql腳本文件中的 SQL 語句創(chuàng)建t_user表并添加部分測試數(shù)據(jù)。

schema.sql:

DROP TABLE IF EXISTS `t_user`;
create table t_user
(
    id          int auto_increment primary key COMMENT '主鍵',
    username    varchar(64) null COMMENT '用戶名',
    nick_name   varchar(64) null COMMENT '昵稱',
    password    varchar(64) null COMMENT '密碼',
    phone       varchar(32) null COMMENT '手機(jī)號',
    create_time varchar(64) null COMMENT '創(chuàng)建時(shí)間'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='用戶表';

data.sql:

insert into t_user(`username`, `nick_name`, `password`, `phone`, `create_time`)
values ('user01', 'user01', '123456', '15900001111', '2022-07-14 16:00:00');
insert into t_user(`username`, `nick_name`, `password`, `phone`, `create_time`)
values ('user02', 'user02', '123456', '15900001111', '2022-07-14 16:00:00');
insert into t_user(`username`, `nick_name`, `password`, `phone`, `create_time`)
values ('user03', 'user03', '123456', '15900001111', '2022-07-14 16:00:00');
insert into t_user(`username`, `nick_name`, `password`, `phone`, `create_time`)
values ('user04', 'user04', '123456', '15900001111', '2022-07-14 16:00:00');

使用MyBatis框架操作數(shù)據(jù)庫步驟:

(1)定義JAVA實(shí)體

User.java

@Data
public class User {
    private Integer id;
    private String username;
    private String nickName;
    private String password;
    private String phone;
    private String createTime;
}

(2)定義MApper接口

UserDao.java

public interface UserDao {
    void insert(User user);
    void update(User user);
    User findByUsername(String username);
    void deleteById(Integer id);
}

(3)編寫XML映射文件

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="com.jasmine.mybatis.demo.dao.UserDao">
    <insert id="insert" parameterType="User">
        insert into t_user(`username`, `nick_name`, `password`, `phone`, `create_time`)
        values(#{username}, #{nickName}, #{password}, #{phone}, #{createTime})
    </insert>
    <update id="update" parameterType="User">
        update t_user
        set username = #{username}, nick_name = #{nickName}, password = #{password}, phone = #{phone}, create_time = #{createTime}
        where id = #{id}
    </update>
    <select id="findByUsername" parameterType="String" resultType="User">
        select id, username, nick_name as nickName, password, phone, create_time as createTime
        from t_user where username = #{username}
    </select>
    <delete id="deleteById" parameterType="Integer">
        delete from t_user where id = #{id}
    </delete>
</mapper>

(4)編寫MyBatis主配置文件

MyBatis使用 XML 文件格式描述配置信息,內(nèi)容如下:

<?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.jasmine.mybatis.demo.entity.User" />
    </typeAliases>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC" />
            <dataSource type="POOLED">
                <property name="driver" value="com.MySQL.cj.jdbc.Driver" />
                <property name="url" value="jdbc:mysql://localhost:3306/mybatis" />
                <property name="username" value="root" />
                <property name="password" value="abc123" />
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="mappers/UserDao.xml" />
    </mappers>
</configuration>

(5)編寫測試類

Demo.java

public class Demo {
    public static void main(String[] args) throws IOException {
        // 獲取配置文件輸入流
        InputStream inputStream = Resources.getResourceAsStream("mybatis-config.xml");
        // 創(chuàng)建 SqlSessionFactory
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        // 獲取 SqlSession
        SqlSession sqlSession = sqlSessionFactory.openSession();
        // 獲取 Mapper 接口
        UserDao userDao = sqlSession.getMapper(UserDao.class);
        // 新增一個(gè)用戶
        User newUser = new User();
        newUser.setUsername("new-user");
        newUser.setNickName("新建的用戶(修改前)");
        newUser.setPassword("123123");
        newUser.setPhone("13900001111");
        newUser.setCreateTime("2022-07-14 16:00:00");
        userDao.insert(newUser);
        // 根據(jù)用戶名獲取用戶信息
        User user = userDao.findByUsername("new-user");
        System.out.println("########## 修改前用戶信息 ##########");
        System.out.println(new Gson().toJson(user));
        // 修改用戶信息
        user.setUsername("update-user");
        user.setNickName("新建的用戶(修改后)");
        userDao.update(user);
        user = userDao.findByUsername("update-user");
        System.out.println("########## 修改后用戶信息 ##########");
        System.out.println(new Gson().toJson(user));
        // 刪除用戶
        userDao.deleteById(user.getId());
    }
}

輸出結(jié)果:

########## 修改前用戶信息 ##########
{"id":5,"username":"new-user","nickName":"新建的用戶(修改前)","password":"123123","phone":"13900001111","createTime":"2022-07-14 16:00:00"}
########## 修改后用戶信息 ##########
{"id":5,"username":"update-user","nickName":"新建的用戶(修改后)","password":"123123","phone":"13900001111","createTime":"2022-07-14 16:00:00"}

分享到:
標(biāo)簽:MyBatis
用戶無頭像

網(wǎng)友整理

注冊時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定