我想创建一个与JHipster的用户实体有多对一关系的实体。
我使用JDL-Studio创建了以下实体和与用户的关系,它使用jhipster port-jdl作为. jh文件导入到我的微服务中:
entity Profile {
name String required
bio String
location String
photo ImageBlob
}
relationship ManyToOne {
Profile{user} to User
}
angularSuffix * with mySuffix
dto * with mapstruct
在编译我的微服务时,我得到以下错误:
轮廓java:44:错误:找不到符号私人用户;符号:类用户位置:类配置文件
轮廓映射器。java:12:错误:找不到symbol@Mapper(componentModel=“spring”,uses={UserMapper.class,})symbol:class UserMapper
轮廓映射器。java:12:错误:无法检索@Mapper annotation@Mapper(componentModel=“spring”,uses={UserMapper.class,})
剖面图第43-44行。java是:
@ManyToOne
private User user;
ProfileMapper.java如下:
package com.moogrisoft.openseas.service.mapper;
import com.moogrisoft.openseas.domain.*;
import com.moogrisoft.openseas.service.dto.ProfileDTO;
import org.mapstruct.*;
import java.util.List;
/**
* Mapper for the entity Profile and its DTO ProfileDTO.
*/
@Mapper(componentModel = "spring", uses = {UserMapper.class, })
public interface ProfileMapper {
@Mapping(source = "user.id", target = "userId")
ProfileDTO profileToProfileDTO(Profile profile);
List<ProfileDTO> profilesToProfileDTOs(List<Profile> profiles);
@Mapping(source = "userId", target = "user")
Profile profileDTOToProfile(ProfileDTO profileDTO);
List<Profile> profileDTOsToProfiles(List<ProfileDTO> profileDTOs);
/**
* generating the fromId for all mappers if the databaseType is sql, as the class has relationship to it might need it, instead of
* creating a new attribute to know if the entity has any relationship from some other entity
*
* @param id id of the entity
* @return the entity instance
*/
default Profile profileFromId(Long id) {
if (id == null) {
return null;
}
Profile profile = new Profile();
profile.setId(id);
return profile;
}
}
在我的项目中没有UserMapper类,因为没有为我生成。
如果我创建一个单片应用程序,那么创建实体关系就可以了,这只是一个微服务的问题,因为缺少用户类和相关类。
在JHipster微服务体系结构中,用户实体位于网关或UAA服务上。
配置文件实体
在UAA中,您可以创建与用户有关系的实体。向实体添加配置文件等附加信息是一个很好的用例。在网关中做同样的事情也是可能的。可以看到创建与用户有关系的实体的示例UAAhttps://github.com/xetys/microxchng-workshop/tree/master/uaa
博客实体
在微服务体系结构中,使用实体子生成器的工作方式略有不同,因为前端和后端代码不位于同一个应用程序中。https://jhipster.github.io/microservices-architecture/#generating_entities
对于这种类型的实体,我建议将用户的ID与实体一起存储。您将需要从客户端传递用户ID,因为该ID不容易从微服务访问。我们使用用户ID而不是登录的原因是登录可以通过用户管理页面进行修改,导致关系失败(从旧的登录值)。
另一个选项是使用userLogin,它可以通过SecurityU在微服务中访问tils.java.只要您处理登录可以更改,这是另一个选项。
好的,我知道错误了。但是在JHipster的情况下,我不能更改表名。 有人能帮我吗?
阅读本文以了解在 Dreamweaver 中如何指定缺少的字符实体来替换 XSLT 的特殊字符。 注意:用户界面已经在 Dreamweaver CC 和更高版本中做了简化。因此,您可能在 Dreamweaver CC 和更高版本中找不到本文中描述的一些选项。有关详细信息,请参阅此文章。 指定缺少的字符实体 在 XSLT 中,某些上下文中不允许存在某些字符。例如,您无法在标签之间的文本或属性值中使用
我对Spring和JPA等比较陌生。我试图在标签和客户之间建立一种多对多的关系(双向) 我想我的关系是对的。除了一个问题外,一切都很好。标记值保存到数据库后为“Null”。 因此,我要做的是——向客户添加一个新的标签列表,然后在保存客户时使用级联选项来保存它。在调用CustomerRepository之前,我设置了一个调试点。保存(customer),标记都有值。在保存操作(在客户存储库上)后,我
我有个问题。当我有其他实体时,我不知道如何创建API。我与邮递员工作,当我做一个请求,以看到所有项目从数据库,我想收到实体也。 例如,这是我的实体:
我正在创建医生、患者和专科三张表。患者可以有一个全科医生,但一个医生可以是许多患者的全科医生。每个医生都有自己的专长(例如神经外科医生、心脏病专家、泌尿科医生等)。当我尝试使用中间表在医生和专长之间建立多对多连接时,我会遇到一个错误“创建名为“entityManagerFactory”的bean时出错,该bean在类路径资源中定义”由特定mappedBy引用未知目标实体属性中的BeanCreati
我试图测试mvcControllers注入UserPrincipal的访问: restPockMockMvc.perform(get(“/pocs”).principal(authToken)).andreturn();