Mirai Hibernate Plugin
Mirai Hibernate 前置插件
Mirai Console 的前置插件,用于 Hibernate ORM 框架的初始化
插件自带聊天记录器 MiraiHibernateRecorder,
会记录 群聊/私聊 的内容到数据库方便其他插件使用,默认是 h2database 数据库(since 2.2.0+)
数据库配置在 config/xyz.cssxsh.mirai.plugin.mirai-hibernate-plugin/hibernate.properties
2.2.0 之前的版本的 默认数据库 为 sqlite, 你可以直接删掉 hibernate.properties, 让其重新生成 h2database 配置
数据库支持
本插件打包了以下版本的数据库驱动和连接池
mysql:mysql-connector-java:8.0.29org.xerial:sqlite-jdbc:3.36.0.3org.postgresql:postgresql:42.3.5com.h2database:h2:2.1.212com.zaxxer:HikariCP:5.0.1
需要其他数据库驱动支持请将 数据库驱动Jar包 放到 plugins 目录中一同被 mirai-console 加载
在插件项目中引用
repositories {
mavenCentral()
}
dependencies {
compileOnly("xyz.cssxsh.mirai:mirai-hibernate-plugin:${version}")
}
一些方法和类说明
-
MiraiHibernateConfiguration
配置的,对应于JvmPlugin的SessionFactory
默认将会读取(生成)在configFolder目录下的hibernate.properties作为配置文件
并且自动扫描加载JvmPlugin所在类包下的被javax.persistence.Entity标记的实体类 -
MiraiHibernateRecorder
是本插件自带的消息记录器,通过对MessageEvent和MessagePostSendEvent记录,保存消息历史到数据库 -
CriteriaBuilder.rand
MiraiHibernateConfiguration中会对 Sqlite 的random进行别名注册为rand统一SQL语句的中的随机函数名
示例代码
安装
MCL 指令安装
./mcl --update-package xyz.cssxsh.mirai:mirai-hibernate-plugin --channel stable --type plugin
手动安装
- 运行 Mirai Console 生成
plugins文件夹 - 从 Releases 下载
jar并将其放入plugins文件夹中
