繁体   English   中英

Mybatis 插入自定义对象

[英]Mybatis insert custom object

在我为 mybatis 找到的几乎所有示例中,人们指定要插入的每一列。我不想指定表中的每一列。 有什么办法可以,当我用用户对象调用 addProfile() 时。 所有属性映射并直接插入到给定表的所有列中? 我想要这样...

@Insert("insert into user values #{user}")
@Options(useGeneratedKeys = true, keyProperty = "id", keyColumn = "id")
public int addProfile(User user);

您可以在addProfile()方法中将 User 对象作为参数传递。 但是您在@Insert注释中指定的 String 是一个普通的 SQL 语句,它不知道您传递给该语句的用户对象。

这个回答明确指出,

MyBatis 在从数据库读取数据时有自动映射,但没有选项在插入时自动映射字段。

SQL select 语句( select * from table )中可能有隐式字段,因此在这种情况下会自动映射到 POJO,但在更新或插入中不可能有隐式字段,因此没有自动映射。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM