spring - 我在春天看不到我的网页[春天]
问题描述
我是使用这个框架的新手,我正在尝试使用休眠连接部署一个 Web,我创建了一个 .xml 配置文件来连接到 PostgreSQL。
但日志显示此错误:
2020-11-14T22:32:28.610246+00:00 heroku[router]: at=info method=GET path="/"
host=gstlabs.herokuapp.com request_id=978ecfdc-917f-41a0-8867-8cc55b73def1 fwd="190.84.149.124" dyno=web.1 connect=2ms service=211ms status=500 bytes=610 protocol=https
2020-11-14T23:04:34.213061+00:00 heroku[web.1]: Idling
2020-11-14T23:04:34.215664+00:00 heroku[web.1]: State changed from up to down
2020-11-14T23:04:35.167671+00:00 heroku[web.1]: Stopping all processes with SIGTERM
2020-11-14T23:04:35.279279+00:00 app[web.1]: 2020-11-14 23:04:35.278 INFO 4 --- [extShutdownHook] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default'
2020-11-14T23:04:35.279712+00:00 app[web.1]: 2020-11-14 23:04:35.279 WARN 4 --- [extShutdownHook] o.s.b.f.support.DisposableBeanAdapter : Invocation of destroy method failed on bean with name 'entityManagerFactory': org.hibernate.AnnotationException: mappedBy reference an unknown target entity property: com.example.core.models.Projects.technologies in com.example.core.models.Technologies.projects
2020-11-14T23:04:35.280073+00:00 app[web.1]: 2020-11-14 23:04:35.279 INFO 4 --- [extShutdownHook] o.s.s.concurrent.ThreadPoolTaskExecutor : Shutting down ExecutorService 'applicationTaskExecutor'
2020-11-14T23:04:35.282600+00:00 app[web.1]: 2020-11-14 23:04:35.282 INFO 4 --- [extShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated...
2020-11-14T23:04:35.325392+00:00 app[web.1]: 2020-11-14 23:04:35.325 INFO 4 --- [extShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed.
2020-11-14T23:04:35.426750+00:00 heroku[web.1]: Process exited with status 143
有我的课程:[技术]
package com.example.core.models;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.ManyToMany;
import javax.persistence.Table;
@Entity
@Table(name="technologies")
public class Technologies {
@Id
@Column(name="id")
private int id;
@Column(name="name")
private String name;
public Technologies() {
}
public Technologies(String name) {
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Technologies [id=" + id + ", name=" + name + "]";
}
@ManyToMany(mappedBy="technologies")
private Set<Projects> projects = new HashSet<>();
public Set<Projects> getProjects() {
return projects;
}
public void setProjects(Set<Projects> projects) {
this.projects = projects;
}
}
[项目]
package com.example.core.models;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.Table;
@Entity
@Table(name="projects")
public class Projects {
@Id
@Column(name="id")
private int id;
@Column(name="photo")
private String photo;
@Column(name="link")
private String link;
public Projects() {
}
public Projects(String photo, String link) {
this.photo = photo;
this.link = link;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getPhoto() {
return photo;
}
public void setPhoto(String photo) {
this.photo = photo;
}
public String getLink() {
return link;
}
public void setLink(String link) {
this.link = link;
}
@Override
public String toString() {
return "Projects [id=" + id + ", photo=" + photo + ", link=" + link + "]";
}
@ManyToMany(cascade= {CascadeType.ALL})
@JoinTable(
name="projects_has_technologies",
joinColumns=@JoinColumn(name="project_id"),
inverseJoinColumns=@JoinColumn(name="technology_id")
)
Set<Technologies> tecnologies = new HashSet<>();
@ManyToMany(mappedBy="projects")
private Set<Profiles> profiles = new HashSet<>();
public Set<Technologies> getTecnologies() {
return tecnologies;
}
public void setTecnologies(Set<Technologies> tecnologies) {
this.tecnologies = tecnologies;
}
public Set<Profiles> getProfiles() {
return profiles;
}
public void setProfiles(Set<Profiles> profiles) {
this.profiles = profiles;
}
}
在这个项目中我的类中有一些代码,其他中间类是相似的,我正在尝试在数据库中插入一些对象。提前感谢您的帮助。
解决方案
例如,您是否尝试在项目中添加配置类
@Configuration
@EnableTransactionManagement
@EnableJpaRepositories( basePackages = "your repository package" )
@EntityScan( basePackages = {"your entity package1","your entity package2"}
public class TransactionConfiguration {}
这将帮助您在项目中找到您的实体类。
推荐阅读
- reactjs - 为什么我的 DOM 元素会发生这种奇怪的事情?
- mysql - PM2 导致 mysql 出现性能问题
- ruby-on-rails - 正则表达式从文本中提取 URL - Ruby
- angularjs - 在离子输入上使用 AngularJs 1.x ng-model 指令的 ionic 4 未定义
- blob - 如何使用队列触发器 Azure 函数创建 Blob 输出绑定
- delphi - BLE - 读取服务的多个特征值
- python - 如何直接从 URL 读取 .dat 文件并访问其中的列?
- macos - 如何将屏幕命令输出(x 秒数)存储到文件中
- ruby-on-rails - 在 Rails 项目中有一个空白/空的 .rb 文件有什么正当理由吗?
- java - Playframework Java 中的 POST 请求