【发布时间】:2017-11-15 13:06:04
【问题描述】:
需要帮助请在 MyBank jEE 应用程序中。问题是休眠能够创建表,但它不插入数据这里是我的代码
import java.util.Date;
import org.sid.dao.ClientRepository;
import org.sid.dao.CompteRepository;
import org.sid.entities.Client;
import org.sid.entities.Compte;
import org.sid.entities.CompteCourant;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
@SpringBootApplication
public class MyBankApplication implements CommandLineRunner {
@Autowired
private ClientRepository clientrepository;
@Autowired
private CompteRepository compteRepository;
public static void main(String[] args) {
ApplicationContext ctx = SpringApplication.run(MyBankApplication.class, args);
// ClientRepository clientrepository = ctx.getBean(ClientRepository.class);
// clientrepository.save(new Client("hassan", "hassan@gmail.com"));
}
@Override
public void run(String... arg0) throws Exception {
Client c1 = clientrepository.save(new Client("Hassan", "hasan@gmail.com"));
Client c2 = clientrepository.save(new Client("Rachide", "Rachide@gmail.com"));
Compte cpt = compteRepository.save(new CompteCourant("c1", new Date(), 90000, c1, 5000));
}
}
package org.sid.dao;
import org.sid.entities.Client;
import org.springframework.data.jpa.repository.JpaRepository;
public interface ClientRepository extends JpaRepository<Client, Long> {
}
import java.io.Serializable;
import java.util.Collection;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.OneToMany;
@Entity
public class Client implements Serializable {
@Id
@GeneratedValue
private Long code;
private String nom;
private String email;
@OneToMany(mappedBy = "client", fetch = FetchType.LAZY)
private Collection<Compte> comptes;
public Client() {
super();
}
public Client(String nom, String email) {
super();
this.nom = nom;
this.email = email;
}
public Long getCode() {
return code;
}
public void setCode(Long code) {
this.code = code;
}
public String getNom() {
return nom;
}
public void setNom(String nom) {
this.nom = nom;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public Collection<Compte> getComptes() {
return comptes;
}
public void setComptes(Collection<Compte> comptes) {
this.comptes = comptes;
}
}
这是它无法将数据回复到数据库的错误
HHH000230:架构导出完成 2017-06-13 17:51:40.270 INFO 73460 --- [restartedMain] j.LocalContainerEntityManagerFactoryBean:为持久性单元“默认”初始化 JPA EntityManagerFactory 2017-06-13 17:51:41.152 INFO 73460 --- [restartedMain] swsmmaRequestMappingHandlerAdapter:寻找@ControllerAdvice:org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@2eaf2b1:启动日期[6 月 13 日星期二 17:51: 30 CEST 2017];上下文层次的根 2017-06-13 17:51:41.353 INFO 73460 --- [restartedMain] swsmmaRequestMappingHandlerMapping:将“{[/error]}”映射到公共 org.springframework.http.ResponseEntity> org.springframework.boot.autoconfigure.web。 BasicErrorController.error(javax.servlet.http.HttpServletRequest) 2017-06-13 17:51:41.356 INFO 73460 --- [restartedMain] swsmmaRequestMappingHandlerMapping:将“{[/error],produces=[text/html]}”映射到公共 org.springframework.web.servlet.ModelAndView org .springframework.boot.autoconfigure.web.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse) 2017-06-13 17:51:41.440 INFO 73460 --- [restartedMain] oswshandler.SimpleUrlHandlerMapping:将 URL 路径 [/webjars/] 映射到 [class org.springframework.web.servlet.resource.资源HttpRequestHandler] 2017-06-13 17:51:41.441 INFO 73460 --- [restartedMain] oswshandler.SimpleUrlHandlerMapping:映射的 URL 路径 [/] 到 [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler] 类型的处理程序] 2017-06-13 17:51:41.577 INFO 73460 --- [restartedMain] oswshandler.SimpleUrlHandlerMapping:映射 URL 路径 [/**/favicon.ico] 到类型 [class org.springframework.web.servlet.resource .ResourceHttpRequestHandler] 2017-06-13 17:51:42.822 INFO 73460 --- [restartedMain] o.s.b.d.a.OptionalLiveReloadServer:LiveReload 服务器正在端口 35729 上运行 2017-06-13 17:51:43.115 INFO 73460 --- [restartedMain] o.s.j.e.a.AnnotationMBeanExporter:在启动时为 JMX 暴露注册 bean 2017-06-13 17:51:43.319 INFO 73460 --- [restartedMain] s.b.c.e.t.TomcatEmbeddedServletContainer:Tomcat 在端口:8080 (http) 上启动 休眠:插入客户端(电子邮件,名义)值(?,?) 休眠:插入客户端(电子邮件,名义)值(?,?) 休眠:选择 comptecour0_.code_compte 作为 code_com2_1_0_,comptecour0_.code_cli 作为 code_cli7_1_0_,comptecour0_.date_creation 作为 date_cre3_1_0_,comptecour0_.solde 作为solde4_1_0_,comptecour0_.decouvert 作为 decouver6_1_0_ from compte comptecour0_ where comptecour0_.code_compte=?和 comptecour0_.type_cpte='CC' 休眠:从客户端client0_中选择client0_.code作为code1_0_0_,client0_.email作为email2_0_0_,client0_.nom作为nom3_0_0_,其中client0_.code=? 休眠:插入compte(code_cli,date_creation,solde,decouvert,type_cpte,code_compte)值(?,?,?,?,'CC',?) 2017-06-13 17:51:43.633 INFO 73460 --- [restartedMain] org.sid.MyBankApplication:在 15.741 秒内启动 MyBankApplication(JVM 运行 16.96) 2017-06-13 17:51:47.555 INFO 73460 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/]:初始化 Spring FrameworkServlet 'dispatcherServlet' 2017-06-13 17:51:47.555 INFO 73460 --- [nio-8080-exec-1] os.web.servlet.DispatcherServlet:FrameworkServlet 'dispatcherServlet':初始化开始 2017-06-13 17:51:47.585 INFO 73460 --- [nio-8080-exec-1] os.web.servlet.DispatcherServlet:FrameworkServlet 'dispatcherServlet':初始化在 30 毫秒内完成
:
【问题讨论】:
标签: java hibernate jpa spring-boot