[Java] 객체지향 프로그래밍 - 오버라이딩(overriding)
·
Language/Java
오버라이딩이란? 부모 클래스로부터 상속받은 메서드의 내용을 변경하는 것 상속받은 메서드를 그대로 사용하기도 하지만, 자신에 맞게 변경해야하는 경우 오버라이딩 한다 class Point { int x; int y; string getLocatin(){ return "x :" + x + "y :" + y; } } class Point3D extends Point { int z; string getLocatin(){ return "x :" + x + "y :" + y + "z :" + z; } } 오버라이딩의 조건 오버라이딩은 메서드의 내용만을 새로 작성하는 것이므로 메서드의 선언부는 부모와 완전히 일치해야 한다 이름이 같아야 함 매개변수가 같아야 함 반환 타입이 같아야 함 다만 접근 제어자와 예외는 제한된 ..
[Java] 객체 지향 프로그래밍 - 상속
·
Language/Java
상속 1. 상속의 정의와 장점 상속이란, 기존의 클래스를 재사용하여 새로운 클래스를 작성하는 것 상속을 통해서 클래스를 작성하면 보다 적은 양의 코드로 새로운 클래스를 작성 할 수 있음 코드를 공통적으로 관리할 수 있음 코드의 추가 및 변경이 용이함 코드의 재사용성을 높이고, 중복을 제거하여 생산성과 유지보수에 기여 상속은 구현하는 방법 새로 작성하고자 하는 클래스의 이름 뒤에 상속받고자 하는 클래스의 이름을 키워드 extends와 함께 써주면 됨 class child extentd Parent { //... } 상속해주는 클래스는 '부모' 상속 받는 클래스를 '자식' 이라고 함 자식 클래스의 코드가 수정되어도 부모 클래스는 아무런 영향도 받지 않지만, 부모 클래스의 코드가 수정되면 자식 클래스는 자동적..
React와 Next.js의 차이와 Next.js 프로젝트 생성하기
·
Framework(Library)/React
Next.js는 대충 React의 업그레이드 버전이라고만 알고 있었는데, 이번에 제대로 두 개의 차이를 정리해보려고 한다.   React 란?리액트(React)는 페이스북에서 개발한 UI를 담당하는 JavaSrcipt 기반의 SPA 웹 프레임워크이다.컴포넌트를 활용하여 UI를 쉽고 효율적으로 만들 수 있다.리액트는 SPA, CSR, Virtual DOM 등 몇 가지 대표적인 특징들을 가지고 있다.   SPA(Single Page Application)단 하나의 페이지를 통해 유저의 요청을 처리해주는 방식이다.필요한 모든 정적 리소스를 최초에 한 번 다운로드한다.페이지간 이동 시, 페이지 갱신에 필요한 데이터만을 JSON으로 전달받아 페이지를 갱신하므로 전체적인 트래픽을 감소할 수 있다.전체 페이지를 다시..
[Docker]
·
Server/Docker
공부한 개념 정리하기 ※ 틀릴수도있음 도커란?도커(Docker)란 쉽게 말해 가상머신이다.가상머신은 컴퓨터 안에 또 다른 컴퓨터를 만 수 있도록 해주는 소프트웨어이다.가상머신은 무겁기 때문에 컴퓨터 안에 가상머신을 설치하면 컴퓨터가 느려지거나 버벅이는 문제가 발생할 수 있다. 이를 해결하기 위해 가벼운 가상머신을 만들었는데 그게 도커이다. 도커에는 컨테이너와 이미지라는 개념이 있는데, 이 개념에 대해 아는것이 중요하다. 가상머신 VS 컨테이너도커가 가상머신이라고 했는데 가상머신과는 조금 다르다. 가상머신도 컴퓨터고, 컨테이너도 컴퓨터다.컴퓨터를 사용하기 위해서는 운영체제를 설치해 사용해야한다. 여기서 host OS 와 guest OS 개념을 알아야하는데 지금 사용하는 내 컴퓨터에 깔려있는 기존 OS가 H..
[Java] JsonArry 형태의 문자열을 List<VO>객체로 변환하기
·
Language/Java
1. ajax 에서 컨트롤러로 JsonArry 보내기 projectInfo = new Array(); for(var i=0; i < day; i++){ projectInfo.push({ "userId": 'test01', "workDate": (year+month+(i+1)), "activityCode": datagrid1.getCellData(2,6), "activityDetailCode": (datagrid1.getCellData(2,7)), "compProjectCode": value[0].data.compProjectCode, "workMonth": month, "workYear": year, "manHour": datagrid2.getCellData(2,i), "isConfirmed": 0 })..
[MYSQL] 오류코드 1452
·
Server/Database
table이 fk로 엮여있고 순서가 기억나지 않는다면 SET foreign_key_checks = 0; 를 사용해서 fk를 잠깐 무력화 시킨다음 INSERT를 하면 테이블 변경에 성공한다 변경 후에는 SET foreign_key_checks = 1; 을 해주면 됨
이클립스 설치하기(Windows 11)
·
IT 정보
갑자기 이클립스에서 프로젝트가 충돌나기 시작하면서 이것저것 고쳐보다가 그냥 다시 깔고 받는게 좋을거 같다는 부장님의 말씀에 이클립스를 지우고 다시 설치하려고 한다..ㅜㅜ 1. JDK 설치하기 자바 가상머신 (JDK, Java Virtual Machine)과 자바 런타임 환경(JRE, Java Runtime Encironment)은 자바 프로그래밍에 사용되는 핵심 기술 패키지 중 하나이다 자바 통합 개발툴인 이클립스를 사용하기 위해서는 PC에 JDK가 설치 되어있어야 한다 JDK 설치 여부 확인 cmd 창을 열고 아래 명령어를 입력한다 java -version ⭐ cmd 창 여는 법 더보기 cmd 창은 window + R 클린한다음에 cmd를 검색해서 열 수 있다. 다음과 같이 자바 버전이 확인된다면 JD..
[스프링부트 입문] 시리즈 #05 회원 서비스 개발 + 테스트
·
Framework(Library)/Spring(Springboot)
스프링부트 입문 시리즈 #01 프로젝트 생성하기 #02 정적페이지 만들고 화면 띄우기 #03 회원 관리 페이지 만들기 #04 회원 리포지토리 테스트케이스 #05 회원 서비스 개발 + 테스트 👈 지난 시간에는 회원 리포지토리를 만들어 회원 등록, 회원 검색 기능을 구현해 보고 Test Case를 만들어 테스트까지 모두 마쳤다 이번에 만들 회원 서비스 만들어놓은 회원 도메인과 리포지토리를 활용해서 실제 비즈니스 로직을 구현할 것이다 회원 서비스 클래스 생성 src / main / java / yeon.hello_spring 에서 service 패키지를 만들고 그 안에 MemberService 클래스를 생성한다 회원가입 메소드 회원가입 기능을 구현할 때는 리포지토리에 member를 save 해주기만 하면 된다..
[스프링부트 입문] 시리즈 #04 회원 리포지토리 만들기 + 테스트
·
Framework(Library)/Spring(Springboot)
스프링부트 입문 시리즈 #01 프로젝트 생성하기 #02 정적페이지 만들고 화면 띄우기 #03 회원 관리 페이지 만들기 #04 회원 리포지토리 만들기 + 테스트 👈 1. Test Case 개발한 기능을 테스트할 때 Java의 main 메소드를 통해서 실행하거나, 웹 어플리케이션의 Controller를 통해서 해당 기능을 실행하는데 이런 방법은 준비와 실행이 오래 걸리고, 반복하기 어렵고, 여러 테스트를 한번에 실행하기 어렵다는 단점이 있다 Java는 JUnit이라는 프레임워크를 이용해 이러한 문제를 해결한다 src / test에 이미 테스트를 할 수 있는 공간이 준비되어있다 scr / test/ java에 있는 yeon.hello_spring 패키지 안에 repository라는 패키지를 만들고 Memory..