搭建项目环境(代码生成器) | 学习笔记

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介: 快速学习搭建项目环境(代码生成器)

开发者学堂课程【微服务+全栈在线教育实战项目演练(SpringCloud Alibaba+SpringBoot)搭建项目环境(代码生成器)学习笔记,与课程紧密连接,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/667/detail/11282


搭建项目环境(代码生成器)


开发讲师管理模块:

一、创建 application.properties 配置文件

二、编写 controller service mapper 内容


一、创建 application.properties 配置文件

#服务端口

server.port=8001

#服务名

spring.application.name=service-edu

#环境设置:dev、test、prod

spring.profiles.active=dev

#mysq1数据库连接

spring.datasource.driver class namecom.mysql.cj.jdbc.Driver

spring.datasource.url=jdbc:mysql://localhost:3306/guli?serverTimezoneGMT%2B8s

pring.datasource.usernameroot

spring.datasource.passwordroot

#mybatis日志

mybatis--plus.configuration.log-impl=org.apache.ibatis.logging.stdout.Std0utImpl


二、编写 controller service mapper 内容

(mp提供代码生成器,生成相关代码)

注:需要的一个依赖

<dependency>

<groupIdorg.apache.velocity</groupId

artifactIdvelocity-engine-core<artifactId

</dependency)

代码

//1.创建代码生成器

AutoGenerator mpg = new AutoGenerator();

//2.全局配置

GlobalConfig gc = new GlobalConfig0;

String projectPath = System.getProperty("user.dir'');

gc.setOutputDir(projectPath +"'/src/main/java ");

gc.setAuthor (''test java);

gc.setOpen(false);//生成后是否打开资源管理器

gc.setFile0verride(false);//重新生成时文件是否覆盖

gc.setServiceName('%sService");//去掉Service首字母gc.setIdType(IdType.ID_ WORKER;//主键策略

gc.setDateType(DateType.ONLY_DATE);//定义生成的实体类中日期类型

setSwagger2 (true);//开启Swagger2模式

mpg.setGlobalConfig(gc);

//3、数据源配置

DataSourceConfig dsc = new DataSourceConfig0;

dsc.setUrl("jdbc:mysql://localhost:3306/guli?serverTimezone GMT%2B8")dsc.setDriverName("com.mysql.cj.jdbc.Driver");

dsc.setUsername(root") ;

dsc.setPassword("root'');

dsc.setDbType (DbType.MYSQL);

mpg.setDataSource (dsc);

// 4.包配置

PackageConfig pc = new PackageConfigO;

pc.setModuleName("eduservice");//3306//gcom.atguigu.eduservice

pc.setParent('com.atguigu");//gcom.atguigu.eduservice.controller

pc.setController("controller);

pc.setEntity('entity'");

pc.setService("'service'');

pc.setMapper('mapper);

mpg.setPackageInfo(pc);

//5.策略配置

StrategyConfig strategy = new StrategyConfig();

strategy.setInclude("edu_teacher');

strategy.setNaming(NamingStrategy.underline_ to came)://数据库表映射到实体的命名策略strategy.setTablePrefix(pc.getModuleName()+"_");//生成实体时去掉表前缀

strategy.setColumnNaming(NamingStrategy.underline to camel)://數据库表字段映射到实体的命名策略strategy. setEntityLombokModel(true);//lombok模型@Accessors(chain=true)setter链式操作

strategy.setRestControllerStyle(true)://restfulapi风格控制器

strategy.setControllerMappingHyphenStyle(true);//urI中驼峰转连字符

mpg.setStrategy(strategy);

注:最后显示文件生成完成!

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
数据库 容器
使用Stream流对集合排序
有一些业务需要对集合按照一些规则进行排序,本篇介绍如何用Stream()对集合进行升序或者降序操作。之前只有接触过使用数据库进行排序,有一些情况需要不同的排序结果,如果进行多次查询会多次操作数据库,所以有些地方使用流对集合操作是更好的选择。Stream 流 -> 调用 sorted 方法 -> 方法内传入对比规则,用容器对象的属性作为入参作为排序依据,默认升序,需要倒叙的话后面调用.reversed() 方法。
909 0
使用Stream流对集合排序
|
2天前
|
存储 弹性计算 人工智能
【2025云栖精华内容】 打造持续领先,全球覆盖的澎湃算力底座——通用计算产品发布与行业实践专场回顾
2025年9月24日,阿里云弹性计算团队多位产品、技术专家及服务器团队技术专家共同在【2025云栖大会】现场带来了《通用计算产品发布与行业实践》的专场论坛,本论坛聚焦弹性计算多款通用算力产品发布。同时,ECS云服务器安全能力、资源售卖模式、计算AI助手等用户体验关键环节也宣布升级,让用云更简单、更智能。海尔三翼鸟云服务负责人刘建锋先生作为特邀嘉宾,莅临现场分享了关于阿里云ECS g9i推动AIoT平台的场景落地实践。
【2025云栖精华内容】 打造持续领先,全球覆盖的澎湃算力底座——通用计算产品发布与行业实践专场回顾
|
4天前
|
云安全 数据采集 人工智能
古茗联名引爆全网,阿里云三层防护助力对抗黑产
阿里云三层校验+风险识别,为古茗每一杯奶茶保驾护航!
古茗联名引爆全网,阿里云三层防护助力对抗黑产
|
4天前
|
存储 机器学习/深度学习 人工智能
大模型微调技术:LoRA原理与实践
本文深入解析大语言模型微调中的关键技术——低秩自适应(LoRA)。通过分析全参数微调的计算瓶颈,详细阐述LoRA的数学原理、实现机制和优势特点。文章包含完整的PyTorch实现代码、性能对比实验以及实际应用场景,为开发者提供高效微调大模型的实践指南。
532 1
kde
|
4天前
|
人工智能 关系型数据库 PostgreSQL
n8n Docker 部署手册
n8n是一款开源工作流自动化平台,支持低代码与可编程模式,集成400+服务节点,原生支持AI与API连接,可自托管部署,助力团队构建安全高效的自动化流程。
kde
360 3
|
2天前
|
Linux 虚拟化 iOS开发
VMware Workstation Pro 25H2 for Windows & Linux - 领先的免费桌面虚拟化软件
VMware Workstation Pro 25H2 for Windows & Linux - 领先的免费桌面虚拟化软件
735 4
VMware Workstation Pro 25H2 for Windows & Linux - 领先的免费桌面虚拟化软件
|
3天前
|
JavaScript 开发工具 Android开发
如何在原生 App 中调用 Uniapp 的页面?
如何在原生 App 中调用 Uniapp 的页面?
243 138