
create table fruit (
id bigint auto_increment,
name varchar(25),
warehousingDate date,
price bigint,
isSold boolean default false,
primary key (id)
)
package com.group.libraryapp.dto.fruit.request;
import java.time.LocalDate;
public class FruitRequest {
private Long id;
private String name;
private LocalDate warehousingDate;
private Long price;
public FruitRequest(Long id, String name, LocalDate warehousingDate, Long price) {
this.id = id;
this.name = name;
this.warehousingDate = warehousingDate;
this.price = price;
}
public Long getId() {
return id;
}
public String getName() {
return name;
}
public LocalDate getWarehousingDate() {
return warehousingDate;
}
public Long getPrice() {
return price;
}
}
package com.group.libraryapp.controller.fruit;
import com.group.libraryapp.dto.fruit.request.FruitRequest;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class FruitController {
private final JdbcTemplate jdbcTemplate;
public FruitController(JdbcTemplate jdbcTemplate) {
this.jdbcTemplate = jdbcTemplate;
}
@PostMapping("/api/v1/fruit")
public void saveFruit(@RequestBody FruitRequest request) {
String sql = "INSERT INTO fruit (name, warehousingDate, price) VALUES (?, ?, ?)";
jdbcTemplate.update(sql, request.getName(), request.getWarehousingDate(), request.getPrice());
}
}


int 와 long 차이int 자료형은 32비트로 구성되어 있어 약 -2.1억부터 +2.1억까지의 범위를 나타낼 수 있음
long 자료형은 64비트로 구성되어 있어 훨씬 더 큰 범위의 정수를 나타낼 수 있음
**long**을 사용하여 더 넓은 범위의 정수를 안전하게 처리함!
