当前位置: 首页 > news >正文

基于MySQL的创建Java实体Bean和TypeScript实体Bean

基于MySQL的创建Java实体Bean和TypeScript实体Bean

基于MySQL的创建Java实体Bean和TypeScript实体Bean



select 
    `ORDINAL_POSITION` as `a`,
-- @Data
-- @Schema(description = "货物管理表")
-- @TableName("lpg_cargo")
-- public class CargoEntity implements Serializable{

    concat('@Data \n @Schema(description = "',`TABLE_COMMENT`,'") \n  @TableName("',`TABLE_NAME`, '")') as `aaa`,
    concat('public class ', `TABLE_NAME_NEW`,'Entity  extends Model<', `TABLE_NAME_NEW`,'>{ ') as `bbb`,
    `DATA_TYPE`,
    concat('//',COLUMN_COMMENT)AS COLUMN_COMMENT,
	CamelCaseColumn,
--  TYPE JS 实体
	concat('//',COLUMN_COMMENT,'\n', 
		CamelCaseColumn,  
		CASE WHEN `DATA_TYPE` = 'String' THEN ': string | undefined = undefined;'
			WHEN `DATA_TYPE` = 'Long' THEN ': number | undefined = undefined;'
			WHEN `DATA_TYPE` = 'Integer' THEN ': number | undefined = undefined;'
			WHEN `DATA_TYPE` = 'BigDecimal' THEN ': number | undefined = undefined;'
			ELSE ': String | undefined = undefined;'
			END 
	)AS typeJsEntity,
--    @Schema(description = "货物名称")
--    private String cargoName 

--     `TABLE_COMMENT`,
--     `TABLE_NAME`,
--     `TABLE_NAME_NEW`,
    concat( 
     /*=====注释========*/
    '/**\n* ',COLUMN_COMMENT, '\n*/',
    /*======字段映射=======*/
    '\n@TableField(value = "',COLUMN_NAME,'",property = "',CamelCaseColumn,'")',
    /*====swagger========*/
    '\n@Schema(description = "',COLUMN_COMMENT,'")\n', 
    /*=====BEAN字段=======*/
    `prefix`,'  ',`DATA_TYPE`,'  ',`CamelCaseColumn`,';') as CamelCaseColumn

   
/* ==============================  */
/* ==============================  */
/* ==============================  */
/* ==============================  */
from
    (
    /**/
select
	'private' as `prefix`,
	ORDINAL_POSITION,
	TABLE_COMMENT,
	TABLE_NAME,
	COLUMN_NAME,
	replace(replace(replace(replace(replace(replace(replace( replace(replace( replace(replace(replace(replace(replace(replace( replace( replace( replace( replace(replace(replace( replace( replace( replace( replace( replace( replace(TABLE_NAME, '_a', 'A'), '_b', 'B'), '_c', 'C'), '_d', 'D'), '_e', 'E'), '_f', 'F'), '_g', 'G')
        , '_h', 'H'), '_i', 'I'), '_j', 'J'), '_k', 'K'), '_l', 'L'), '_m', 'M'), '_n', 'N'), '_o', 'O'), '_p', 'P'), '_q', 'Q'), '_r', 'R'), '_s', 'S'), '_t', 'T'), '_u', 'U')
       , '_v', 'V'), '_w', 'W'), '_x', 'X'), '_y', 'Y'), '_z', 'Z'), '_', '') as `TABLE_NAME_NEW`,
	/* ================ */
	replace(replace(replace(replace(replace(replace(replace( replace(replace( replace(replace(replace(replace(replace(replace( replace( replace( replace( replace(replace(replace( replace( replace( replace( replace( replace( replace(COLUMN_NAME, '_a', 'A'), '_b', 'B'), '_c', 'C'), '_d', 'D'), '_e', 'E'), '_f', 'F'), '_g', 'G')
        , '_h', 'H'), '_i', 'I'), '_j', 'J'), '_k', 'K'), '_l', 'L'), '_m', 'M'), '_n', 'N'), '_o', 'O'), '_p', 'P'), '_q', 'Q'), '_r', 'R'), '_s', 'S'), '_t', 'T'), '_u', 'U')
       , '_v', 'V'), '_w', 'W'), '_x', 'X'), '_y', 'Y'), '_z', 'Z'), '_', '') as `CamelCaseColumn`,
	/* ================ */
	case
		upper(DATA_TYPE)
          when 'VARCHAR' then 'String'
		when 'CHAR' then 'String'
		when 'TEXT' then 'String'
		when 'INT' then 'Integer'
		when 'TINYINT' then 'Integer'
		when 'SMALLINT' then 'Integer'
		when 'MEDIUMINT' then 'Integer'
		when 'BOOLEAN' then 'Integer'
		when 'BIGINT' then 'Long'
		when 'INTEGER' then 'Long'
		when 'ID' then 'Long'
		when 'FLOAT' then 'Float'
		when 'DOUBLE' then 'Double'
		when 'DECIMAL' then 'BigDecimal'
		when 'BIT' then 'Boolean'
          /*WHEN 'BLOB' THEN 'byte[]'*/
		when 'BLOB' then 'byte[]'
          /* 日期格式*/
		when 'DATE' then 'LocalDateTime' 
         /* WHEN 'DATE' THEN 'Date'*/
		when 'YEAR' then 'Date'
		when 'TIME' then 'Time'
         /* WHEN 'DATETIME' THEN 'Timestamp'*/
		/* WHEN 'TIMESTAMP' THEN 'Timestamp'*/
		when 'DATETIME' then 'LocalDateTime'
		when 'TIMESTAMP' then 'LocalDateTime'
		else 'String '
	end as `DATA_TYPE`,
	';' as `suffix`,
	COLUMN_COMMENT
from
	(
    /* === */
	select
		`tables`.TABLE_SCHEMA,
		`tables`.TABLE_NAME,
		`tables`.TABLE_COMMENT,
		`columns`.ORDINAL_POSITION,
		-- `columns`.TABLE_NAME,
          lower(`columns`.COLUMN_NAME)  AS COLUMN_NAME,
		`columns`.DATA_TYPE,
		`columns`.COLUMN_COMMENT
	from
		INFORMATION_SCHEMA.Tables as `tables`
	left join INFORMATION_SCHEMA.COLUMNS as `columns`
          on
		`columns`.TABLE_NAME = `tables`.TABLE_NAME
/* ==============================  */
		/* ==============================  */
		/* ==============================  */
		/* ==============================  */
	where
		`tables`.TABLE_SCHEMA = '数据库名称'
		and `tables`.TABLE_NAME = '表名称 '
/* ==============================  */
		/* ==============================  */
		/* ==============================  */
		/* ==============================  */
	order by
		`columns`.ORDINAL_POSITION    
    /* === */
		)as tmp
order by
	ORDINAL_POSITION    
    /**/
	)as ttt
order by
ORDINAL_POSITION    




http://www.dtcms.com/a/78906.html

相关文章:

  • DeepSeek-R1深度解读
  • Vue + CSS实现渐变栅格进度条
  • 【机器学习】强化学习
  • 鬼泣:动作系统3
  • 服装零售行业数字化时代的业务与IT转型规划P111(111页PPT)(文末有下载方式)
  • springmvc中使用interceptor拦截
  • PyTorch使用(2)-张量数值计算
  • mysql解析器和优化器
  • Solana笔记案例:写一个SOL转账程序
  • DeepSeek写打台球手机小游戏
  • 后端接口开发完成后,接口地址访问不到提示404,Spring项目的包结构错误
  • [特殊字符]1.2.1 新型基础设施建设
  • 手搓聊天室1.0.0----基于ws和protobuf协议
  • git 查看某个函数的所有提交日志
  • 友思特应用 | 行业首创:基于深度学习视觉平台的AI驱动轮胎检测自动化
  • Linux安装Elasticsearch集群-----docker安装es集群
  • FastJson:JSON JSONObject JSONArray详解以及SimplePropertyPreFilter 的介绍
  • 虚拟电商-延迟任务系统的微服务改造(二)注册中心和Feign调用
  • RAG工具框架针对的常见问题
  • 前端字段名和后端不一致?解锁 JSON 映射的“隐藏规则” !!!
  • LeetCode 第19~21题
  • 【Qt】信号signal是单向的
  • YZi Labs 谈对 Plume 的投资:利用区块链创造现实价值的典范项目
  • 【C++】STL库面试常问点
  • Java基礎2小時速成(下篇) - 掌握核心技术「卷」
  • 【嵌入式学习】嘉立创画pcb门电路
  • Android 动态代理详解
  • 麒麟操作系统作为服务器,并且需要在浏览器上调试 MATLAB
  • LangChain组件Tools/Toolkits详解(1)——Tools接口与创建工具概述
  • Certd自动化申请和部署SSL证书并配置https