我一直在尝试从表中检索所有数据,但
“导致错误的原因:org.postgresql.util.错误:列tenantenti0_.module_name不存在”
我已尝试以下所有方法,但问题仍然存在:
1.在www.example.com文件中添加application.properties--〉spring.jpa.properties. hib.默认模式=${您的默认模式名称}
1.表列名或代码端没有驼峰式大小写问题。
1.在@Table(name =“tenant_info”,schema =“public”)下也提到了模式名称,但是对我来说它是公共的,所以不应该只在需要提到自定义模式的情况下才起作用。
1.已尝试在实体类中使用@namedQuery,并在存储库类中使用@query,但问题仍然相同。
下面是我的实体类:
@Entity
@Table(name = "tenant_info", schema = "public")
@NamedQuery(name = "TenantEntity.findAll", query = "SELECT t FROM TenantEntity t")
@ApplicationScope
public class TenantEntity implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Column(name = "id")
private int id;
@Column(name = "tenant_id")
private String tenantId;
@Column(name = "module_name")
private String moduleName;
@Column(name = "url")
private String url;
@Column(name = "username")
private String userName;
@Column(name = "password")
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getTenantId() {
return tenantId;
}
public void setTenantId(String tenantId) {
this.tenantId = tenantId;
}
public String getModuleName() {
return moduleName;
}
public void setModuleName(String moduleName) {
this.moduleName = moduleName;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
下面是我的Repository类:@Repository
public interface TenantRepository extends JpaRepository<TenantEntity, String> {
public List<TenantEntity> findAll();
public TenantEntity findByTenantId(String tenantId);
public List<TenantEntity> findByModuleName(String moduleName);
}
已经附上了table的照片。
1条答案
按热度按时间00jrzges1#
这可能是因为您的数据库架构与实体类不同步。我的建议是检查您的数据库架构,以查看您的表是否具有您所期望的所有列。如果您向我们显示您的数据库表,可能会更有帮助;)