新增房源服务实现之AutoGenerator使用以及创建pojo对象
package cn.learn.haoke.dubbo.server.pojo;import lombok.Data;import java.util.Date;@Data
public abstract class BasePojo implements java.io.Serializable {private Date created;private Date updated;}
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd"><parent><artifactId>learn-haoke-manage-dubbo-server</artifactId><groupId>cn.learn.haoke.manage</groupId><version>1.0-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><artifactId>learn-haoke-manage-dubbo-server-generator</artifactId><dependencies><!-- freemarker 模板引擎 --><dependency><groupId>org.freemarker</groupId><artifactId>freemarker</artifactId><version>2.3.28</version></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.0.5</version><optional>true</optional></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.47</version><optional>true</optional></dependency></dependencies></project>
package cn.learn.haoke.generator;import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;
import com.baomidou.mybatisplus.core.toolkit.StringPool;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.InjectionConfig;
import com.baomidou.mybatisplus.generator.config.*;
import com.baomidou.mybatisplus.generator.config.po.TableInfo;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
import org.apache.commons.lang3.StringUtils;import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;public class CodeGenerator {/*** <p>* 读取控制台内容* </p>*/public static String scanner(String tip) {Scanner scanner = new Scanner(System.in);StringBuilder help = new StringBuilder();help.append("请输入" + tip + ":");System.out.println(help.toString());if (scanner.hasNext()) {String ipt = scanner.next();if (StringUtils.isNotEmpty(ipt)) {return ipt;}}throw new MybatisPlusException("请输入正确的" + tip + "!");}public static void main(String[] args) {
// 代码生成器AutoGenerator mpg = new AutoGenerator();
// 全局配置GlobalConfig gc = new GlobalConfig();String projectPath = System.getProperty("user.dir");gc.setOutputDir(projectPath + "/src/main/java");gc.setAuthor("learn");gc.setOpen(false);mpg.setGlobalConfig(gc);
// 数据源配置DataSourceConfig dsc = new DataSourceConfig();dsc.setUrl("jdbc:mysql://localhost:3306/haoke?useUnicode=true&characterEncoding=utf8&autoReconnect=true&allowMultiQueries=true");
// dsc.setSchemaName("public");dsc.setDriverName("com.mysql.jdbc.Driver");dsc.setUsername("root");dsc.setPassword("123456");mpg.setDataSource(dsc);
// 包配置PackageConfig pc = new PackageConfig();pc.setModuleName(scanner("模块名"));pc.setParent("cn.learn.haoke.dubbo.server");mpg.setPackageInfo(pc);
// 自定义配置InjectionConfig cfg = new InjectionConfig() {@Overridepublic void initMap() {
// to do nothing}};List<FileOutConfig> focList = new ArrayList<>();focList.add(new FileOutConfig("/templates/mapper.xml.ftl") {@Overridepublic String outputFile(TableInfo tableInfo) {
// 自定义输入文件名称return projectPath + "/src/main/resources/mapper/" +pc.getModuleName()+ "/" + tableInfo.getEntityName() + "Mapper" +StringPool.DOT_XML;}});cfg.setFileOutConfigList(focList);mpg.setCfg(cfg);mpg.setTemplate(new TemplateConfig().setXml(null));
// 策略配置StrategyConfig strategy = new StrategyConfig();strategy.setNaming(NamingStrategy.underline_to_camel);strategy.setColumnNaming(NamingStrategy.underline_to_camel);strategy.setSuperEntityClass("cn.learn.haoke.dubbo.server.pojo.BasePojo");strategy.setEntityLombokModel(true);strategy.setRestControllerStyle(true);
//strategy.setSuperControllerClass("com.baomidou.ant.common.BaseController");strategy.setInclude(scanner("表名"));strategy.setSuperEntityColumns("id");strategy.setControllerMappingHyphenStyle(true);strategy.setTablePrefix(pc.getModuleName() + "_");mpg.setStrategy(strategy);mpg.setTemplateEngine(new FreemarkerTemplateEngine());mpg.execute();}
}
package cn.learn.haoke.dubbo.server.pojo;import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;import java.time.LocalDateTime;/*** <p>* 房源表* </p>** @author learn*/
@Data
@Accessors(chain = true)
@TableName("tb_house_resources")
public class HouseResources extends BasePojo {private static final long serialVersionUID = 779152022777511825L;@TableId(value = "id", type = IdType.AUTO)private Long id;/*** 房源标题*/private String title;/*** 楼盘id*/private Long estateId;/*** 楼号(栋)*/private String buildingNum;/*** 单元号*/private String buildingUnit;/*** 门牌号*/private String buildingFloorNum;/*** 租金*/private Integer rent;/*** 租赁方式,1-整租,2-合租*/private Integer rentMethod;/*** 支付方式,1-付一押一,2-付三押一,3-付六押一,4-年付押一,5-其它*/private Integer paymentMethod;/*** 户型,如:2室1厅1卫*/private String houseType;/*** 建筑面积*/private String coveredArea;/*** 使用面积*/private String useArea;/*** 楼层,如:8/26*/private String floor;/*** 朝向:东、南、西、北*/private String orientation;/*** 装修,1-精装,2-简装,3-毛坯*/private Integer decoration;/*** 配套设施, 如:1,2,3*/private String facilities;/*** 图片,最多5张*/private String pic;/*** 描述*/private String houseDesc;/*** 联系人*/private String contact;/*** 手机号*/private String mobile;/*** 看房时间,1-上午,2-中午,3-下午,4-晚上,5-全天*/private Integer time;/*** 物业费*/private String propertyCost;}
新增房源服务实现之AutoGenerator使用以及创建pojo对象相关推荐
- 新增房源服务实现之新增房源RESTful接口的开发
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://mave ...
- Java/java程序设计:房屋出租系统:要求实现:新增房源,查找房屋信息,修改房屋信息,删除房屋信息,显示所有房屋列表,退出房屋管理系统;
Java/java程序设计:房屋出租系统: 一.前言: 一.1. 框架图 二.各类包下的代码实现: 1. 主文件(运行文件HouseApp.java) 2. 房屋类文件(House.java) 3. ...
- 支付宝首页新增商家服务进度卡片 目前正在灰度测试中
7月29日消息,近日, 支付宝首页新增了一项功能:九宫格下方出现了一张商家服务进度展示卡片,可以直接看到当前使用服务的进度,点击可以进入具体的商家小程序页面了解详情. 目前看来,提供这些信息的商家类别 ...
- 微信“支付”页新增“出行服务” :已上线北深广三城
近日,微信"支付"页中的"腾讯服务"在北京.广州地区上线新入口"出行服务",一站式聚合了包含车主服务.公交出行等多出行场景服务.据悉,&qu ...
- ArcIMS9.2新增地图服务时check your map file's layers and data source connections解决
ArcIMS9.2安装完毕后的配置可以参考网上的教程,很详细.其中配置Service时可能会出现以下报错: Error when trying to administer Service: check ...
- HTC联合Valve发布消费者版Vive虚拟现实系统,新增电话服务
摘要:在MWC世界移动通讯大会上,HTC联合Valve共同发布了消费者版的Vive虚拟现实系统.这是一套完整的VR解决方案,基于SteamVR,并在Vive已有的众多特性之外增加了Vive电话服务,支 ...
- 后台服务显示右下角弹窗 -- system权限创建用户权限进程
windows编程的人都知道,在其操作系统下,进程被创建,通常被赋予很多属性,其中一项属性就是用户名,及进程所属的权限.打开任务管理器,可查看到(查看不到,点击查看,选择列即可) 通常桌面系统expl ...
- 02_clickhouse安装,卸载,启动/关闭服务,交互式命令(数据库创建,数据导入,查询),批模式数据导入,MySQL接口操作ClickHouse,DBeaver可视化工具安装与使用(学习笔记)
1 ClickHouse安装 安装文件清单 clickhouse-client-${version}.noarch.rpm clickhouse-common-static-dbg-${version ...
- S/4HANA服务订单Service Order的批量创建
我工作中接到一个任务,需要在性能测试系统里创建一亿条服务订单service order来做性能测试. 这么大规模的数据量,当然只能用代码来创建了. 本文提到的所有ABAP代码,我均已上传到我的Gith ...
最新文章
- FGMap学习之--加载百度地图
- multi-statement not allow解决
- c++学习笔记之类的应用
- javascript 忍者秘籍读书笔记
- [转]总结使用Unity 3D优化游戏运行性能的经验
- oracle父游标和子游标,诊断Oracle high version count(高版本游标)问题
- apache camel_Apache Camel –从头开始开发应用程序(第1部分/第2部分)
- python 类的使用基础
- pyqt5使用label显示图片
- java递归求和_java递归算法求和有哪些方式实现?
- ubuntu 20.04安装输入法,微信,QQ,亲测使用很方便。
- 技术文化和惨淡命运 —— 怀念中国雅虎
- 配置Firefox火狐浏览器burpsuite https抓包
- 晚上几点睡才叫“熬夜”?给你“答案”,很多人都想错了
- 模拟游戏--鸭子的种类
- Cyclone FPGA踏足笔记(一):开发环境建立与使用
- CentOS-6.3安装配置Tomcat-7 - Constantin - 博客园
- B站增量数据湖探索与实践
- 苹果或挖走Meta AR公关总监,2022年的头显是真的要来了?
- 2022年「博客之星」参赛博主:顽石九变