初学习Java脚手架使用——代码生成功能,以Bootdo为例


数据库

com_staff:员工表

com_customer:客户信息表

com_business:业务表

com_material:递交的材料表

数据库结构如图所示:

1571491231883

BootDo

BootDo使用步骤

后台管理

总结一下BootDo的使用步骤:

  1. 数据库建表
  2. 部署BootDo系统,运行,使用“系统工具”——“代码生成”,
    可以修改一下“生成策略”,定义一下名称;
    然后选择相应的表,“批量生成” 生成代码并下载。
  3. 然后下载的Bootdo.zip中的文件夹,放到我们原来的项目文件夹下,一一对应的拷进去。
    只不过要注意/resources/mapper/company应该放在/resources/mybatis/company下,而不是新建mapper文件夹
  4. 放好代码后重启BootDo项目,重新进去。然后选择“系统管理” ——“系统菜单”,添加相应的菜单管理项。
    1571492576827
    如图所示。这里的地址和权限标识都是去源代码中,找到我们刚才复制过来的Java代码里,Controller里面的,每个函数上面都有注解。把那个相应的拿过来填写进去。
  5. 添加完菜单之后,再选择“系统管理”——“角色管理”,如图所示:
    1571492707711
    选择编辑超级管理员用户,把我们刚才添加的菜单打上对勾,然后“提交”。
  6. 退出系统,重新登录一遍,就可以看见我们添加的”公司管理“菜单出现在左面栏目里了。
  7. 然后我们就可以进行添加、删除等操作了。

前端页面

​ 把前端页面放入Bootdo项目中,前端页面目录分为静态资源和html网页文件。静态资源放在resources/static下,网页放在resources/templates文件夹下(如附录中所示)。

​ 一定要注意路径对应。不对的路径一定要改过来。

​ 放完之后是访问不到静态资源和网页的,因为Spring会拦截所有的请求。所以说自己写了一个Controller来对网页进行映射:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package com.bootdo.company.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@RequestMapping("/company")
public class CommonController {
/**
* 自己添加的controller
*/
@GetMapping("/index.html")
String indexHtml(){
return "company/index";
}

@GetMapping("/staffInfo_add.html")
String staffInfoAdd(){
return "company/staffInfo_add";
}
@GetMapping("/staffInfo.html")
String staffInfo(){
return "company/staffInfo";
}

@GetMapping("/clientInfo_add.html")
String clientInfoAdd(){
return "company/clientInfo_add";
}
@GetMapping("/clientInfo.html")
String clientInfo(){
return "company/clientInfo";
}

@GetMapping("/pre_cusInfo_add .html")
String preCusInfoAdd(){
return "company/pre_cusInfo_add";
}
@GetMapping("/pre_cusInfo.html")
String preCusInfo(){
return "company/pre_cusInfo";
}

@GetMapping("/cusInfo_add.html")
String cusInfoAdd(){
return "company/cusInfo_add";
}
@GetMapping("/cusInfo.html")
String cusInfo(){
return "company/cusInfo";
}
}

就是根据超链接的链接来映射一下文件目录下的网页。之后还要做前后端对接。

附录:

项目结构

java代码的对应:
1571491889408 1571491920683


resources资源文件夹的对应
1571492120751 1571492049781

前端代码结构:

CSS、JS、字体、图片等静态资源,放到resources/static文件夹下:

1571660333125

html网页文件,放到resources/templates文件夹下:

1571660425830

遇到问题

  1. 部署完成后,在”公司管理“——”员工管理“中添加数据,提示”服务器错误“,错误原因是(Unbound未绑定之类的)。

    原因:文件夹放错位置。

    解决方法:如项目路径中所示,压缩文件中的mapper中的company 放到 项目中的mybatis/company中。

  2. SpringBoot中Controller返回的路径:

    会自动到templates文件夹下找html,所以说返回直接路径直接从templates下开始写就行。

    1
    2
    3
    4
    @GetMapping("/company/index")
    String CompanyIndex(){
    return "company/index";
    }

    这个就会自动去找templates/company/index.html。好像是什么静态资源自动解析。

  3. 在“授中添加“页面”,左侧菜单栏的展开,不管用

  4. 文件上传失效

    原因是注释掉了,那里那一块用了一个<script id="template-download" type="text/x-tmpl">的脚本,里面的{ % xxx % }这个东西好像和SpringBoot有冲突,会报错。

  5. Bootdo的文件上传路径?

    在application-dev.yml里面

    1
    2
    bootdo:
    uploadPath: c:/var/uploaded_files/

文章作者: SongX64
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 SongX64 !
  目录