題名通りにidを自動で1~から順番に挿入したいのですが、現状はidに0番しか入らず解決策を探っております。
以下に現在のコードを記します。
domain
Book.java
package com.example.demo.domain; import java.sql.Date; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; @Entity public class Book { @Id @GeneratedValue private int id; private String title; private String author; private String publisher; private Date buyDate; private Date releaseDate; private String overView; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getAuthor() { return author; } public void setAuthor(String author) { this.author = author; } public String getPublisher() { return publisher; } public void setPublisher(String publisher) { this.publisher = publisher; } public Date getBuyDate() { return buyDate; } public void setBuyDate(Date buyDate) { this.buyDate = buyDate; } public Date getReleaseDate() { return releaseDate; } public void setReleaseDate(Date releaseDate) { this.releaseDate = releaseDate; } public String getOverView() { return overView; } public void setOverView(String overView) { this.overView = overView; } }
repository
BookRepositoryImpl.java
(操作は投稿時なので、create文のみ記述します。)
@Override public void save(Book book) { jdbcTemplate.update("INSERT INTO book(id INT(11) AUTO_INCREMENT, title, author, publisher, buy_Date, release_Date, over_View) VALUES(?, ?, ?, ?, ?, ?, ?)", book.getId(), book.getTitle(), book.getAuthor(), book.getPublisher(), book.getBuyDate(), book.getReleaseDate(), book.getOverView() ); }
schema.sql
CREATE TABLE book ( id int(5) NOT NULL AUTO_INCREMENT, title varchar(50) , author varchar(20) , publisher varchar(20), buy_Date date, release_Date date, over_View varcher(100), PRIMARY KEY (id) ) ;
BookRepositoryImpl.java内のsql文を正しく記入すれば解決すると考えてますが、かなり詰まってしまい
どなたかのお力をいただければと思います。
https://techacademy.jp/magazine/26469
上の記事等でカラムのNULL関係も試してみたのですがうまくはいきませんでした。
情報が足りなければ是非おっしゃっていただけたらと思います。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。