在Grails中使用MapStruct可以通过以下步骤实现:
dependencies {
// 其他依赖...
implementation 'org.mapstruct:mapstruct:1.4.2.Final'
annotationProcessor 'org.mapstruct:mapstruct-processor:1.4.2.Final'
}
// DTO类
class UserDTO {
String name
int age
// 其他属性...
}
// 领域模型类
class User {
String name
int age
// 其他属性...
}
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.factory.Mappers;
@Mapper
public interface UserMapper {
UserMapper INSTANCE = Mappers.getMapper(UserMapper.class);
@Mapping(source = "name", target = "name")
@Mapping(source = "age", target = "age")
User dtoToEntity(UserDTO dto);
}
import org.springframework.beans.factory.annotation.Autowired
class UserService {
@Autowired
UserMapper userMapper
User saveUser(UserDTO userDTO) {
User user = userMapper.dtoToEntity(userDTO)
// 执行保存操作...
return user
}
}
在上述示例中,我们通过调用userMapper.dtoToEntity(userDTO)
方法将UserDTO对象映射为User对象。
这样,你就可以在Grails中使用MapStruct进行对象之间的映射了。MapStruct可以帮助你减少手动编写大量的映射代码,提高开发效率。
推荐的腾讯云相关产品:腾讯云云服务器(CVM)和腾讯云数据库(TencentDB)。你可以通过以下链接了解更多关于腾讯云的产品信息:
领取专属 10元无门槛券
手把手带您无忧上云