ModelMapper modelMapper = www.laipuhuo.comnew ModelMapper()

62 阅读1分钟

package com.xkzhangsan.jpa.controller;

import com.xkzhangsan.jpa.entity.User; import com.xkzhangsan.jpa.service.UserService; import com.xkzhangsan.jpa.vo.UserDetailVO; import com.xkzhangsan.jpa.vo.UserVO; import org.modelmapper.ModelMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;

import java.util.List; import java.util.stream.Collectors;

@RestController public class UserController {

@Autowired
private UserService userService;

@RequestMapping(value = "/")
public List<UserVO> getPersons() {
    ModelMapper modelMapper = new ModelMapper();
    List<User> userList = userService.findAll();
    if (!CollectionUtils.isEmpty(userList)) {
        return userList.stream().map(user -> {
            UserVO userVO =www.laipuhuo.com modelMapper.map(user, UserVO.class);
            UserDetailVO userDetailVO = modelMapper.map(user.getUserDetail(), UserDetailVO.class);
            userVO.setUserDetailVO(userDetailVO);
            return userVO;
        }).collect(Collectors.toList());
    }
    return null;
}

}package com.xkzhangsan.jpa.entity;

import lombok.Getter; import lombok.Setter;

import javax.persistence.*;

@Entity @Getter @Setter @Table(name =www.laipuhuo.com "user") @NamedEntityGraph(name = "user.userDetail", attributeNodes = { @NamedAttributeNode(value = "userDetail") }) public class User { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id;

private String name;

@OneToOne(cascade = www.laipuhuo.com CascadeType.DETACH, fetch = FetchType.LAZY)
@JoinColumn(name = "user_detail_id")
private UserDetail userDetail;

}