为了账号安全,请及时绑定邮箱和手机立即绑定

【九月打卡】第12天 生成数据库表文档

标签:
Java

课程名称:Spring Cloud / Alibaba 微服务架构实战

课程章节:第6章-授权、鉴权中心微服务总结

课程讲师:张勤一

课程内容:

1. 引入依赖

<!-- screw 生成数据库文档 -->
<dependency>
    <groupId>org.freemarker</groupId>
    <artifactId>freemarker</artifactId>
    <version>2.3.30</version>
</dependency>
<dependency>
    <groupId>cn.smallbun.screw</groupId>
    <artifactId>screw-core</artifactId>
    <version>1.0.3</version>
</dependency>

2. 编写测试用例

/**
 * 数据库表文档生成
 */
@SpringBootTest
@RunWith(SpringRunner.class)
public class DBDocTest {

    @Autowired
    private ApplicationContext applicationContext;


    @Test
    public void buildDBDoc(){
        DataSource dataSource = applicationContext.getBean(DataSource.class);

        //生成文件配置
        EngineConfig engineConfig = EngineConfig.builder()
                //存放路径
                .fileOutputDir("D:/2022/personal")
                //是否打开
                .openOutputDir(false)
                //文件类型
                .fileType(EngineFileType.MD)
                //格式
                .produceType(EngineTemplateType.freemarker)
                .build();

        //生成文档, 数据库名_description_version.md
        Configuration configuration = Configuration.builder()
                .version("1.0.0")
                .description("wjl-xiaowan-home")
                .dataSource(dataSource)
                .engineConfig(engineConfig)
                .produceConfig(getProducerConfig())
                .build();

        //执行完成
        new DocumentationExecute(configuration).execute();
    }


    /**
     * 配置想要生成的数据表和需要忽略的数据表
     * @return
     */
    public ProcessConfig getProducerConfig(){

        //需要忽略的数据表
        List<String> ignoreTableName = Collections.singletonList("undo_log");
        //忽略 a, b开头的数据表
        List<String> ignorePrefix = Arrays.asList("a", "b");
        //忽略表后缀
        List<String> ignoreSuffix = Arrays.asList("_test", "_Test");

        return ProcessConfig.builder()
                //根据名称指定表生成
                .designatedTableName(Collections.emptyList())
                .designatedTablePrefix(Collections.emptyList())
                .designatedTableSuffix(Collections.emptyList())
                //忽略的表
                .ignoreTableName(ignoreTableName)
                .ignoreTablePrefix(ignorePrefix)
                .ignoreTableSuffix(ignoreSuffix)
                .build();
    }
}

tips 数据库配置能够正常连接

课程截图:

图片描述
图片描述

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消