【若依框架】代码生成详细教程
若依框架
- 1、修改代码生成配置
- 2、新建数据库表结构(单表)
- 3、项目中新建模块,并解决项目依赖的关系
- 4、若依系统中新建一个目录 - 学生管理
- 5、导入一开始建的表并设置上级目录,生成代码
- 6、执行生成的SQL
- 7、将生成的代码放入项目中
- 8、重启项目,访问页面
若依官网的代码生成文档
我觉得若依官方的代码生成教程过于简单,网上的教程很多连个效果图都没有。。
本文要达到的效果如下:[学生管理] 下有个 [学生信息] 菜单,里面可以增删改查
1、修改代码生成配置
这步其实可做可不做。
- 单应用:编辑
ruoyi-admin
中resources
目录下的application.yml
- 多模块:编辑
ruoyi-generator
中的resources
目录下的generator.yml
我们这里做的是单应用,所以改ruoyi-admin
里的application.yml
author: lzy # 开发者姓名,生成到类注释上
packageName: com.ruoyi.student # 默认生成包路径
autoRemovePre: true # 是否自动去除表前缀
tablePrefix: stu # 表前缀
2、新建数据库表结构(单表)
若依建表有个要求:表字段 和 表,都需要加注释,注释就是生成页面的显示内容
这个sql和官网的sql除了表名其他都一样,我们用这个建表
(如果是用图形化工具或者自己写SQL一定要记得加注释)
drop table if exists stu_student;create table stu_student (student_id int(11) auto_increment comment '编号',student_name varchar(30) default '' comment '学生名称',student_age int(3) default null comment '年龄',student_hobby varchar(30) default '' comment '爱好(0代码 1音乐 2电影)',student_sex char(1) default '0' comment '性别(0男 1女 2未知)',student_status char(1) default '0' comment '状态(0正常 1停用)',student_birthday datetime comment '生日',primary key (student_id)
) engine=innodb auto_increment=1 comment = '学生信息表';
3、项目中新建模块,并解决项目依赖的关系
①新建一个名为 ruoyi-student
的模块:
②我们要在 RuoYi 整个项目下的pom.xml
中引入刚刚新建的模块:
<!-- 学生模块-->
<dependency><groupId>com.ruoyi</groupId><artifactId>ruoyi-student</artifactId><version>${ruoyi.version}</version>
</dependency>
③还需要在ruoyi-admin
这个模块的pom.xml
中引入刚刚新建戴尔模块:
<!--学生模块-->
<dependency><groupId>com.ruoyi</groupId><artifactId>ruoyi-student</artifactId>
</dependency>
④由于自动生成的代码会用到ruoyi-common
中的内容,我们需要将ruoyi-common
引入到我们新建的模块中:(不做这个后面代码会报错,也会自动引入)
<dependencies><dependency><groupId>com.ruoyi</groupId><artifactId>ruoyi-common</artifactId></dependency>
</dependencies>
4、若依系统中新建一个目录 - 学生管理
但是现在只是建好了目录,里面还没有内容,所以打开是404。
5、导入一开始建的表并设置上级目录,生成代码
把刚刚新建的表导入:
导入后点击 [编辑] ,[生成信息] :建议把生成模块名和生成业务名写的不一样,否则后面可能会遇到问题,后面运行时会讲到。
设置完毕后,生成代码。
这里说明一些上面填的东西会生成什么
- 生成包路径
com.ruoyi.student
,就是生成的后端代码的包路径
- 生成模块名和生成业务名一起构成后端代码里自动生成的请求路径,即页面路径
6、执行生成的SQL
自动生成的压缩包里有个SQL,这是用来生成菜单的,去数据库里执行一下这个SQL。
执行完后【学生管理】下就有【学生信息】这个菜单了,但是旁边还没有页面,因为我们代码还没放进项目。
7、将生成的代码放入项目中
①将自动生成的代码文件main目录直接复制到我们的新建模块的src下,替换原本的main目录。
若此时报错则是该模块没有引入ruoyi-common,见第3步的④。
②将templates目录拷贝到ruoyi-admin
目录下的resources
中:
8、重启项目,访问页面
注意:如果在上面取名的时候,生成模块名和生成业务名取的是一样的,可能会遇到一个问题:将代码从Idea移到项目中时候,windows会将相同的两层文件夹自动合并。
比如:templates.student.student.
会被合并为templates.student
,此时在Idea里右键改名是没用的(它会把文件夹名字改为student.student
,并不是两层文件夹),需要去磁盘里手动调整目录,再回来运行。
一定要重启!然后就可以访问了。
然后按自己的需要修改,定制。
【若依框架】代码生成详细教程相关推荐
- ThinkJS框架入门详细教程(二)新手入门项目
一.准备工作 参考前一篇:ThinkJS框架入门详细教程(一)开发环境 安装thinkJS命令 npm install -g think-cli 监测是否安装成功 thinkjs -v 二.创建项目 ...
- Spring Boot如何在最短时间里快速搭建微服务框架,详细教程贡上
前言: Spring Boot是为了简化Spring应用的创建.运行.调试.部署等而出现的,使用它可以做到专注于Spring应用的开发,而无需过多关注XML的配置. 简单来说,它提供了一堆依赖打包,并 ...
- B站微服务框架Kratos详细教程(1)- 安装搭建
Kratos Kratos是bilibili开源的一套Go微服务框架,包含大量微服务相关框架及工具. 名字来源于:<战神>游戏以希腊神话为背景,讲述由凡人成为战神的奎托斯(Kratos)成 ...
- asp python 定时任务_python定时任务最强框架APScheduler详细教程
APScheduler定时任务 上次测试女神听了我的建议,已经做好了要给项目添加定时任务的决定了.但是之前提供的四种方式中,她不知道具体选择哪一个.为了和女神更近一步,我把我入行近10年收藏的干货免费 ...
- Spring+SpringMVC+MyBatis框架搭建-----详细教程
1.基本概念 1.1Spring Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J ...
- http get请求相同的key_B站微服务框架Kratos详细教程(2)HTTP服务
背景 在像微服务这样的分布式架构中,经常会有一些需求需要你调用多个服务,但是还需要确保服务的安全性.统一化每次的 请求日志或者追踪用户完整的行为等等. 你可能需要一个框架来帮助你实现这些功能.比如说帮 ...
- java框架ssm整合_SSM三大框架整合详细教程(Spring+SpringMVC+MyBatis)
使用 SSM ( Spring . SpringMVC 和 Mybatis )已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就可以实现想要的功能,当然肯定有很多可以改进的地方.之前没 ...
- netty结合java_在SpringBoot中整合使用Netty框架的详细教程
Netty是一个非常优秀的Socket框架.如果需要在SpringBoot开发的app中,提供Socket服务,那么Netty是不错的选择. Netty与SpringBoot的整合,我想无非就是要整合 ...
- SSM框架实战详细教程(十四)贯穿项目实战之三层架构
之前我们的项目足够简单,所以使用的是两层架构,现在为了学习Spring,需要使用行业中常见的三层架构,关于分层开发的原则请看下图: 本次对项目的调整,主要是由之前的controller ...
- SSM框架实战详细教程(三)IDEA+Maven搭建项目
本章内容将搭建Maven,并且与IDEA关联,然后将上一篇中使用Eclipse中开发的普通Java Web项目改造成IDEA+Maven形式. 搭建Maven,并且与IDEA关联请查看 ...
最新文章
- Benchmarking of long-read correction methods长期校正方法的基准测试
- 特斯拉线圈的阻抗分析
- ASP中文件上传组件ASPUpload介绍和使用方法
- Socket编程应用——开发聊天软件
- 单片机单口不可用或被占用_单片机为什么一直用C语言,不用其他编程语言?只有学过的知道...
- bzoj1069 [SCOI2007]最大土地面积 凸包+单调性
- Financial Managemen
- java.lang.SecurityException: Prohibited package name: java.xxx.xxxx
- office2013 应用程序无法正常启动(0xc000007b)
- C语言main函数的参数及其返回值详细解析
- 为什么中国的数字是四位一进,而西方的是三位一进?
- shader 重建世界坐标
- 数独基本规则_数独入门:你必须掌握的那些规则和技巧
- linux 输入密码后无法进入系统,【Linux学习笔记十六】用户密码修复和GRUB引导错误无法进入系统解决办法...
- zzulioj :2020新生赛:花海
- 【Angular】使用高德地图比例尺心得总结
- Hoeffding不等式的证明
- 验证码显示不出来的问题
- Run Android apps in Windows, OS X, Linux with Chrome (and a modified runtime)
- TensorFlow技术主管Peter Wardan:机器学习的未来是小而美