Incorrect column specifier for column 'user_no'
: DB에서 auto_increment 옵션은 int나 float같은 숫자값에만 사용할 수 있다
Long으로 썼음 mysql에서 Long형은 bigint이다
mysql에서 enum을 쓰지 않는 이유
https://kimfk567.tistory.com/26
import 자동 정리 단축키
control + option + o
현재시간 등록
sysdate / timestemp 차이 있음
실무에서는 생성자 주입, 필드 주입중에서
어떤것을 사용하나요?
==> 생성자 어노테이션 사용
기본적인 셋팅은 뭐가 있나요?
JPA, mybatis 는 라이브러리!
레이어
Controller
Service - > domain(비즈니스 로직)의 순서를 정해주는 역할
Service -> 핵심 비즈니스 로직
domain에서는 public method가 중요
커스텀 리플렉션 (어노테이션 커스텀)
어노테이션
@Getter @Setter : 인텔리제이에서 자동생성해주는것이 아닌 클래스에 어노테이션 설정을 통해 전체 getter, setter 대체 가능함
일정 필드에만 적용하고싶은 경우 해당 필드위에 어노테이션 적용
@ToString : 투스트링은 일정 변수만 사용 불가
이유는 어노테이션 안에 들어가보면 @Target이 있다
해당 부분에 getter, setter ({ElementType.FIELD, ElementType.TYPE})로 되어있고, 투스트링은 FIELD가 없다. 필드에는 적용이 불가는 하다는 것 ==> 인터페이스이기 때문에
@ToString(of = {"type","buying"}) —> 해당 범위 정해주기
생성자 어노테이션 디폴트 어노테이션 : @NoArgsConstructor 전체 다 있는 어노테이션 : @AllArgsConstructor 나머지 다른 타입의 어노테이션만 작성해주면 되는데 , 이때 @AllArgsConstructor 의 경우 주의할 점이 있다. 만약 다른 개발자가 필드의 순서를 변경하게 될 경우 !
컨트롤러, 서비스 등 어노테이션을 클래스에 넣어줄 경우 생성자에 @autowired하지 않아도됨 이유는 컨트롤러, 서비스, 레파지토리 등은 컴포넌트로 관리가 되어 빈으로 관리하고 있음
14.Logback 설정하는 방법
https://velog.io/@cho876/Springboot-LogBack-%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0
Exception / RuntimeException
개발에 중요한것
: 분업화
: 개발적으로 각각의 모듈로 존재하여 결합도가 낮고 응집도가 높은 프로그램
: 좋은 무료 강의 찾아서 듣기
상속
19.오버로딩, 오버라이드
Jstl/ cmd, ajax 정의
Inner join , left join , right join
Stringbuffer
runtime시 값을 가져오는 경우는
절대 데이터베이스에 있는 값이 날아가지 않거나 변경되지 않는 다는 가정하에 진행해야한다
아니면 NPE터짐
데이터를 지우고 새로 넣는 작업을 많이하는 테스트 환경에서는 좋지 않을 수 있을 것 같다
Create 하면안됨.. none update 무조건
테이블 관계
: 다대일 manyToOne을 쓰는것이 좋은지
: 테이블의 성격에 따라 다르다. 연관관계 유념해야할 것 -> N+1때문에
초기 개발할때는 @ManyToOne(fetch = FetchType.LAZY) 많이 사용
JPA할때는 연관관계 많이 사용
.get()으로 객체를 꺼내는 것은 왜 좋지않은 코드인가요? (김영한님) : NPE 발생할 수 있음
스케줄 크론
Mysql count(*) 리턴타입 Long
리눅스 서버 구축 : Ubuntu, 센토스
DOM 조작
: api
: html로 api 데이터를 보낸다고 했으니까, html 데이터를 받는다면 dom을 통해서
뭔가를 조작하나?
html 해석엔진이 있는데 자신의 개발언어로 바꾸는것 내부적으로 개발언어로 바뀌는 작업
load가 되기 전
-> html은 문서이다.
이것을 화면에서 어떻게 받을것인지
도서 api사용할 때 Dom tree 꺼내서 사용했었음
:dom 접근 지양 ??? VirtualDOM
30.Vue , react
에러
DBMS: MySQL (ver. 8.0.29)
Case sensitivity: plain=mixed, delimited=mixed
Driver: MySQL Connector/J (ver. mysql-connector-java-8.0.25 (Revision: 08be9e9b4cba6aa115f9b27b215887af40b159e0), JDBC4.2)
Ping: 17 ms
SSL: yes