Java springrest数据模型序列化
我有一个SpringBoot项目,它使用REST端点和 一些数据模型POJO通过 Spring存储库类。 服务层几乎什么都不做, 相反,它将请求委托给存储库和数据模型。 模型对象不会在会话中持久化或缓存 在这种情况下, 数据模型元素是否应该实现Java springrest数据模型序列化,java,spring,spring-boot,spring-data,Java,Spring,Spring Boot,Spring Data,我有一个SpringBoot项目,它使用REST端点和 一些数据模型POJO通过 Spring存储库类。 服务层几乎什么都不做, 相反,它将请求委托给存储库和数据模型。 模型对象不会在会话中持久化或缓存 在这种情况下, 数据模型元素是否应该实现可序列化 最佳做法是什么? 示例代码 public interface UserService { Optional<User> getUserByLoginName(String loginName); User find
可序列化
最佳做法是什么?
示例代码
public interface UserService {
Optional<User> getUserByLoginName(String loginName);
User findById(Integer id);
User findByUsername(String username);
User saveUser(User user);
}
您可以阅读Java中使用序列化的目的
在您的场景中,您使用spring repository将实体保存到数据库或从数据库中加载实体,并且这些实体绝对不需要是可序列化的,请为您的问题添加更多解释和示例代码好吗?我认为这有点晦涩。当不执行序列化时,不需要序列化实现。简短回答:否。添加了示例代码。可能开发人员想要实现缓存,但没有做到这一点。我没有找到任何其他好的理由,所以我也想和社区一起检查一下。我知道序列化的用法,而这段代码不是我的。当我看到这一点时,我开始思考是什么原因造成的,也许在这种情况下有一些我不知道的原因。可能开发人员计划创建缓存,但确实有机会这样做。
@Repository
public interface UserRepository extends JpaRepository<User, Integer> {
Optional<User> findByLoginName(String loginName);
Optional<User> findByName(String name);
List<User> findByFilial(String name);
}
@Entity
@Table(name = "user")
public class User implements Serializable{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id", nullable = false, updatable = false)
private Integer id;
@Column(nullable = false,unique = true)
private String loginName;
@Column(nullable = false)
private String name;
.....
// getters and setters and rest of the fields
}