Cute Blinking Unicorn

분류 전체보기 240

JpaRepository 인터페이스 (SQL 구문 쓰지 않아도 삽입되는 것을 알 수 있다)

JpaRepository 인터페이스 개발자가 가장 많이 사용할 것이 JpaRepository 이다 일반적인 기능만을 사용할 때는 CrudRepository를 사용하는 것이 좋고 모든 JPA관련 기능을 사용하고 싶을 때는 JpaRepository를 이용*특별한 경우가 아니라면* 하는 것이 가장 무난한 선택 JpaRepository 는 인터페이스고 Spring Data JPA는 이를 상속하는 인터페이스를 선언하는 것만으로도 모든 처리가 끝나는 마법같은 일이 벌어진다. 프로젝트내에 repository 패키지 생성 후 MemoRepositoy 인터페이스를 추가한다. package org.zerock.ex2.repository; import org.springframework.data.jpa.repository...

엔티티 클래스와 JpaRepository

프로젝트에 entity패키지 추가하고 Memo 클래스를 정의 Memo에다가 package org.zerock.ex2.entity; import jakarta.persistence.*; import lombok.*; @Entity @Table(name = "tb1_memo") @ToString @Getter @Builder @AllArgsConstructor @NoArgsConstructor public class Memo { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long mno; @Column(length = 200, nullable = false) private String memoText; } 코드 작성하기 @Column 추..

Spring Data JPA의 소개

JPA(Java Persistence API) - java 언어를 통해서 데이터베이스와 같은 영속 계층을 처리하고자 하는 스펙 ORM이라는 기술에 대해서 설명이 가능해야함 O R Mapping 객체(class) / 관계 / 연결규칙 변수,메서드 / 변수(속성) 실행 JPA-API함수 > 함수들을 잘 쓰면 잘 접근한다는 얘기 JPA가 ORM이라는 매핑 기술, 가이드라인에 맞춰서 만들어진 명령들이다. ORM은 객체지향과 관련이 있다고 보면된다. 객체지향, 즉, 클래스를 관계형 데이터베이스에 보존한다 (거꾸로도 된다) 관계형 데이터베이스를 객체지향으로 갖고와서 프로그래밍에 쓸 수 있는 것 ORM의 시작은 단순해서 '객체지향'의 구조가 '관계형 데이터베이스'와 유사하다는 점에서 시작한다.

인텔리 마리아디비 연동시(MariaDB 연동)

https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client/3.3.2 Maven 버전 복사해와서 (MariaDB를 위한 JDBC 드라이버 설치) plugins { id 'java' id 'war' id 'org.springframework.boot' version '3.2.1' id 'io.spring.dependency-management' version '1.1.4' } group = 'org.zerock' version = '0.0.1-SNAPSHOT' java { sourceCompatibility = '17' } configurations { compileOnly { extendsFrom annotationProcessor }..

스프링부트로 이용한 쇼핑몰 만들기

파일이 22KB인데 20KB까지만 된다함 너무 아까운거 아니냐며........ 아무튼 파일을..어디다 올리지? 따로따로 압축해서 올림 1번은 src랑 build.gradle 2번은 그 외들 참고한 것 깃헙의 쇼핑몰 출처 찾아와서 긁어놓기 https://wikidocs.net/160022 0장 들어가기 전에 점프 투 스프링부트는 함께 만들어가는 온라인 책이다. 여러분의 피드백으로 점프 투 스프링부트는 성장해가고 있다. 책을 씀에 있어서 가장 두려운 것은 잘못된 정보의 전달이다… wikidocs.net 스프링부트 참고해서 활용

gpt를 통한 interface와 @Autowired와 @RequestMapping 알아가기

ChatGPT 한 마을에 동물들이 살고 있었습니다. 각 동물은 자신만의 특징과 능력을 가지고 있었어요. 이 동물들이 마을에서 원활하게 소통하고 협력하기 위해 인터페이스와 어댑터가 필요했어요. 1. Interface (인터페이스): 한 날, 마을에 새로운 동물이 들어왔어요. 이 동물은 'Communicator'라는 인터페이스를 가지고 있었습니다. Communicator 인터페이스는 'speak'라는 메서드를 정의하고 있었어요. 모든 동물이 이 인터페이스를 구현하여 'speak' 메서드를 가지도록 했어요. 이를 통해 모든 동물은 서로 다른 소리를 내지만, 같은 방식으로 의사소통할 수 있게 되었습니다. public interface Communicator { void speak(); } 2. @Autowire..

간단한 게시판에 날짜 추가하기

나는 계속 날짜가 DB에는 들어갔는데 서버에는 날짜가 출력이 안됐다.(null값) 그래서 왜인지 찾아보니 (도움받았다) db에서 타입을 date로 해야 이클립스에서도 date로 보낸 부분을 서로 맞게해야 서버에서 출력이 됨 MasriaDB CREATE TABLE simple_bbs ( id INT auto_increment PRIMARY KEY, writer VARCHAR(100) CHARACTER SET UTF8MB4, title VARCHAR(100) CHARACTER SET UTF8MB4, content VARCHAR(100) CHARACTER SET UTF8MB4, writeTime date DEFAULT CURRENT_TIMESTAMP ); SimpleBbsDto (interface에는 수정불필..

jsp, 스프링부트 간단한 게시판 만들기

프로젝트를 스프링부트로 만들고 MariaDB에서 테이블을 생성하기 CREATE TABLE simple_bbs ( id INT auto_increment PRIMARY KEY, writer VARCHAR(100) CHARACTER SET UTF8MB4, title VARCHAR(100) CHARACTER SET UTF8MB4, content VARCHAR(100) CHARACTER SET UTF8MB4 ); 여기서 " CHARACTER SET utf8mb4" 은 mariaDB에서 한글이 지원되지 않기 때문에 테이블 만들때 뒤에 이거를 넣으면 한글 입력이 된다. 의존성 선택시 MariaDB 체크해야함 위의 압축파일을 통해서 buid.gradle, application.properties 넣기 buid.gra..