seong
Spring에서 Oracle연결 및 초기 셋팅, 테이블 만들기 테스트 본문
1. 프로젝트 생성
2. 라이브러리 선택 하고 finish
3. properties
server.port=8000
server.servlet.context-path=/
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
spring.datasource.url=jdbc:oracle:thin:@localhost:1521:xe
spring.datasource.username=SCOTT
spring.datasource.password=TIGER
spring.jpa.hibernate.ddl-auto=create
4. build.gradle 에서 의존성 추가 (서버 꺼진 상태에서 추가해주기)
implementation group: 'org.apache.tomcat.embed', name: 'tomcat-embed-jasper', version: '9.0.65'
implementation group: 'javax.servlet', name: 'jstl', version: '1.2'
5. webapp/WEB-INF/views 폴더 추가
6. index으로 초기에 설정한게 제대로 되는지 테스트 실행
여기 까지했는데 제대로 했는데 문제가 생겨있다면 , 오타 or DB가 꺼져있는 것이다
7. IndexController 생성
package site.metacoding.orange.web;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class IndexController {
@GetMapping("/index")
public String index() {
return "index";
}
}
8. 웹에서 제대로 나오는지 확인
테이블 생성
properties 작성
server.port=8000
server.servlet.context-path=/
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
spring.datasource.url=jdbc:oracle:thin:@localhost:1521:xe
spring.datasource.username=SCOTT
spring.datasource.password=TIGER
spring.jpa.hibernate.ddl-auto=create
spring.jpa.show-sql=true
1.Board.java (테이블)
package site.metacoding.orange.domain;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@Entity // 테이블 생성 속성
public class Board {
@Id // PK 설정
@GeneratedValue(strategy = GenerationType.IDENTITY)// 시퀀스 자동 생성
private Integer id;
private String title;
private String content;
private String author;
}
2. BoardDao 작성
package site.metacoding.orange.domain;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
// Dao를 자동 생성해주는 코드들.
@Repository // IOC 테이블이 띄워준다.
public interface BoardDao extends JpaRepository<Board,Integer>{//
}
Jpa에서 Dao를 알아서 만들어 주기 때문에 위 처럼 작성해주면 Dao를 내가 직접 작성 하지 않아주어도된다.
<테이블명, PK 타입>을 넣어준다
그리고 마지막에 @Repository 를 넣어주어야 Dao를 정상적으로 사용할 수 있다. 위의 코드는 문법 이기 때문에 우선 기억을 해두자.
BoardController.java
@Controller로 컨트롤러임을 명시 해주고, Dao를 사용하기 위해 생성자 주입을 해준다 .(@All~)
Insert 쿼리로 테스트
확인
기본 전략이 x-www-form-이기 때문에 body에 담아서 보낸다.
콘솔창에서 아래와 같이 나왔다면 된 것이다.
DB창 가서 확인
id 찾아 model에 담아서 view(jsp)에 들고가기
model에 담아주기
저장 하기 전 properties에서 설정 해줄것이 있다.
최초 테이블을 만들었으면 none로 바꾸어준다. 테이블을 계속 생성을 하는것을 방지
Get에서 받은 데이터 view로 뿌려주기 - jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
제목 : ${board.title}<br/>
내용 : ${board.content}<br/>
글쓴이 : ${board.author }<br/>
</body>
</html>
웹으로 뿌려준 데이터 확인
'Spring > SpringBoot' 카테고리의 다른 글
게시판 만들어보기 (로그인 이후) (0) | 2022.09.05 |
---|---|
DB연결해서 UPDATE, INSERT,DELETE,SELECT 해보기(Users-CRUD) (0) | 2022.09.01 |
Spring 에서 Oracle 테이블 만들어보기(Yellow프로젝트) (0) | 2022.08.31 |
Yellow 프로젝트 H2 데이터 연결 , Oracle 연결 (의존성 활용,JPA) (0) | 2022.08.31 |
Yellow 프로젝트 초기 세팅 (0) | 2022.08.31 |