![在这里插入图片描述](https://img-blog.csdnimg.cn/c5ce1fa39f564494aed926d331490f5c.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAVGFpY2hlbmdHdQ==,size_20,color_FFFFFF,t_70,g_se,x_16)
一.准备数据库
1.还是在jbolt数据库中,新建一个table表 “jb_bookstore”
2.设计表,如下图所示,id项一定要有且为主键,自动递增
3.完成之后保存即可。
二.生成相应的Model和BaseModel
1.在cn.jbolt.common.gen包下有一个 JFinalModelGenerator类,直接运行它。
生成成功:
下面我们来找找它生成了什么
1.cn.jbolt.common.model目录下 有一个Bookstore.java
2.cn.jbolt.common.model.base目录下有一个BaseBookstore.java;
以上两个具体有什么用不用管,反正是用来连接你刚刚新建的jb_bookstore表的
三.生成Controller和Service
重头戏来了
1.在cn.jbolt.common.gen目录下有一个 “JBoltMainLogicGenerator.java”
2.在代码中找到 初始化需要 生成的逻辑的model 配置的注释
我们只需要在这个 initGenConfig函数中修改一丁点代码即可
先来看一下要改的东西:
其实作者注释里已经写的很清楚了,下面直接上图
(1)
(2)
(3)
(4)
(5)
(6)
//生成java代码里的作者信息 默认 JBolt-Generator
String author ="JBolt-LHC";
//controller service等java代码生成的报名 路径
String packageName = "cn.jbolt._admin.bookstore";
//在路由配置里的controllerKey参数 也用在生成其它URL的前缀
String controllerKey = "/admin/bookstore";
//生成html存放位置 从src/main/webapp根目录下开始 /作为前缀
String viewFolder = "/_view/_admin/bookstore";
//生成Index.html左上角页面标题
String pageTitle = "Bookstore管理";
//在页面里使用增加 修改 删除 提示信息等用到的针对此模块操作的数据名称 例如 商品管理中是【商品】 品牌管理中是【品牌】
String dataName = "Book数据";
//是否需要分页查询
boolean needPaginate = true;
//index.html 是否需要启用表格的工具条 toolbar
boolean needToolbar = true;
//执行删除时是否做检测校验
boolean checkDelete = true;
//关键词查询匹配字段 多个用逗号隔开
String matchColumns = "name";
//查询用默认排序字段
String orderColumn = "id";
//查询用默认排序方式 desc asc
String orderType = "desc";
/*
* 需要在Controller上方声明的@CheckPermission(PermissionKey.USER)
* 可以这样写 String checkPermissionKeys = PermissionKey.XXX; 多个用逗号隔开
* 这个XXX需要自己后台权限资源管理处定义出来 然后生成到PermissionKey.java中
*/
String checkPermissionKeys = "PermissionKey.BOOKSTORE ";
//是否使用@path注解 就不用去配置路由了 默认false
boolean usePathAnnotation = false;
//访问Controller权限是是否支持超管员不校验直接放行 默认false
boolean unCheckIfSystemAdmin = false;
//创建主逻辑生成配置Bean
JBoltMainLogicBean mainLogicBean = new JBoltMainLogicBean(Bookstore.class,projectPath, packageName,controllerKey, viewFolder ,pageTitle,dataName,needPaginate,needToolbar,checkDelete,matchColumns,orderColumn,orderType,checkPermissionKeys,usePathAnnotation,unCheckIfSystemAdmin,indexHtmlLayoutType,author);
完毕后直接运行不用管错误。
看看最后生成了什么:
(1)
cn.jbolt._admin.bookstore 下的Controller和Service
这个会报错 不用管 先注释掉(不是删掉)
(2)webapp下生成了html文件
四.在首页生成模块组件主键
1.在JBolt中生成一个组件,如图:
点击确认,刷新之后在右边的导航栏便会多出一个图书管理、
2.这里显示资源不存在,下面我们在代码中添加主键并添加内容
直接运行此代码
再将之前的注释去掉发现不报错了
再添加内容进去:
在cn.jbolt.index目录下找到AdminRoutes类,在下方添加如下代码:
this.add("/admin/bookstore", BookstoreAdminController.class,"/bookstore");
最后,重新运行程序,回到JBolt首页,可以看到内容已经添加进去了,操作也能同步到数据库中。