因为本文章主要围绕着项目开发进行,所以前言不做开头,直接上内容。

添加字段

我们的渠道表,我看到若依脚手架当中有一个是否删除的标志字段,所以我这里也添加一下:

ALTER TABLE `tienchin_channel`
ADD COLUMN `del_flag` char(1) NULL DEFAULT '0' COMMENT '删除标志(0代表存在 2代表删除)' AFTER `update_time`;

新建模块

配置模块信息:

信息自己照着上方进行输入即可,具体的每一个选项,做这种项目不做过多介绍,因为并不是什么新的技术点,点击 Create。

channel 模块需要依赖一下 tienchin-common。

渠道管理最终的 pom.xml 内容:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>top.it6666</groupId>
<artifactId>tienchin</artifactId>
<version>3.8.5</version>
</parent>
<artifactId>tienchin-channel</artifactId>
<description>
渠道管理模块
</description> <dependencies>
<!--
通用工具
-->
<dependency>
<groupId>top.it6666</groupId>
<artifactId>tienchin-common</artifactId>
</dependency>
</dependencies>
</project>

定义版本号

父工程当中定义渠道管理模块版本号:

<!--
渠道管理
-->
<dependency>
<groupId>top.it6666</groupId>
<artifactId>tienchin-channel</artifactId>
<version>${tienchin.version}</version>
</dependency>

注意点:

  • 渠道管理模块 version 的版本号要与当前父工程 pom.xml 内容中 tienchin.version 一致否则会报错

tienchin-admin 依赖 tienchin-channel:

<!--
渠道管理
-->
<dependency>
<groupId>top.it6666</groupId>
<artifactId>tienchin-channel</artifactId>
</dependency>

业务代码都写在 tienchin-channel 模块当中,admin 是 web 接口的入口,所以依赖调用一下我们写的业务类代码即可。

加入单元测试

在 tienchin-admin 加入依赖:

<!--
单元测试
-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>

更改 spring-boot 版本号为 2.5.13,并且将原先的版本号写在 dependencies 改造成定义在 properties 当中:

<spring-boot.version>2.5.13</spring-boot.version>

加入 MyBatisPlus 代码生成器

在父工程模块当中管理 MyBatisPlus 版本号:

<mybatis-plus-generator.version>3.5.3</mybatis-plus-generator.version>
<!--
MyBatisPlus 代码生成器
-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>${mybatis-plus-generator.version}</version>
</dependency>

引入依赖:

<!--
MyBatisPlus 代码生成器
-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
</dependency> <!--
FreeMarker 是一个用 Java 编写的模板引擎。它不是用于生成 HTML 的 web 框架,而是一个用于生成文本输出的模板引擎。但在 web 开发中,它常常被用于生成 HTML。以下是 FreeMarker 的一些关键特点和用途:
1. **文本生成**:FreeMarker 主要是用来基于模板生成文本输出的。这可以是 HTML、XML、邮件正文,或者其他任何的文本格式。
2. **数据驱动**:你可以在模板中使用预定义的数据模型。当模板被处理时,FreeMarker 将这些数据与模板结合起来生成输出。
3. **灵活性**:FreeMarker 提供了丰富的内置函数和指令,允许开发者执行循环、条件判断和其他逻辑操作。
4. **与 web 框架集成**:虽然 FreeMarker 本身不是一个 web 框架,但它经常与 Java web 框架(如 Spring MVC)集成,作为视图技术来生成 HTML 页面。
5. **与 Java 集成**:FreeMarker 可以与 Java 对象轻松集成,这意味着你可以在模板中直接访问和使用 Java 对象的属性和方法。
6. **无依赖**:FreeMarker 不依赖于任何特定的 web 或应用服务器,因此可以在任何 Java 环境中使用。
7. **安全性**:FreeMarker 被设计为在安全受限的环境中运行,例如在服务器端为不受信任的用户生成内容。
总的来说,FreeMarker 是一个强大而灵活的模板引擎,适用于从简单的文本生成到复杂的 web 页面渲染等各种场景。
-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>

本人在 MyBatisPlus 官网 copy 了一份代码,发现有问题,然后,我改造了一下,出现问题的代码效果如下图:

改造之后的代码,也是最终的代码,url, username, password 需要换成你们自己的:

/**
* @author BNTang
* @version 1.0
* @description MyBatisPlus CRUD 代码生成器
* @since 2023-17-20
**/
@SpringBootTest
public class GenerateCode {
@Test
void generateChannel() {
String path = "E:\\Desktop\\TienChin\\tienchin\\tienchin-channel\\src\\main"; FastAutoGenerator.create(
"url",
"username",
"password"
)
.globalConfig(builder ->
builder
// 设置作者
.author("BNTang")
// 覆盖已生成文件
.fileOverride()
// 指定输出目录
.outputDir(path + "\\java")) .packageConfig(builder ->
builder
// 设置父包名
.parent("top.it6666")
// 设置父包模块名
.moduleName("channel")
// 设置mapperXml生成路径
.pathInfo(Collections.singletonMap(OutputFile.xml, path + "\\resources\\mapper"))) .strategyConfig(builder ->
builder
// 设置需要生成的表名
.addInclude("tienchin_channel")
// 设置过滤表前缀
.addTablePrefix("tienchin_")) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
.templateEngine(new FreemarkerTemplateEngine())
.execute();
}
}

运行

点击单元测试的 run 按钮,就可以生成对应的模块文件夹如下图:

