若依框架--代码生成器实践

一、新建表结构

drop table if exists sys_student;
create table sys_student (
  student_id           int(11)         auto_increment    comment '编号',
  student_name         varchar(30)     default ''        comment '学生名称',
  student_age          int(3)          default null      comment '年龄',
  student_sex          char(1)         default '0'       comment '性别(0男 1女 2未知)',
  student_status       char(1)         default '0'       comment '状态(0正常 1停用)',
  student_birthday     datetime                          comment '生日',
  remark               varchar(500)    default null      comment '备注',
  primary key (student_id)
) engine=innodb auto_increment=1 comment = '学生信息表';

二、登录系统(系统工具 -> 代码生成 -> 导入对应表)

代码生成1

三、代码生成列表中找到需要表(可预览、修改、删除生成配置)

代码生成2

四、解压生成的压缩包,将代码文件放到项目对应的位置。执行生成的SQL文件,会在系统工具目录生成新的菜单。

1.java代码放置

java代码的位置
Controller层代码例外,需单独放到admin模块的system下
controller放到如下图的位置
controller例外,放到这里

2.前端代码放置

前端代码
放置

五、更改前端页面代码

1.添加页面下拉框:

<select name="studentSex" class="form-control m-b">
	<option value="">所有</option>
</select>

改为:

<select name="studentSex" class="form-control m-b" th:with="type=${@dict.getType('sys_user_sex')}">
	<option value="">所有</option>
	<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
</select>

2.展示页显示正确的字典值:

  • <Script>标签里添加这句以获取字典数据:
    var studentSex = [[${@dict.getType('sys_user_sex')}]];
  • JQuery函数里的colums字段里的对应位置添加以下这句以格式化数据字典:
formatter: function(value, row, index) {
	return $.table.selectDictLabel(studentSex, value);
}

3.编辑页面的性别数据回显:

  • 先在<select>标签里加:th:with="type=${@dict.getType('sys_user_sex')}"获取对应的字典值
  • 然后在<option>里加:th:field="*{studentSex}"选中对应的下拉框
<option th:field="*{studentSex}" th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
  • 或者在<option>里加:th:selected="*{studentSex}==${dict.dictValue}"选中对应的下拉框
<option th:selected="*{studentSex}==${dict.dictValue}" th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章