괴발개발 224

mysql쿼리문: 차집합

학생리스트 중에서 49번 고유번호id를 가진 선생님이 담당하는 모든 학생리스트 중에서 수업 유형번호id가 등록된 학생을 거르기 select * from (select * from forfree.student where teacher_student_id = 49) A left outer join => 49번번호를 선생님으로 가진 모든 학생들을 A집단, left outer join (select * from forfree.class join subject on subject_id = subject_class_id join student on student_class_id = student_id where teacher_student_id = 49 ) B => 49번 번호를 선생님으로 가진 학생집단 중에서 수..

(MyBatis)mapper에서 insert 후 생성된 auto_increment 값을 리턴하기(가져오기)

auto_increment - primary key에만 걸 수 있음 mapper에서 insert구문으로 해당 테이블에 값을 입력하면 해당 row에서 primary key 메인키(주요키)로서 auto_increment 설정이 걸려서 따로입력을하지않더라도 값이 일정으로 증가하면서 값을 자동으로 넣어주는데. 해당 값은 입력 후, unique값을 조회하지 않으면 auto_increment가 걸려서 자동으로 입력됐던 값을 알 수가 없음. mapper에서 insert 후, 해당 값을 가져오는 방법 1. DB에 값을 입력하는 코드들을 짜서 수행한다. 2. mapper.xml에서 DB에 입력할 떄 아래와 같은 사항을 insert구문에 입력해준다 insert into student (teacher_student_id, ..

jsp의 date/month 타입을 스프링controller로 가져올 때

에러: 'java.lang.String' to required type 'java.util.Date' jsp에서 date타입으로 컨트롤러 받기 VO에 선언된 DB에 접근할 수 있도록하는 변수들은 DB와 완전히 똑같은 타입을 가진 것이 아님. 특히, DB에서 보여지는 date타입은 2021-09-11 로 보여지더라도 실제값은 영문+날짜(숫자)의 조합이므로 중간에 형식변환을 거치게 됨. jsp에서 input태그의 type이 month 또는 date일 경우에 controller로 전달할 때, 변수타입이 맞지않아서 에러가 남. 이럴때는 String으로 변수를 VO에 추가하고(DB에는 추가X) jsp에 name을 새롭게 추가한 변수명을 써준 뒤, 컨트롤러로 넘겨받는다. mapper에서 DB로 넣을때는 해당 값을 ..

에러: Cannot invoke "java.util.Date.getTime()" because "date" is null

VO에서 나이를 계산하는 메소드를 넣어뒀는데, 매개변수를 넣어주지않고 VO에 있는 변수를 안에 고정으로 계산하게끔 넣어뒀더니 문제 : 해당메소드가 있는구역은 매개변수가 null이더라도 작동하기때문에 nullpointerexception이 발생. 원인 : null인 것을가지고 변환하거나 실행처리를해야하니까 에러남 해결 : 아래의 메소드안에 null일 때 값을 어떻게 처리할 것인지 코드를 넣어줬음 if(매개변수가 == null){return;} public Integer getAge() { //현재 년도 구하기 Calendar now = Calendar.getInstance(); //년월일시분초 Integer currentYear = now.get(Calendar.YEAR); //태어난년도를 위한 세팅 Si..

나이 계산(생년월일, 년도, 만 나이)

VO파일에 있는 메소드 (student_birthdate변수는 2021-09-08 과 같은 정보를 가지고있음) public Integer getAge() { //현재 년도 구하기 Calendar now = Calendar.getInstance(); //년월일시분초 Integer currentYear = now.get(Calendar.YEAR); //태어난년도를 위한 세팅 SimpleDateFormat format = new SimpleDateFormat("yyyy"); String stringBirthYear = format.format(student_birthdate); //년도만받기 //태어난 년도 Integer birthYear = Integer.parseInt(stringBirthYear); //..

에러: Connot be resolved to a type

잘되던 것들이 갑자기 안되기 시작했음 java.utill이고 java.text.SimpleDateFormat 이런거 다안됨. import에는 올라가있지만 해당 라이브러리 없는것처럼 import도 빨간줄이 뜸 해결방법=> 1. 프로젝트 우클릭 - Build Path - Configured Build Path - Java Build Path - [선택 유형] : jdk설치시 저장위치에 따라 아래의 조건이 다름 2-a. add Jars (이클립스 폴더 안 경로) 2-b. add External jars (jdk-16.0.2\lib\ 에 있는 jar File처럼 이클립스 폴더 밖 경로) 3. jar File선택 - 열기

태그,클래스명의 포함(하위)관계 / 동등관계

*시간이 지나면 계속 헷갈려해서 메모 포함(하위)관계=> 같은 것을 말하는 건 없음. 더 안으로 구체적인 것을 찾으러 들어가는 과정 li a .active => li태그안에 a태그 안에 active라는 클래스명을 가진 것 동등관계 => a태그와 active클래스명은 같은 것을 말하는 것 li a.active => li태그 안에 a태그이면서 active라는 클래스명을 가진 것 (*띄어쓰기를 안함) script태그에서도 적용가능