最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mybatis-plus處理blob字段的完整示例代碼

 更新時間:2023年12月07日 09:34:54   作者:Java大師-  
在Spring Boot項目中使用MyBatis-Plus處理longblob字段時,我們可以按照本文的步驟進行操作,假設(shè) longblob 存儲的是字符串數(shù)據(jù),本文給大家提供完整示例代碼,感興趣的朋友參考下

在 Spring Boot 項目中使用 MyBatis-Plus 處理 longblob 字段時,我們可以按照以下步驟進行操作。假設(shè) longblob 存儲的是字符串數(shù)據(jù)。以下是完整的示例代碼:

添加依賴:在你的項目的 pom.xml 文件中添加 MyBatis-Plus 的依賴:

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>最新版本號</version>
</dependency>

創(chuàng)建 MyLongBlobTypeHandler 類:創(chuàng)建一個自定義的類型處理器 MyLongBlobTypeHandler 來處理 longblob 字段的數(shù)據(jù)。這個處理器會將 longblob 轉(zhuǎn)換為字符串。

import org.apache.ibatis.type.BaseTypeHandler;
import org.apache.ibatis.type.JdbcType;
import java.sql.*;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
@Component
public class MyLongBlobTypeHandler extends BaseTypeHandler<String> {
    @Override
    public void setNonNullParameter(PreparedStatement preparedStatement, int i, String s, JdbcType jdbcType) throws SQLException {
        preparedStatement.setBytes(i, s.getBytes(StandardCharsets.UTF_8));
    }
    @Override
    public String getNullableResult(ResultSet resultSet, String s) throws SQLException {
        byte[] bytes = resultSet.getBytes(s);
        return new String(bytes, StandardCharsets.UTF_8);
    }
    @Override
    public String getNullableResult(ResultSet resultSet, int i) throws SQLException {
        byte[] bytes = resultSet.getBytes(i);
        return new String(bytes, StandardCharsets.UTF_8);
    }
    @Override
    public String getNullableResult(CallableStatement callableStatement, int i) throws SQLException {
        byte[] bytes = callableStatement.getBytes(i);
        return new String(bytes, StandardCharsets.UTF_8);
    }
}

?2.定義實體類:創(chuàng)建一個實體類,用于映射數(shù)據(jù)庫表。在實體類中,使用 @TableField 注解來指定數(shù)據(jù)庫字段和類型處理器。例如下面文章的content內(nèi)容字段就是longblob字段,通過@TableField注解指定類型處理

@Data
@TableName("blog_article")
public class Article extends BaseEntity {
    private String name;
    private String url;
    private String tag;
    private Long channelId;
    private String channelName;
    @TableField(value = "content", typeHandler = MyLongBlobTypeHandler.class)
    private String content;
    private Integer orderNum;
    //是否啟用,Y啟用,N禁用
    private String enabled;
    //瀏覽數(shù)
    private Integer views;
    //description
    private String description;
    //keywords
    private String keywords;
}

?3.使用 MyBatis-Plus 正常插入即可:sevice層中正常使用,處理器會默認轉(zhuǎn)成longblob插入數(shù)據(jù)庫

@Service
public class ArticleService extends ServiceImpl<ArticleMapper, Article> {
    /**
     * 添加文章
     * @param article
     */
    public void add(@NotNull Article article){
        this.save(article);
    }
}

到此這篇關(guān)于mybatis-plus處理blob字段的文章就介紹到這了,更多相關(guān)mybatis-plus blob字段內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

大安市| 砀山县| 大港区| 定西市| 色达县| 彭水| 景洪市| 高密市| 佛山市| 上犹县| 白城市| 英超| 伊金霍洛旗| 阳原县| 沅江市| 沁水县| 积石山| 淮北市| 鄄城县| 英山县| 伊宁市| 新余市| 通海县| 华池县| 合阳县| 广灵县| 五台县| 江城| 沈阳市| 保德县| 化德县| 桐城市| 肇东市| 铜山县| 左云县| 陇西县| 安塞县| 会泽县| 于田县| 长武县| 新宁县|