最新产品
This commit is contained in:
		
							
								
								
									
										86
									
								
								src/main/java/com/yj/earth/common/util/CodeUtil.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										86
									
								
								src/main/java/com/yj/earth/common/util/CodeUtil.java
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,86 @@ | ||||
| package com.yj.earth.common.util; | ||||
|  | ||||
| import com.baomidou.mybatisplus.annotation.FieldFill; | ||||
| import com.baomidou.mybatisplus.annotation.IdType; | ||||
| import com.baomidou.mybatisplus.generator.FastAutoGenerator; | ||||
| import com.baomidou.mybatisplus.generator.config.OutputFile; | ||||
| import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; | ||||
| import com.baomidou.mybatisplus.generator.fill.Column; | ||||
| import com.yj.earth.datasource.DatabaseManager; | ||||
|  | ||||
| import java.io.File; | ||||
| import java.util.Collections; | ||||
|  | ||||
| public class CodeUtil { | ||||
|  | ||||
|     // SQLite数据库配置 | ||||
|     private static String databasePath = null; | ||||
|     private static String author = "周志雄"; | ||||
|  | ||||
|     public static void main(String[] args) { | ||||
|         DatabaseManager.initDatabase(DatabaseManager.DatabaseType.SQLITE); | ||||
|         databasePath = DatabaseManager.getSqliteDbFilePath(); | ||||
|  | ||||
|         // 检查数据库路径是否有效 | ||||
|         if (databasePath == null || databasePath.trim().isEmpty()) { | ||||
|             throw new RuntimeException("数据库路径未正确初始化"); | ||||
|         } | ||||
|  | ||||
|         // 确保数据库目录存在 | ||||
|         File dbFile = new File(databasePath); | ||||
|         File parentDir = dbFile.getParentFile(); | ||||
|         if (!parentDir.exists()) { | ||||
|             parentDir.mkdirs(); | ||||
|         } | ||||
|  | ||||
|         // 传入需要生成代码的表名 | ||||
|         Generation("file_info"); | ||||
|     } | ||||
|  | ||||
|     public static void Generation(String... tableName) { | ||||
|         // 构建SQLite连接URL | ||||
|         String jdbcUrl = "jdbc:sqlite:" + databasePath; | ||||
|  | ||||
|         // FastAutoGenerator 用来创建代码生成器实例 | ||||
|         FastAutoGenerator.create(jdbcUrl, "", "") | ||||
|                 .globalConfig(builder -> { | ||||
|                     builder.author(author) | ||||
|                             .enableSpringdoc() | ||||
|                             .outputDir(System.getProperty("user.dir") + "/src/main/java"); | ||||
|                 }).packageConfig(builder -> { | ||||
|                     builder.entity("domain") | ||||
|                             .parent("com.yj.earth.business") | ||||
|                             .controller("controller") | ||||
|                             .mapper("mapper") | ||||
|                             .service("service") | ||||
|                             .serviceImpl("service.impl") | ||||
|                             .pathInfo(Collections.singletonMap(OutputFile.xml, | ||||
|                                     System.getProperty("user.dir") + "/src/main/resources/mapper")); | ||||
|                 }).strategyConfig(builder -> { | ||||
|                     builder.addInclude(tableName) | ||||
|                             .addTablePrefix("t_") | ||||
|                             .entityBuilder() | ||||
|                             .enableLombok() | ||||
|                             .enableChainModel() | ||||
|                             .addTableFills(new Column("created_at", FieldFill.INSERT), | ||||
|                                     new Column("updated_at", FieldFill.UPDATE)) | ||||
|                             .naming(NamingStrategy.underline_to_camel) | ||||
|                             .columnNaming(NamingStrategy.underline_to_camel) | ||||
|                             .idType(IdType.ASSIGN_UUID) | ||||
|                             .formatFileName("%s") | ||||
|                             .mapperBuilder() | ||||
|                             .enableMapperAnnotation() | ||||
|                             .enableBaseResultMap() | ||||
|                             .enableBaseColumnList() | ||||
|                             .formatMapperFileName("%sMapper") | ||||
|                             .formatXmlFileName("%sMapper") | ||||
|                             .serviceBuilder() | ||||
|                             .formatServiceFileName("%sService") | ||||
|                             .formatServiceImplFileName("%sServiceImpl") | ||||
|                             .controllerBuilder() | ||||
|                             .enableRestStyle() | ||||
|                             .formatFileName("%sController") | ||||
|                             .enableHyphenStyle(); | ||||
|                 }).execute(); | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 ZZX9599
					ZZX9599