Java
-
JVM (Java Virtual Machine) JVM은 Java Virtual Machine으로 Java와 OS 사이에서 가장 중요한 중간자 역할을 한다. 자바 컴파일러(javac)가 개발자가 작성한 소스코드(.java)를 컴파일하면 바이트 코드(.class)가 된다. 이렇게 변환된 바이트 코드(.class)를 해당 OS에 맞게 기계어로 해석해주는 역할을 수행하는게 JVM이다. 간단하게 얘기하면 자바 소스코드로부터 컴파일되어 만들어진 바이트 코드(.class) 를 운영체제가 이해할수 있도록 해석하고 실행시킨다. JVM의 영향으로 인해 JAVA라는 언어는 이식성이 좋은거다. 여기서 의문점이 있을 수 있다. C언어는 소스를 컴파일하면 OS에서 바로 실행할 수 있는 실행파일 또는 기계어로 컴파일되는 반면 자..
JVM, JRE, JDK 차이JVM (Java Virtual Machine) JVM은 Java Virtual Machine으로 Java와 OS 사이에서 가장 중요한 중간자 역할을 한다. 자바 컴파일러(javac)가 개발자가 작성한 소스코드(.java)를 컴파일하면 바이트 코드(.class)가 된다. 이렇게 변환된 바이트 코드(.class)를 해당 OS에 맞게 기계어로 해석해주는 역할을 수행하는게 JVM이다. 간단하게 얘기하면 자바 소스코드로부터 컴파일되어 만들어진 바이트 코드(.class) 를 운영체제가 이해할수 있도록 해석하고 실행시킨다. JVM의 영향으로 인해 JAVA라는 언어는 이식성이 좋은거다. 여기서 의문점이 있을 수 있다. C언어는 소스를 컴파일하면 OS에서 바로 실행할 수 있는 실행파일 또는 기계어로 컴파일되는 반면 자..
2021.08.25 -
C언어 - 시스템 프로그래밍이 가능하다. 운영체제를 개발할 목적으로 만든 언어이므로 하드웨어를 제어하는 시스템 프로그래밍이 가능하다. - 이식성을 갖춘 프로그램을 개발할 수 있다. * 이식성 : 다른 환경에서도 사용할 수 있는 프로그램으로 표준을 지켜 개발하기 때문에 다른 환경에서 사용 가능하다. - 절차지향적(코드를 위에서 아래로 순차적으로 읽어 처리하므로 이해하기가 쉽다.) 절차지향 프로그래밍이란 물이 위에서 아래로 흐르는 것처럼 순차적인 처리가 중요시되며 프로그램 전체가 유기적으로 연결되도록 만드는 프로그래밍 기법이다. - 작고 효율적이다. 메모리를 직접 관리하여 속도가 빠르고 메모리 낭비가 적으며 바이너리 크기가 작다. 이러한 특성 때문에 생산성보다 중요한 속도를 필요로 하는 임베디드 혹은 모바일..
C언어와 Java 언어의 차이점C언어 - 시스템 프로그래밍이 가능하다. 운영체제를 개발할 목적으로 만든 언어이므로 하드웨어를 제어하는 시스템 프로그래밍이 가능하다. - 이식성을 갖춘 프로그램을 개발할 수 있다. * 이식성 : 다른 환경에서도 사용할 수 있는 프로그램으로 표준을 지켜 개발하기 때문에 다른 환경에서 사용 가능하다. - 절차지향적(코드를 위에서 아래로 순차적으로 읽어 처리하므로 이해하기가 쉽다.) 절차지향 프로그래밍이란 물이 위에서 아래로 흐르는 것처럼 순차적인 처리가 중요시되며 프로그램 전체가 유기적으로 연결되도록 만드는 프로그래밍 기법이다. - 작고 효율적이다. 메모리를 직접 관리하여 속도가 빠르고 메모리 낭비가 적으며 바이너리 크기가 작다. 이러한 특성 때문에 생산성보다 중요한 속도를 필요로 하는 임베디드 혹은 모바일..
2021.08.25 -
* DAO (DataBase Access Object) : DataBase Data에 접근하기 위한 객체 : DAO는 DB를 사용해 데이터를 불러오거나 조작하기 위한 전담 객체 : 매번 DB에 접근하여 데이터를 불러오거나 조작하기위해 커넥션 객체를 생성하는것이 아닌 전담객체를 두고 필요할때마다 호출하여 사용한 후 반납하는 것 : 웹서버는 DB와 연결하기 위해 매번 커넥션 객체를 생성하는데, 이를 해결하기 위해 Connection Pool 을 사용한다. * ConnectionPool : 매번 DB에 접근하기 위해 커넥션객체를 생성하는게 아닌 connection 객체를 미리 만들어 pool에 저장한 후 필요할때마다 connection 객체를 호출하여 사용한 후 pool에 반납하는형식 * DTO(Dat..
DAO와 DTO를 분리하는 이유* DAO (DataBase Access Object) : DataBase Data에 접근하기 위한 객체 : DAO는 DB를 사용해 데이터를 불러오거나 조작하기 위한 전담 객체 : 매번 DB에 접근하여 데이터를 불러오거나 조작하기위해 커넥션 객체를 생성하는것이 아닌 전담객체를 두고 필요할때마다 호출하여 사용한 후 반납하는 것 : 웹서버는 DB와 연결하기 위해 매번 커넥션 객체를 생성하는데, 이를 해결하기 위해 Connection Pool 을 사용한다. * ConnectionPool : 매번 DB에 접근하기 위해 커넥션객체를 생성하는게 아닌 connection 객체를 미리 만들어 pool에 저장한 후 필요할때마다 connection 객체를 호출하여 사용한 후 pool에 반납하는형식 * DTO(Dat..
2021.08.25 -
- Java Annotation(자바 어노테이션) : 자바 어노테이션(Java Annotation)이란 Java 5 부터 추가된 기능입니다. : 어노테이션의 본래 주석이란 뜻으로, 인터페이스를 기반으로 한 문법이다. 주석과는 그 역할이 다르지만 주석처럼 코드에 달아 클래스에 특별한 의미를 부여하거나 기능을 주입할 수있다. : 어노테이션은 크게 세가지 종류가 존재하는데 - JDK에 내장되어 있는 built-in annotation - 어노테이션에 대한 정보를 나타내기 위한 Meta annotation - 개발자가 직접 만들어 내는 Custom Annotation이 있다. - @Controller : Controller 어노테이션은 MVC중 C(Controller)에 해당하며 사용자의 요청을 받아 처리한..
자주 쓰는 어노테이션 정리- Java Annotation(자바 어노테이션) : 자바 어노테이션(Java Annotation)이란 Java 5 부터 추가된 기능입니다. : 어노테이션의 본래 주석이란 뜻으로, 인터페이스를 기반으로 한 문법이다. 주석과는 그 역할이 다르지만 주석처럼 코드에 달아 클래스에 특별한 의미를 부여하거나 기능을 주입할 수있다. : 어노테이션은 크게 세가지 종류가 존재하는데 - JDK에 내장되어 있는 built-in annotation - 어노테이션에 대한 정보를 나타내기 위한 Meta annotation - 개발자가 직접 만들어 내는 Custom Annotation이 있다. - @Controller : Controller 어노테이션은 MVC중 C(Controller)에 해당하며 사용자의 요청을 받아 처리한..
2021.08.25 -
Java를 이용하여 가지고 있는 파일 압축하기 1. java 프로젝트 생성 - Package Explorer 에서 마우스 오른쪽 클릭 후 new > Other - Java Project 선택 후 Next - Project Name명 입력 후 Finish 클릭 - 프로젝트 생성 후 화면 2. Java Class파일 생성 - /src 를 선택하고 마우스 오른쪽 버튼 클릭 후 new > Class - Class 이름 설정, main method 생성 체크 > Finish 3. Zip 파일 압축 소스코드 생성 * 스트림(Stream) : 자바에서는 파일이나 콘솔의 입출력을 직접 다루지 않고, 스트림(Stream) 이라는 흐름을 통해 다룬다. 스트림(Stream)이란 실제의 입력이나 출력이 ..
Zip 파일 만들기Java를 이용하여 가지고 있는 파일 압축하기 1. java 프로젝트 생성 - Package Explorer 에서 마우스 오른쪽 클릭 후 new > Other - Java Project 선택 후 Next - Project Name명 입력 후 Finish 클릭 - 프로젝트 생성 후 화면 2. Java Class파일 생성 - /src 를 선택하고 마우스 오른쪽 버튼 클릭 후 new > Class - Class 이름 설정, main method 생성 체크 > Finish 3. Zip 파일 압축 소스코드 생성 * 스트림(Stream) : 자바에서는 파일이나 콘솔의 입출력을 직접 다루지 않고, 스트림(Stream) 이라는 흐름을 통해 다룬다. 스트림(Stream)이란 실제의 입력이나 출력이 ..
2021.08.25 -
1. DataBase 연결을 위한 pom.xml(Project Object Model)에 dependency 추가 * pom.xml에 dependency를 추가하기 전에 JDBC와 MyBatis를 확인한다. *JDBC : JDBC(Java DataBase Connectivity)란 자바에서 DB 프로그래밍을 위해 사용되는 API : DB와 관련된 일을 처리하며, DB 종류에는 상관없다. 필요 구성요소 - JDBC Driver : DBMS와 통신을 담당하는 자바 클래스 : 각 DB에 맞는 드라이버가 필요하다. - JDBC URL : DBMS와 연결을 위한 식별자 : DBMS 드라이버 마다 식별자가 다르다. : 구성- jdbc:[DMBC]:데이터베이스 식별자 ex) MySQL : jdbc:mysql://..
Spring Boot 게시판 만들기-3(DataBase 연결, MariaDB) 방법 21. DataBase 연결을 위한 pom.xml(Project Object Model)에 dependency 추가 * pom.xml에 dependency를 추가하기 전에 JDBC와 MyBatis를 확인한다. *JDBC : JDBC(Java DataBase Connectivity)란 자바에서 DB 프로그래밍을 위해 사용되는 API : DB와 관련된 일을 처리하며, DB 종류에는 상관없다. 필요 구성요소 - JDBC Driver : DBMS와 통신을 담당하는 자바 클래스 : 각 DB에 맞는 드라이버가 필요하다. - JDBC URL : DBMS와 연결을 위한 식별자 : DBMS 드라이버 마다 식별자가 다르다. : 구성- jdbc:[DMBC]:데이터베이스 식별자 ex) MySQL : jdbc:mysql://..
2021.08.25