日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql创建generator字段_springmvc+mybatsi-generator生成不了字段注释的解决方案

發布時間:2025/3/20 数据库 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql创建generator字段_springmvc+mybatsi-generator生成不了字段注释的解决方案 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在我早期搭建我的個人博客的時候,由于當時比較空閑,所以就沒有使用mybatis-generator框架來生成mybatis文件,都還是自己一個個的親手寫,這次重構的時候,就想著將它框架集成進去,但也不知道為了點兒啥,就是生成不了mysql表字段的注釋。

-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">

我使用的mybatis-generator框架是1.3.6版本,上面是我的generatorConfig.xml配置文件,這個配置文件是我從其他項目拷貝過來的,除了修改數據庫信息以外,并沒有其他改動。

平時使用的時候,我都是直接通過maven插件的方式運行的,都能正確生成javabean的字段注釋,但是在這個項目運行的時候,就是生成不了,就算是將注釋配置打開,生成的也都是框架本身自帶的一堆英文,debug了一圈,發現它就是不走生成自定義注釋的那段代碼,百思不得其解(唯一不一樣的地方,就在于正常的是springboot項目,而我這個是springmvc項目,詭異,,,如果后面我找到問題原因了,會再寫文章做詳細分析)。

在網上找了一圈,也沒有發現什么好的解決方案,不過倒是看到了另外一種思路:不使用maven插件方式,自定義一個CommentGenerator,最終問題得到了解決。。。

1、自定義一個CommentGenerator;

package com.wolffy.jwcz.dao.plugin;

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.Properties;

import org.mybatis.generator.api.IntrospectedColumn;

import org.mybatis.generator.api.IntrospectedTable;

import org.mybatis.generator.api.dom.java.Field;

import org.mybatis.generator.api.dom.java.InnerClass;

import org.mybatis.generator.api.dom.java.Method;

import org.mybatis.generator.internal.DefaultCommentGenerator;

/**

* 自定義注釋生成器

* Created by SongFei on 2020/09/21.

*/

public classMyCommentGeneratorextendsDefaultCommentGenerator{

private Properties properties;

private Properties systemPro;

private boolean suppressDate;

private boolean suppressAllComments;

private String currentDateStr;

publicMyCommentGenerator(){

super();

properties = new Properties();

systemPro = System.getProperties();

suppressDate = false;

suppressAllComments = false;

currentDateStr = (new SimpleDateFormat("yyyy-MM-dd")).format(new Date());

}

publicvoidaddFieldComment(Field field, IntrospectedTable introspectedTable,

IntrospectedColumn introspectedColumn){

if (suppressAllComments) {

return;

}

StringBuilder sb = new StringBuilder();

field.addJavaDocLine("/**");

sb.append(" * ");

sb.append(introspectedColumn.getRemarks());

field.addJavaDocLine(sb.toString().replace("\n", " "));

field.addJavaDocLine(" */");

}

publicvoidaddFieldComment(Field field, IntrospectedTable introspectedTable){

}

publicvoidaddGeneralMethodComment(Method method, IntrospectedTable introspectedTable){

}

publicvoidaddGetterComment(Method method, IntrospectedTable introspectedTable,

IntrospectedColumn introspectedColumn){

}

publicvoidaddSetterComment(Method method, IntrospectedTable introspectedTable,

IntrospectedColumn introspectedColumn){

}

publicvoidaddClassComment(InnerClass innerClass, IntrospectedTable introspectedTable,booleanmarkAsDoNotDelete){

}

publicvoidaddClassComment(InnerClass innerClass, IntrospectedTable introspectedTable){

}

}

2、在配置文件中引入自定義的CommentGenerator(上面的generatorConfig.xml中已經寫了,這里不再重復);

3、寫一個main方法,運行自定義的CommentGenerator;

package com.wolffy.jwcz.dao;

import java.io.InputStream;

import java.util.ArrayList;

import java.util.List;

import org.mybatis.generator.api.MyBatisGenerator;

import org.mybatis.generator.config.Configuration;

import org.mybatis.generator.config.xml.ConfigurationParser;

import org.mybatis.generator.internal.DefaultShellCallback;

/**

* 快速生成mybatis配置文件

* Created by SongFei on 2020/09/21.

*/

public class MybatisGenerator{

public static void main(String[] args){

MybatisGenerator generator = new MybatisGenerator();

System.out.println(System.getProperty("user.dir"));

System.out.println(generator.getClass().getResource("/").getPath());

generator.run();

}

public void run(){

try {

InputStream resourceAsStream = this.getClass().getClassLoader().getResourceAsStream("generatorConfig.xml");

List warnings = new ArrayList<>();

ConfigurationParser parser = new ConfigurationParser(warnings);

Configuration config = parser.parseConfiguration(resourceAsStream);

DefaultShellCallback callback = new DefaultShellCallback(true);

MyBatisGenerator generator = new MyBatisGenerator(config, callback, warnings);

generator.generate(null);

for (String warning : warnings) {

System.err.println(">" + warning);

}

} catch (Exception e) {

e.printStackTrace();

}

}

}

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的mysql创建generator字段_springmvc+mybatsi-generator生成不了字段注释的解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。