1. 프로젝트 생성 [spring] -> [Spring Levacy Project] 를 선택하고 BoardWeb이라고 입력한다. Templates 은 'Spring MVC Project'를 선택한다. 프로젝트에서 사용할 최상위 패키지를 지정하는 화면에서 최소 세 개이상의 패키지가 지정되어야 버튼이 활성화되고 프로젝트를 생성할 수 있다. 입력란에 "com.springbook.biz"라고 입력하고 버튼을 클릭한다. 2. 프로젝트 설정 변경 STS를 이용하여 'Spring MVC Project'를 생성하면 JRE 번전도 맞지 않고 서브라이브러리도 등록되어 있지 않으므로 적절한 변경이 필요하다. [Properties]를 선택하여 JAVA버전을 1.8버전으로 수정한다. [Runtimes] 탭을 선택하고 Apach..
전체 글
오버로딩 (Overloading) 오버로딩은 동일 이름의 메서드를 매개변수만 다르게 하여 여러 개 정의할 수 있는 기능이다. 특징 - 메서드 이름이 같아야 한다. - 매개 변수 개수가 달라야 한다. - 매개변수 개수가 같을 경우 데이터 타입이 달라야 한다. - 반환형은 같거나 달라도 된다. public class A { public void fn() { System.out.println("없음"); // 매개변수가 없고 반환 값도 없는 fn메서드 } public void fn(int i) { System.out.println(i); } public void fn(double d) { System.out.println(d); } public int fn(int a, int b) { return a+b; }..
인터페이스는 자바의 다형성을 극대화하여 개발코드 수정을 줄이고 프로그램 유지보수성을 높이기 위한 문법이다. 오직 추상메서드와 상수만을 멤버로 가질 수 있으며 그 외의 다른 어떠한 요소도 허용하지 않는다. 인터페이스는 자바에서만 사용한다. 인터페이스 interface 클래스명 { 데이터_타입 메서드명() } 예제 interface A { // 인터페이스 A를 선언한다. void fn(); // fn 이라는 메서드 선언을 정의한다. } class B implements A{ //인터페이스 A를 상속받은 클래스 B 선언한다. public void fn(){ //비어있는 fn을 상속받아 구현한다. System.out.println("B"); } } class C implements A{ //인터페이스 A를 상속..
[Java] 01. 원시 데이터형과 클래스 데이터형의 차이 프로그램을 실행하면서 메모리를 사용하게 되는데, 이 메모리 값을 임시로 저장하는 것이 변수의 역할이다. 변수 타입은 크게 정수형, 실수형, 문자형, boolean으로 나뉜다. java는 원시데이터타입(Primitive type) 과 클래스 타입을 구분해 놓는데 이는 int와 Interger의 변수는 다른 것이고 int는 null을 허용하지 않지만 Interger는 null을 허용하는 정수형 타입이다. 변수선언은 변수 타입을 앞에 쓰고 변수명을 작성하여 선언한다. 변수에 값을 넣을 때는 대입연산자(=)를 사용한다. public class test { public static void main(String[] args) { // 정수형 int, 변수..
성적 산출하는 방법을 DI 를 사용하여 연습해보았다 public class program { public static void main(String[] args) { Exam exam = new Newlecexm(); exam 의 인터페이스를 생성한다. package program.di.entity; public interface Exam { int total(); float avg(); } Newlecexm 의 클래스를 생성한다. 국어, 영어, 수학, 컴퓨터과목에 대한 평균과 총점을 계산한다. package program.di.entity; public class Newlecexm implements Exam { private int kor; private int eng; private int math..
스프링 웹개발을 할 때 크게 3가지 범주로 나눌 수 있다. 1. MVC
!+ tab 을 누르면 기본적인 html 구조가 생성된다. https://jhnyang.tistory.com/408
최근에 intellij와 eclipse를 사용하다가 프론트개발공부를 위해 vscode를 깔게 되었습니다. VSCode 를 사용하면서 코드를 칠때 효율적으로 만들어 줄 수 있는 플로그인의 사용법을 알아보겠습니다. 1. Auto Rename Tag html 시작 태그 변경시 자동으로 종료태그 변경합니다. 2. Material Icon Theme 파일들 아이콘을 변경시켜주는 테마입니다. 3. HTML Snippets HTML5, 태그 색상화, 코드 스니펫 등을 지원합니다. 4. HTML CSS Support HTML 문서의 CSS를 지원합니다. 추가적으로 PHP 내의 HTML측 CSS, Javascript 등도 지원합니다. 5. Debugger for Chrome Chrome과 연계한 디버거. 로컬PC 환경에..
Node.js란 무엇인가? Node.js는 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼이다. 작성 언어로 자바스크립트를 활용하며 비동기 I/O와 단일 스레드 이벤트 루프를 통한 높은 처리 성능을 가지고 있다. 내장 HTTP 서버 라이브러리를 포함하고 있어 웹 서버에서 아파치 등의 별도의 소프트웨어 없이 동작하는 것이 가능하며 이를 통해 웹 서버의 동작에 있어 더 많은 통제를 가능케 한다. 웹브라우저에 종속적인 자바스크립트를 외부에서 실행 할 수 있는 Chrome V8 엔진의 런타임이다. Node.js 특징 1. 비동기 I/O 처리, 이벤트 위주 Node.js 라이브러리의 모든 API는 비동기 방식이다. 즉, 한 작업이 완료될때까지 기다렸다가 작업하는 것이 아닌 ..
1. JPA 란? 1) Java Persistence API 이다. 2) ORM 기술이다. 3) 반복적인 CRUD 작업을 생략하게 해준다. 4) 영속성 컨텍스트를 가지고 있다. 5) DB와 OOP의 불일치성을 해결하기 위한 방법론을 제공한다. ( DB는 객체 저장 불가능) 6) JPA는 OOP의 관점에서 모델링을 할 수 있게 해준다. ( 상속, 콤포지션, 연관관계) 7) 방언 처리가 용이하여 Migration 하기 좋다. 유지 보수에도 좋다. 8) JPA 는 쉽지만 어렵다. 1) Java Persistence API 이다. 영속성은 어떠한 데이터가 영구히 기록될 수 있게 해주는 것이다. RAM에 있는 데이터는 휘발성이기 때문에 컴퓨터가 꺼지거나, 예상치 못하게 정전이 된다면 데이터는 사라지게 된다. 그렇..