diff --git a/biji-houdaun/pom.xml b/biji-houdaun/pom.xml
index 8725ca7..6386854 100644
--- a/biji-houdaun/pom.xml
+++ b/biji-houdaun/pom.xml
@@ -71,11 +71,11 @@
org.springframework.boot
spring-boot-starter-aop
-
+
- org.xerial
- sqlite-jdbc
- 3.36.0.3
+ com.mysql
+ mysql-connector-j
+ runtime
cn.hutool
@@ -110,6 +110,7 @@
+
commons-codec
diff --git a/biji-houdaun/src/main/resources/application-dev.yml b/biji-houdaun/src/main/resources/application-dev.yml
index 70b646c..8529cab 100644
--- a/biji-houdaun/src/main/resources/application-dev.yml
+++ b/biji-houdaun/src/main/resources/application-dev.yml
@@ -1,18 +1,31 @@
spring:
datasource:
- driver-class-name: org.sqlite.JDBC
- url: jdbc:sqlite:C:\it\houtaigunli\biji\mydatabase.db
+# driver-class-name: org.sqlite.JDBC
+# url: jdbc:sqlite:C:\it\houtaigunli\biji\mydatabase.db
+# jpa:
+# hibernate:
+# ddl-auto: none
+# show-sql: true
+# properties:
+# hibernate:
+# format_sql: true
+# dialect: org.hibernate.dialect.SQLiteDialect
+#
+
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ url: jdbc:mysql://panel-jp.998521.xyz:37857/biji_db?useSSL=false&serverTimezone=UTC&characterEncoding=utf8
+ username: root
+ password: Ll@12331100
jpa:
hibernate:
- ddl-auto: none
+ ddl-auto: update
show-sql: true
properties:
hibernate:
format_sql: true
- dialect: org.hibernate.dialect.SQLiteDialect
+ dialect: org.hibernate.dialect.MySQLDialect
-
-# MyBatis-Plus??
+# MyBatis-Plus配置
mybatis-plus:
mapper-locations: classpath:mapper/*.xml
configuration:
diff --git a/biji-houdaun/src/main/resources/application-prod.yml b/biji-houdaun/src/main/resources/application-prod.yml
index 8222a95..edb6555 100644
--- a/biji-houdaun/src/main/resources/application-prod.yml
+++ b/biji-houdaun/src/main/resources/application-prod.yml
@@ -1,15 +1,17 @@
spring:
- datasource:
- driver-class-name: org.sqlite.JDBC
- url: jdbc:sqlite:/data/mydatabase.db
- jpa:
- hibernate:
- ddl-auto: none
- show-sql: false
- properties:
- hibernate:
- format_sql: false
- dialect: org.hibernate.dialect.SQLiteDialect
+# datasource:
+# driver-class-name: org.sqlite.JDBC
+# url: jdbc:sqlite:/data/mydatabase.db
+# jpa:
+# hibernate:
+# ddl-auto: none
+# show-sql: false
+# properties:
+# hibernate:
+# format_sql: false
+# dialect: org.hibernate.dialect.SQLiteDialect
+
+
diff --git a/biji-qianduan/src/components/home/NoteEditor.vue b/biji-qianduan/src/components/home/NoteEditor.vue
index 21f421b..4ebc5b1 100644
--- a/biji-qianduan/src/components/home/NoteEditor.vue
+++ b/biji-qianduan/src/components/home/NoteEditor.vue
@@ -117,6 +117,19 @@ onBeforeUnmount(() => {
if (vditor.value) {
vditor.value.destroy();
}
+ if (bijiId.value){
+ // 发送完整的笔记对象,确保包含所有必要字段
+ updateMarkdown({
+ id: bijiId.value,
+ content: vditor.value.getValue(),
+ title: props.editData.title,
+ groupingId: props.editData.groupingId,
+ fileName: props.editData.fileName,
+ isPrivate: props.editData.isPrivate
+ });
+ }
+ // 离开页面后清空 bijiId.value 变量
+ bijiId.value = null;
});
watch(() => props.editData, (newVal, oldVal) => {
diff --git a/mydatabase.db b/mydatabase.db
index 5aa95c3..327ee4d 100644
Binary files a/mydatabase.db and b/mydatabase.db differ
diff --git a/sql/all.sql b/sql/all.sql
new file mode 100644
index 0000000..5a357be
--- /dev/null
+++ b/sql/all.sql
@@ -0,0 +1,183 @@
+/*
+ Navicat Premium Dump SQL
+
+ Source Server : biji数据库
+ Source Server Type : SQLite
+ Source Server Version : 3045000 (3.45.0)
+ Source Schema : main
+
+ Target Server Type : SQLite
+ Target Server Version : 3045000 (3.45.0)
+ File Encoding : 65001
+
+ Date: 06/01/2026 20:48:23
+*/
+
+PRAGMA foreign_keys = false;
+
+-- ----------------------------
+-- Table structure for grouping
+-- ----------------------------
+DROP TABLE IF EXISTS "grouping";
+CREATE TABLE "grouping" (
+ "id" INTEGER NOT NULL DEFAULT 0,
+ "grouping" TEXT NOT NULL,
+ "parentId" INTEGER,
+ "is_deleted" INTEGER DEFAULT 0,
+ "deleted_at" DATETIME,
+ "deleted_by" INTEGER,
+ PRIMARY KEY ("id")
+);
+
+PRAGMA foreign_keys = true;
+
+
+
+PRAGMA foreign_keys = false;
+
+-- ----------------------------
+-- Table structure for image
+-- ----------------------------
+DROP TABLE IF EXISTS "image";
+CREATE TABLE "image" (
+ "id" INTEGER PRIMARY KEY AUTOINCREMENT,
+ "markdown_id" INTEGER,
+ "original_name" TEXT NOT NULL,
+ "stored_name" TEXT NOT NULL,
+ "url" TEXT NOT NULL,
+ "size" INTEGER NOT NULL,
+ "content_type" TEXT NOT NULL,
+ "created_at" DATETIME DEFAULT CURRENT_TIMESTAMP,
+ UNIQUE ("stored_name" ASC)
+);
+
+-- ----------------------------
+-- Auto increment value for image
+-- ----------------------------
+UPDATE "sqlite_sequence" SET seq = 25 WHERE name = 'image';
+
+PRAGMA foreign_keys = true;
+
+
+
+
+PRAGMA foreign_keys = false;
+
+-- ----------------------------
+-- Table structure for image_name
+-- ----------------------------
+DROP TABLE IF EXISTS "image_name";
+CREATE TABLE "image_name" (
+ "id" INTEGER NOT NULL,
+ "markdown_id" INTEGER NOT NULL,
+ "file_name" text NOT NULL,
+ PRIMARY KEY ("id")
+);
+
+PRAGMA foreign_keys = true;
+
+
+
+
+
+PRAGMA foreign_keys = false;
+
+-- ----------------------------
+-- Table structure for markdown_file
+-- ----------------------------
+DROP TABLE IF EXISTS "markdown_file";
+CREATE TABLE "markdown_file" (
+ "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+ "grouping_id" integer NOT NULL DEFAULT 1,
+ "title" TEXT NOT NULL,
+ "file_name" TEXT NOT NULL,
+ "content" TEXT NOT NULL,
+ "created_at" datetime DEFAULT CURRENT_TIMESTAMP,
+ "updated_at" datetime DEFAULT CURRENT_TIMESTAMP,
+ "is_deleted" INTEGER DEFAULT 0,
+ "deleted_at" DATETIME,
+ "deleted_by" INTEGER,
+ "is_private" integer DEFAULT 0
+);
+
+-- ----------------------------
+-- Auto increment value for markdown_file
+-- ----------------------------
+
+PRAGMA foreign_keys = true;
+
+
+
+PRAGMA foreign_keys = false;
+
+-- ----------------------------
+-- Table structure for registration_codes
+-- ----------------------------
+DROP TABLE IF EXISTS "registration_codes";
+CREATE TABLE "registration_codes" (
+ "id" integer NOT NULL PRIMARY KEY AUTOINCREMENT,
+ "code" TEXT NOT NULL,
+ "expiry_time" TEXT NOT NULL,
+ "created_by" TEXT,
+ "created_at" TEXT DEFAULT (datetime('now','localtime'))
+);
+
+-- ----------------------------
+-- Auto increment value for registration_codes
+-- ----------------------------
+UPDATE "sqlite_sequence" SET seq = 2 WHERE name = 'registration_codes';
+
+-- ----------------------------
+-- Indexes structure for table registration_codes
+-- ----------------------------
+CREATE UNIQUE INDEX "uk_code"
+ ON "registration_codes" (
+ "code" ASC
+ );
+
+PRAGMA foreign_keys = true;
+
+
+
+
+PRAGMA foreign_keys = false;
+
+-- ----------------------------
+-- Table structure for system_settings
+-- ----------------------------
+DROP TABLE IF EXISTS "system_settings";
+CREATE TABLE "system_settings" (
+ "setting_key" TEXT NOT NULL,
+ "setting_value" TEXT,
+ "description" TEXT,
+ PRIMARY KEY ("setting_key")
+);
+
+PRAGMA foreign_keys = true;
+
+
+
+PRAGMA foreign_keys = false;
+
+-- ----------------------------
+-- Table structure for user
+-- ----------------------------
+DROP TABLE IF EXISTS "user";
+CREATE TABLE "user" (
+ "id" INTEGER PRIMARY KEY AUTOINCREMENT,
+ "username" TEXT NOT NULL,
+ "password" TEXT NOT NULL,
+ "email" TEXT,
+ "created_at" DATETIME DEFAULT CURRENT_TIMESTAMP,
+ "updated_at" DATETIME DEFAULT CURRENT_TIMESTAMP,
+ "token" TEXT,
+ "token_enddata" DATETIME,
+ UNIQUE ("username" ASC)
+);
+
+-- ----------------------------
+-- Auto increment value for user
+-- ----------------------------
+UPDATE "sqlite_sequence" SET seq = 5 WHERE name = 'user';
+
+PRAGMA foreign_keys = true;
diff --git a/sql/mysql/all.sql b/sql/mysql/all.sql
new file mode 100644
index 0000000..7516cec
--- /dev/null
+++ b/sql/mysql/all.sql
@@ -0,0 +1,95 @@
+-- MySQL 5.7.44 建表脚本(由 SQLite 转换)
+-- 统一字符集与引擎
+SET NAMES utf8mb4;
+SET FOREIGN_KEY_CHECKS = 0;
+
+-- 1. 分组表
+DROP TABLE IF EXISTS `grouping`;
+CREATE TABLE `grouping` (
+ `id` bigintBIGINT(20) NOT NULL AUTO_INCREMENT,
+ `grouping` VARCHAR(255) NOT NULL,
+ `parentId` BIGINT(20) DEFAULT NULL,
+ `is_deleted` TINYINT(1) DEFAULT 0,
+ `deleted_at` DATETIME DEFAULT NULL,
+ `deleted_by` BIGINT(20) DEFAULT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- 2. 图片表
+DROP TABLE IF EXISTS `image`;
+CREATE TABLE `image` (
+ `id` BIGINT(20) NOT NULL AUTO_INCREMENT,
+ `markdown_id` BIGINT(20) DEFAULT NULL,
+ `original_name` VARCHAR(255) NOT NULL,
+ `stored_name` VARCHAR(255) NOT NULL,
+ `url` VARCHAR(500) NOT NULL,
+ `size` BIGINT NOT NULL,
+ `content_type` VARCHAR(100) NOT NULL,
+ `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_stored_name` (`stored_name`)
+) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8mb4;
+
+-- 3. 图片名称映射表
+DROP TABLE IF EXISTS `image_name`;
+CREATE TABLE `image_name` (
+ `id` BIGINT(20) NOT NULL AUTO_INCREMENT,
+ `markdown_id` BIGINT(20) NOT NULL,
+ `file_name` TEXT NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- 4. Markdown 文件表
+DROP TABLE IF EXISTS `markdown_file`;
+CREATE TABLE `markdown_file` (
+ `id` BIGINT(20) NOT NULL AUTO_INCREMENT,
+ `grouping_id` BIGINT(20) NOT NULL DEFAULT 1,
+ `title` VARCHAR(255) NOT NULL,
+ `file_name` VARCHAR(255) NOT NULL,
+ `content` LONGTEXT NOT NULL,
+ `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP,
+ `updated_at` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `is_deleted` TINYINT(1) DEFAULT 0,
+ `deleted_at` DATETIME DEFAULT NULL,
+ `deleted_by` BIGINT(20) DEFAULT NULL,
+ `is_private` TINYINT(1) DEFAULT 0,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- 5. 注册邀请码表
+DROP TABLE IF EXISTS `registration_codes`;
+CREATE TABLE `registration_codes` (
+ `id` BIGINT(20) NOT NULL AUTO_INCREMENT,
+ `code` VARCHAR(255) NOT NULL,
+ `expiry_time` DATETIME NOT NULL,
+ `created_by` VARCHAR(100) DEFAULT NULL,
+ `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_code` (`code`)
+) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4;
+
+-- 6. 系统设置表
+DROP TABLE IF EXISTS `system_settings`;
+CREATE TABLE `system_settings` (
+ `setting_key` VARCHAR(100) NOT NULL,
+ `setting_value` TEXT,
+ `description` TEXT,
+ PRIMARY KEY (`setting_key`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- 7. 用户表
+DROP TABLE IF EXISTS `user`;
+CREATE TABLE `user` (
+ `id` BIGINT(20) NOT NULL AUTO_INCREMENT,
+ `username` VARCHAR(50) NOT NULL,
+ `password` VARCHAR(255) NOT NULL,
+ `email` VARCHAR(100) DEFAULT NULL,
+ `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP,
+ `updated_at` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `token` VARCHAR(255) DEFAULT NULL,
+ `token_enddata` DATETIME DEFAULT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_username` (`username`)
+) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4;
+
+SET FOREIGN_KEY_CHECKS = 1;
\ No newline at end of file