Java使用ORM Bee自动生成Javabean.

Java使用ORM Bee自动生成Javabean.

配置数据库连接,添加了pom.xml依赖后,就可以写Java代码,自动生成Javabean了.

可参考: https://gitee.com/automvc/bee

https://github.com/automvc/bee

还可以生成字段文件, 这样可以避免硬编码引用字段,速度也比反射快.

java 复制代码
package org.teasoft.exam.bee.osql.autogen;

import org.teasoft.bee.osql.BeeException;
import org.teasoft.honey.osql.autogen.GenBean;
import org.teasoft.honey.osql.autogen.GenConfig;

public class GenBeanSimple3 {
	public static void main(String[] args) {
		try {

			GenConfig config = new GenConfig();
			config.setGenToString(true);// 生成toString方法
			config.setGenComment(true); // 可生成注释
			config.setCommentPlace(1); // 注释的位置

			GenBean genBean = new GenBean(config);
			// 生成字段文件, 这样可以避免硬编码引用字段,速度也比反射快.
			config.setGenFieldFile(true);
			config.setOverride(true); // 是否覆盖原来的文件
			config.setUpperFieldNameInFieldFile(true);

			genBean.genSomeBeanFile("exam");

			// it is easy way. 最简单的用法,所有的都用默认配置.
//			new GenBean().genSomeBeanFile("orderhistory");

		} catch (BeeException e) {
			e.printStackTrace();
		}
	}
}

DB:

生成的Javabean:

java 复制代码
package entity;

import java.io.Serializable;

/**
 * @author Honey
 * Create on 2024-12-13 23:20:08
 */
public class Exam implements Serializable {

	private static final long serialVersionUID = 1590598107298L;

	private Long id;
	private Long userid;
	private String lastName;
	private String firstName;
	private String birthDate;
	private String sex;
	private Long groupId;
	private String groupName;
	private String checkDate;
	private String checkTime;
	private String operator;
	private String updatetime;
	private String checkData;

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public Long getUserid() {
		return userid;
	}

	public void setUserid(Long userid) {
		this.userid = userid;
	}

	public String getLastName() {
		return lastName;
	}

	public void setLastName(String lastName) {
		this.lastName = lastName;
	}

	public String getFirstName() {
		return firstName;
	}

	public void setFirstName(String firstName) {
		this.firstName = firstName;
	}

	public String getBirthDate() {
		return birthDate;
	}

	public void setBirthDate(String birthDate) {
		this.birthDate = birthDate;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public Long getGroupId() {
		return groupId;
	}

	public void setGroupId(Long groupId) {
		this.groupId = groupId;
	}

	public String getGroupName() {
		return groupName;
	}

	public void setGroupName(String groupName) {
		this.groupName = groupName;
	}

	public String getCheckDate() {
		return checkDate;
	}

	public void setCheckDate(String checkDate) {
		this.checkDate = checkDate;
	}

	public String getCheckTime() {
		return checkTime;
	}

	public void setCheckTime(String checkTime) {
		this.checkTime = checkTime;
	}

	public String getOperator() {
		return operator;
	}

	public void setOperator(String operator) {
		this.operator = operator;
	}

	public String getUpdatetime() {
		return updatetime;
	}

	public void setUpdatetime(String updatetime) {
		this.updatetime = updatetime;
	}

	public String getCheckData() {
		return checkData;
	}

	public void setCheckData(String checkData) {
		this.checkData = checkData;
	}

	public String toString() {
		StringBuilder str = new StringBuilder();
		str.append("Exam[");
		str.append("id=").append(id);
		str.append(",userid=").append(userid);
		str.append(",lastName=").append(lastName);
		str.append(",firstName=").append(firstName);
		str.append(",birthDate=").append(birthDate);
		str.append(",sex=").append(sex);
		str.append(",groupId=").append(groupId);
		str.append(",groupName=").append(groupName);
		str.append(",checkDate=").append(checkDate);
		str.append(",checkTime=").append(checkTime);
		str.append(",operator=").append(operator);
		str.append(",updatetime=").append(updatetime);
		str.append(",checkData=").append(checkData);
		str.append("]");
		return str.toString();
	}
}

生成字段文件

config.setUpperFieldNameInFieldFile(true);****//属性名用大写.

java 复制代码
package entity.field;

/**
 * Relative field name for Javabean Exam
 * @author Honey
 * Create on 2024-12-13 22:30:39
 */
public interface Exam_F {

	String ID = "id";

	String USERID = "userid";

	String LAST_NAME = "lastName";

	String FIRST_NAME = "firstName";

	String BIRTH_DATE = "birthDate";

	String SEX = "sex";

	String GROUP_ID = "groupId";

	String GROUP_NAME = "groupName";

	String CHECK_DATE = "checkDate";

	String CHECK_TIME = "checkTime";

	String OPERATOR = "operator";

	String UPDATETIME = "updatetime";

	String CHECK_DATA = "checkData";

	String ENTITY_NAME = "Exam";
	String TABLE_NAME = "exam";
	String ALL_NAMES = "id,userid,lastName,firstName,birthDate,sex,groupId,groupName,checkDate,checkTime,operator,updatetime,checkData";
}

另外一种风格. 属性名和字符串是一样的. 用一样就好了,可必让自己那么累,同时看两种风格的命名呢,达到去硬编码的目的就好.

java 复制代码
package entity.field;

/**
 * Relative field name for Javabean Exam
 * @author Honey
 * Create on 2024-12-13 22:28:20
 */
public interface Exam_F {

	String id = "id";

	String userid = "userid";

	String lastName = "lastName";

	String firstName = "firstName";

	String birthDate = "birthDate";

	String sex = "sex";

	String groupId = "groupId";

	String groupName = "groupName";

	String checkDate = "checkDate";

	String checkTime = "checkTime";

	String operator = "operator";

	String updatetime = "updatetime";

	String checkData = "checkData";

	String ENTITY_NAME = "Exam";
	String TABLE_NAME = "exam";
	String ALL_NAMES = "id,userid,lastName,firstName,birthDate,sex,groupId,groupName,checkDate,checkTime,operator,updatetime,checkData";
}
相关推荐
珹洺27 分钟前
C++从入门到实战(十)类和对象(最终部分)static成员,内部类,匿名对象与对象拷贝时的编译器优化详解
java·数据结构·c++·redis·后端·算法·链表
一 乐30 分钟前
网红酒店|基于java+vue的网红酒店预定系统(源码+数据库+文档)
java·开发语言·数据库·毕业设计·论文·springboot·网红酒店预定系统
xyliiiiiL2 小时前
从责任链模式聊到aware接口
java·开发语言
码农老起6 小时前
与Aspose.pdf类似的jar库分享
java·pdf·jar
程序猿小D6 小时前
第三百八十九节 JavaFX教程 - JavaFX WebEngine
java·eclipse·intellij-idea·vr·javafx
self-discipline6348 小时前
【Java】Java核心知识点与相应面试技巧(七)——类与对象(二)
java·开发语言·面试
wei3872452328 小时前
java笔记02
java·开发语言·笔记
zjj5878 小时前
Docker使用ubuntu
java·docker·eureka
士别三日&&当刮目相看8 小时前
JAVA学习*简单的代理模式
java·学习·代理模式
ShareBeHappy_Qin9 小时前
设计模式——设计模式理念
java·设计模式