package com.men.common.model;
import com.jfinal.plugin.activerecord.Page;
import java.util.HashMap;
import java.util.Map;
/**
* 自定义json数据
*/
public class Formatt
{
public static Map<String, Object> layuiPage(Page<?> page)
{
return layuiPage(page, 0, "");
}
/**
* 按照layUI格式分页获取数据
*
* @param page
* @param code
* @param message
*/
public static Map<String, Object> layuiPage(Page<?> page, int code, String message)
{
Map<String, Object> result = new HashMap<String, Object>();
result.put("code", code);
result.put("msg", message);
result.put("count", page.getTotalRow());
result.put("data", page.getList());
return result;
}
}
package com.men.common.model;
import com.jfinal.plugin.activerecord.dialect.MysqlDialect;
import com.jfinal.plugin.activerecord.generator.Generator;
import com.jfinal.plugin.activerecord.generator.TypeMapping;
import com.jfinal.plugin.druid.DruidPlugin;
import com.men.common.AppConfig1;
import javax.sql.DataSource;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;
public class JFinalDemoGenerator
{
public static DataSource getDataSource()
{
DruidPlugin druidPlugin = AppConfig1.createDruidPlugin();
druidPlugin.start();
return druidPlugin.getDataSource();
}
public static void main(String[] args)
{
// model 所使用的包名 (MappingKit 默认使用的包名)
String modelPackageName = "com.men.common.model";
// base model 所使用的包名
String baseModelPackageName = modelPackageName + ".base";
// base model 文件保存路径
String baseModelOutputDir = System.getProperty("user.dir")
+ "/src/main/java/" + baseModelPackageName.replace('.', '/');
System.out.println("输出路径:" + baseModelOutputDir);
// model 文件保存路径 (MappingKit 与 DataDictionary 文件默认保存路径)
String modelOutputDir = baseModelOutputDir + "/..";
// 创建生成器
Generator generator = new Generator(getDataSource(), baseModelPackageName, baseModelOutputDir, modelPackageName, modelOutputDir);
// 配置是否生成备注
generator.setGenerateRemarks(true);
// 设置数据库方言
generator.setDialect(new MysqlDialect());
// 设置是否生成链式 setter 方法,强烈建议配置成 false,否则 fastjson 反序列化会跳过有返回值的 setter 方法
generator.setGenerateChainSetter(false);
// 添加不需要生成的表名到黑名单
generator.addBlacklist("adv");
// 设置是否在 Model 中生成 dao 对象
generator.setGenerateDaoInModel(false);
// 设置是否生成字典文件
generator.setGenerateDataDictionary(false);
// 设置需要被移除的表名前缀用于生成modelName。例如表名 "osc_user",移除前缀 "osc_"后生成的model名为 "User"而非 OscUser
generator.setRemovedTableNamePrefixes("t_");
// 将 mysql 8 以及其它原因之下生成 jdk 8 日期类型映射为 java.util.Date,便于兼容老项目,也便于习惯使用 java.util.Date 的同学
TypeMapping tm = new TypeMapping();
tm.addMapping(LocalDateTime.class, Date.class);
tm.addMapping(LocalDate.class, Date.class);
// tm.addMapping(LocalTime.class, LocalTime.class); // LocalTime 暂时不变
generator.setTypeMapping(tm);
// 生成
generator.generate();
}
}
package com.men.common.model;
import com.men.common.model.base.BasePicture;
/**
* Generated by JFinal.
*/
@SuppressWarnings("serial")
public class Picture extends BasePicture<Picture> {
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人