반응형
SMALL
package com.in28minutes.springboot.learnjpaandhidernate.course.jdbc;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;
import org.springframework.web.bind.annotation.RequestMapping;
import com.fasterxml.jackson.annotation.JsonTypeInfo.Id;
import com.in28minutes.springboot.learnjpaandhidernate.course.Course;
@Repository
public class CourseJdbcRepository {
@Autowired
private JdbcTemplate springJdbcTemplate;
private static String INSERT_QUERY =
"""
insert into course(id, name, author)
values(?, ?, ?)
""";
public void insert(Course course) {
springJdbcTemplate.update(INSERT_QUERY, course.getId(), course.getName(), course.getAuthor());
}
private static String DELETE_QUERY =
"""
delete
from course
where id = ?
""";
public void deleteById(long id) {
springJdbcTemplate.update(DELETE_QUERY, id);
}
private static String SELECT_QUERY =
"""
select *
from course
where id = ?
""";
public Course findById(long id) {
return springJdbcTemplate.queryForObject(SELECT_QUERY, new BeanPropertyRowMapper<>(Course.class), id);
}
}
package com.in28minutes.springboot.learnjpaandhidernate.course.jdbc;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component;
import com.in28minutes.springboot.learnjpaandhidernate.course.Course;
@Component
public class CoursejdbcCommandLineRunner implements CommandLineRunner{
@Autowired
private CourseJdbcRepository repository;
@Override
public void run(String... args) throws Exception {
repository.insert(new Course(1,"Learn AWS NOW!", "in28minutes"));
repository.insert(new Course(2,"Learn Azure NOW!", "in28minutes"));
repository.insert(new Course(3,"JH","in28minutes"));
repository.deleteById(1);
System.out.println(repository.findById(2));
System.out.println(repository.findById(3));
}
}
package com.in28minutes.springboot.learnjpaandhidernate.course;
public class Course {
private long id;
private String name;
private String author;
public Course() {
}
public Course(long id, String name, String author) {
super();
this.id = id;
this.name = name;
this.author = author;
}
public long getId() {
return id;
}
public String getName() {
return name;
}
public String getAuthor() {
return author;
}
public void setId(long id) {
this.id = id;
}
public void setName(String name) {
this.name = name;
}
public void setAuthor(String author) {
this.author = author;
}
@Override
public String toString() {
return "Course [id=" + id + ", name=" + name + ", author=" + author + "]";
}
}
반응형
LIST
'Spring > Spring Boot' 카테고리의 다른 글
Bufferread , Scanner 비교 (0) | 2023.08.31 |
---|---|
[JAVA] Interger와 int의 차이점, == 연산과 equals()의 차이점, Array 와 Array List 차이점 정리 (0) | 2023.08.31 |
H2 테이블 입력 (0) | 2023.08.27 |
H2콘솔 및 테이블 생성 (0) | 2023.08.27 |
spring-boot actuator 사용 (0) | 2023.08.27 |