전체 글 58

1.1 - 프로그래밍과 C 언어 ~ 2.2 상수와 데이터 표현 방법

1.1 프로그래밍과 C 언어 저장공간 확보 > 데이터 입력 > 처리 > 출력 ( 순서가 있음 ) 컴퓨터에게 명령 >> 프로그래밍 언어 1972 년 벨 연구소의 데니스 리치, 켐 톤슨 개발 하드웨어 제어, 호환성, 이식성 함수 사용 1.2 컴파일러 사용법 소스코드 작성 >> 컴파일 >> 실행파일 완성 >> 운영체제에서 실행 소스코드 하드디스크에 텍스트파일 형식으로 저장 (ASCII) 형식 ASCII 1Byte(8bit) 로 저장 컴파일 코드화된 문자 >> 명령들의 집합 21. C 프로그램의 기본 형태와 데이터 출력 방법 메인 함수 구조 Int main (void)

[My-SQL] ON DELETE CASCADE (외래키로 연결된 row 한번에 지우는 법)

ERROR 1451 (23000): Cannot delete or update a parent row: a foreign key constraint fails 지울려고 하는 테이블의 row 가 다른 테이블에 foreign key로 묶여 있을때 나는 오류 ON DELETE CASCADE foreign key 로 연결된 데이터들이 일관성을 유지할 수 있도록 하기 위해서, foreign key constraints 라는 것이 있습니다. 공식 문서는 CASCADE 를 foreign key constraints 에서 옵션으로 사용할 수 있는 Referential Actions 이라고 설명합니다. CASCADE 는 부모 테이블의 row 에 DELETE 또는 UPDATE 명령어를 적용할 때, 자동적으로 자식 테이블의..

DB/MySQL 2023.02.17

12. 컴포넌트 스캔과 자동 의존관계 설정

- 컴포넌트 스캔과 자동 의존관계 설정 회원 컨트롤러가 회원서비스와 회원 리포지토리를 사용할 수 있게 의존관계를 준비. 컨트롤러가 서비스를 통해 회원가입 하고 서비스를 통해 조회를 할 수 있음 ( 컨트롤러가 서비스를 의존함) (의존관계) @Controller : 스프링 컨테이너에 등록된 후 스프링에서 관리가 됨. @Controller public class MemberController { private final MemberService memberService; @Autowired public MemberController(MemberService memberService) { this.memberService = memberService; } @Autowired 생성자에 @Autowired 가 있으..

회원가입 폼 , 회원가입 시 유효성 검사 JS

회원가입 이름 좋은 이름 입니다! 한글만 입력 가능합니다(특수기호, 공백 사용금지). 별명 좋은 별명 입니다! 별명을 입력해주세요(공백 사용금지). 아이디 사용가능한 아이디 입니다. 5글자 이상 20글자이내 알파벳, _ ,숫자 만 입력가능합니다. 비밀번호 좋은 비밀번호 입니다. 8~16자 영문, 숫자 를 사용하세요(공백금지). 비밀번호확인 비밀번호가 같습니다! 비밀번호가 틀립니다! 이메일 이메일 양식이 틀렸습니다. 핸드폰 공백이있습니다. 우편번호 우편번호를 입력해주세요. 주소 주소를 입력해주세요. 상세주소 상세 주소를 입력해주세요. 알파벳 , 한글 , 숫자 유효성 검사 $('.onlyAlphabetAndNumber').keyup(function(event){ if (!(event.keyCode >=37 ..

JavaScript 2023.01.17

11. 회원 서비스 테스트

IntelliJ 단축키 Ctrl + Shift + T : 테스트 생성 멤버서비스테스트 작성 package hello.hellospring.service; import hello.hellospring.domain.Member; import hello.hellospring.repository.MemoryMemberRepository; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import static org.assertj.core.api.Assertions.*; import static org.junit.jupiter.api.Assertions...

10. 회원 서비스 개발

IntelliJ 단축키 soutv : value를 바로 sysout 하는 기능 실행취소 (redo) : Ctrl + Shift + z Rename : Shift + F6 변수추출 : Ctrl + Shft + v 회원 서비스 작성 package hello.hellospring.service; import hello.hellospring.domain.Member; import hello.hellospring.repository.MemberRepository; import hello.hellospring.repository.MemoryMemberRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springf..

9. 회원 리포지토리 테스트 케이스 작성

- 개발한 기능을 테스트 할 때 자바의 main 메소드 혹은 웹앱의 컨트롤러를 통해서 하면 단점이 많음( 실행하는데 오래걸리고 , 반복실행하기 어렵고 , 여러 테스트를 한번에 하기 어려움 .) 개발한 기능을 테스트할때 자바에서 JUnit 이라는 프레임 워크을 통해 단점을 보완함. 회원 리포지토리 메모리 구현체 테스트 package hello.hellospring.repository; import hello.hellospring.domain.Member; import org.assertj.core.api.Assertions; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; import java.util.List; impo..

8. 회원 도메인과 리포지토리 만들기

InteliJ 단축키 Alt + Enter = 다른 클래스 임포트 Alt + Insert = 생성 * 모든 강의를 듣고 작성을 해서 추가 된 코드가 있음. 회원 객체 생성 package hello.hellospring.domain; import javax.persistence.*; @Entity public class Member { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return nam..

자바 문법 정리 ( Map)

Map https://wakestand.tistory.com/112 자바 Map 사용법부터 출력까지 일단 Map의 특징을 먼저 알아보자면 Map은 선언 시 로 값을 넣는다 Key와 Value는 한 쌍으로 Key로 식별하고 Value에 사용할 값을 넣는 식이다 여기서 Key는 중복이 불가능하고 동일한 Key 값으로 값을 넣 wakestand.tistory.com Hash Map https://d2.naver.com/helloworld/831311 ( 네이버 동작원리 설명) https://codechacha.com/ko/java-map-hashmap/ Java - HashMap 사용 방법 및 예제 HashMap은 Map의 일종으로 key와 value의 쌍으로 이루어진 데이터를 보관합니다. HashMap은 데..