最后将 controller 移动到 tienchin-admin 模块当中的 top.it6666.web.controller.tienchin 下,本章节到此结束,主要就是新建了一下我们的渠道管理模块,下一节将进行业务代码的开发。

TienChin 渠道管理-工程创建的更多相关文章

  1. Android开发之基于AndroidStudio环境搭建和工程创建

    断断续续的学习安卓也有一段时间了.因为之前是搞iOS开发的, 之前有关iOS的博客请看<我的iOS开发系列博文>.<我的Objective-C系列文章>和<窥探Swift ...

  2. 第1天:Django框架简介与工程创建

    Django简介 Django特点 环境搭建 创建工程 启动服务 使用pycharm打开工程 创建子应用 Django简介 Django,是用Python语言写的开源web开发框架,并遵循MVC设计. ...

  3. Code First开发系列之管理数据库创建,填充种子数据以及LINQ操作详解

    返回<8天掌握EF的Code First开发>总目录 本篇目录 管理数据库创建 管理数据库连接 管理数据库初始化 填充种子数据 LINQ to Entities详解 什么是LINQ to ...

  4. 8天掌握EF的Code First开发系列之3 管理数据库创建,填充种子数据以及LINQ操作详解

    本文出自8天掌握EF的Code First开发系列,经过自己的实践整理出来. 本篇目录 管理数据库创建 管理数据库连接 管理数据库初始化 填充种子数据 LINQ to Entities详解 什么是LI ...

  5. 161130、Dubbo+SpringMVC工程创建详解

    Dubbo出现的目的是为了应对现在高并发,高数据量请求的问题.目前的垂直应用架构已经无法满足现在大数据的冲击,SOA就应运而生,而Dubbo在国内使用的还是比较多,稳定性也比较不错. 架构 节点角色说 ...

  6. VC++2008 用空工程创建 DLL

    VC++2008 用空工程创建 DLL 一.创建 DLL 工程项目: 1)点击菜单[File] -> [New] -> [Project...] 弹出 “New Project” 对话框: ...

  7. GPRS管理与创建APN拨号连接(转)

    源:http://www.cnblogs.com/michael-zhangyu/archive/2009/07/04/1516797.html 本文主要介绍一些GPRS管理与创建APN拨号连接相关的 ...

  8. 全易通人事考勤工资验厂管理系统软件创建连接SQL2000数据库的操作方法和说明

    全易通人事考勤工资验厂管理系统软件创建连接SQL2000数据库的操作方法和说明.全易通人事考勤工资验厂管理系统软件,有2种数据库,一个是ACCESS,另一个是SQL.不过由于ACCESS数据库比较小, ...

  9. Django初探——工程创建以及models数据库相关配置

    Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. ...

  10. 怎样使用projectproperty sheet(.vsprops)来管理工程

    怎样使用projectproperty sheet(.vsprops)来管理工程 IDE:VS2005 前言 Project Property Sheet的意思是项目属性表,在大型项目中基本上都会使用 ...

随机推荐

  1. GPT-4测评,大家先别急,图片输入还没来

    昨天GPT-4朋友圈刷屏,我更新了一篇小文章,极简罗列GPT-4的一些情报: 1 ChatGPT Plus用户才可试用GPT-4 2 试用阶段每四小时最多100条信息 3 知识库还是2021年 4 上 ...

  2. 干掉 Navicat! 一款数据分析师必备的数据库可视化工具

    数据开发,离不开数据库,一款优秀的数据库开发和管理工具可以达到事半功倍的效果.市面上比较流行的数据库管理工具主要有Navicat.DBeaver.SQLyog等等,Navicat是其中的无冕之王,其拳 ...

  3. LaTex常用数学符号整理

    在论文和博客的写作中,经常会用到Latex的语法来书写数学公式,一份详细的数学符号对照表必不可少,本文重写了部分 Markdown 公式指导手册 . 在线Latex公式编辑器 -1.求和积分的上下标位 ...

  4. AtCoder Beginner Contest 179 个人题解(C欧拉筛,D前缀和,E循环节,F线段树)

    补题链接:Here A - Plural Form 字符串,末尾有 s 的加es,不然加 s . B - Go to Jail 输入的时候判断一下是否连续相等即可 C - A x B + C (mat ...

  5. AtCoder Beginner Contest 196 个人题解

    A - Difference Max 区间左端减去区间右端 int main() { ios_base::sync_with_stdio(false), cin.tie(0); int a, b, c ...

  6. Java字节码与反射机制

    字节码(Byte Code)是Java语言跨平台特性的重要保障,也是反射机制的重要基础.通过反射机制,我们不仅能看到一个类的属性和方法,还能在一个类里调用另外一个类的方法,但前提是我们得有相关类的字节 ...

  7. 杭州站|阿里云 Serverless 技术实践营(Serverless + 大数据)开启报名!

    活动简介 "Serverless 技术实战与创新沙龙 " 是一场以 Serverless 为主题的开发者活动,通过一个下午的时间增进对 Serverless 技术的理解,快速上手, ...

  8. Serverless 时代开启,云计算进入业务创新主战场

    作者 | 于洪涛 "我们希望让用户做得更少而收获更多,通过 Serverless 化,让企业使用云服务像用电一样简单." Serverless 化正在成为全新的软件研发范式,阿里云 ...

  9. mixin混合

    多个组件有相同的逻辑,抽离出来 mixin并不是完美的解决方案,会有一些问题 vue3提出composition api旨在解决这些问题

  10. 类的MRO属性 C3算法

    C3算法 class A(object): pass class B(A): pass class C(A): pass class D(B): pass class E(C): pass class ...