본문 바로가기

공부/공부를해보자

2. DB글 가져와보기

spring boot 설정후 db에 연결이 잘 되는지 테스트 해보기로 했다.


1. 객체 만들기

게시판 글을 저장 하기 위한 객체 생성

package com.cafe.board.model;


import java.util.Date;


import javax.persistence.Entity;

import javax.persistence.GeneratedValue;

import javax.persistence.GenerationType;

import javax.persistence.Id;


@Entity

public class Articles { 


@Id @GeneratedValue(strategy = GenerationType.AUTO) 

private Long articleId; 

private String id;

private String nickname;

private String title;

private String content;

private Date regDate;

public String getId() {

return id;

}

public void setId(String id) {

this.id = id;

}

public String getNickname() {

return nickname;

}

public void setNickname(String nickname) {

this.nickname = nickname;

}

public String getTitle() {

return title;

}

public void setTitle(String title) {

this.title = title;

}

public String getContent() {

return content;

}

public void setContent(String content) {

this.content = content;

}

public Date getRegDate() {

return regDate;

}

public void setRegDate(Date regDate) {

this.regDate = regDate;

}

public Long getArticleId() {

return articleId;

}

}


글을 저장하기 위한 객체를 생성했다.

게시글 번호를 id로 주고 , GenerationType.AUTO를 주어 자동 증가 하도록 설정~!


2. data.sql 설정

자동으로 기본 데이터를 넣어 주기 위해 data.sql 파일을 만들어 insert문을 작성해줌.

INSERT INTO ARTICLES(content, nickname,id,reg_date,title)  VALUES('안녕안냥','namaan','나만',CURRENT_TIMESTAMP(),'첫글!!');



3. config 설정하기

h2 디비를 웹브라우저에서 확인 하기 위해 config 설정.

@Configuration

public class H2DBConfig {

@Bean

public ServletRegistrationBean h2servletRegistration() {

ServletRegistrationBean registration = new ServletRegistrationBean(new WebServlet());

registration.addUrlMappings("/console/*");

return registration;

}

}

이렇게 설정하면 웹 화면에서도 DB 확인을 할 수 있다 !


서버 재시작 후 

브라우저 창에 http://localhost:8080/console/ 입력하면 아래와 같이 접속 화면이 나온다.



접속후 


생성한 객체명과 변수들로 테이블이 잘 생성 되었고, 

기본 생성을 위한 sql문으로 데이터까지 잘 생성된걸 확인 할 수 있다~!!!!




4, repository 만들기!

DB 연동을 담당하는 repository를 만들어 보았다.

package com.cafe.board.repository;


import org.springframework.data.jpa.repository.JpaRepository;


import com.cafe.board.model.Articles;


public interface ArticlesRepository  extends JpaRepository<Articles, Long> {

}


jpa를 사용할 예정이라 JpaRepository를 상속받았다.


5. Service 만들기


@Service

@Transactional 

public interface ArticleService {

public List<Articles> findArticles();

}


@Service

public class ArticleServiceImpl implements ArticleService{

@Autowired

private ArticlesRepository articleRepository;

@Override

public List<Articles> findArticles(){

return articleRepository.findAll();

}


}



6. controller 만들기

@RestController

@RequestMapping("/article")

public class ArticleController {


@Autowired

private ArticleService articleService;

@RequestMapping("/list")

public List<Articles> list(Model model) {

List<Articles> articleList = articleService.findArticles();

return articleList;

}


}



7. http://localhost:8080/article/list 실행

테이블에 저장된 데이터가 잘 나옴!



끝!!