Java는 가전제품 내에서 동작하는 임베디드 프로그램을 위한 언어로 썬 마이크로시스템즈사의 제임스 고슬링 팀에 의해 개발 되었습니다.
1991년에 Oak라는 이름으로 시작하여, 1996년에 발표된 1.0.2 버전부터 Java라는 이름을 사용하게 됩니다.
1998년 발표된 J2SE 1.2에서는 웹에서 Java를 실행시킬 수 있게 해주는 Java 애플릿이 추가되면서 웹의 인기와 함께 Java의 인기도 급상승 하게 됩니다. 다양한 기능이 지원되면서 꾸준한 인기를 누리다가 2009년 썬 마이크로시스템즈사가 오라클과 인수 합병되면서 Java의 소유권은 오라클로 넘어갑니다.
2. Java의 특징
1. JVM을 이용해서 운영체제와 상관없이 독립적으로 실행할 수 있습니다. 즉 운영체제 별로 Java프로그램을 개발할 필요가 없습니다.
2. 가비지 컬렉터라는 메모리 관리 프로그램을 지원합니다.
3. 객체 지향 언어로서 클래스 계층 구조, 상속성, 다형성, 캡슐화를 지원합니다.
4. 멀티 스레드를 지원하여 하나의 프로그램에서 다수의 스레드가 동시에 실행될 수 있습니다.
3. Java 컴파일 및 실행 과정
4. JDK 란
JDK (Java Developement Kit) Java 프로그램을 개발하기 위한 도구들로 이루어진 패키지입니다.
JRE (Java Runtime Environment) Java 프로그램을 개발하는 데 사용되는 라이브러리들의 모음이며, Runtime 환경을 제공하는 데 쓰입니다. (JRE는 JVM과 Libraries로 구성되어 있습니다.)
JVM (Java Virtual Machine) 바이트 코드를 실행 시킬 수 있는 가상 머신입니다. 그리고 JVM은 운영체제 별로 존재하는데, 운영체제에 맞는 JVM이 설치되어 있다면 어떠한 바이트 코드라도 실행시킬 수 있습니다.
즉, 윈도우즈에서 개발된 Java 프로그램이 CentOS의 JVM 위에서 동작될 수 있다는 의미입니다.
5. Java 환경 변수란?
리눅스나 윈도우즈에서 JDK를 설치하면 Java 환경변수를 지정해주어야 합니다. 그렇다면 왜 Java 환경 변수를 등록해주어야 할까요?
JDK를 설치하게 되면 임의의 경로에 저장을 합니다. 하지만 운영체제는 설치한 JDK의 위치를 알지 못합니다. 그래서 사용하는 것이 환경 변수입니다. 환경 변수는 운영체제가 참조하는 변수입니다. 환경 변수에 JDK의 경로를 등록하게 되면 JDK의 여러 바이너리 파일들을 사용할 수 있습니다.
Windows 내컴퓨터 > 시스템 속성 > 환경 변수 > 시스템 변수 > Path에 추가 C:\Program Files\Java\jdk1.8.0_191\bin;
yona 전용 계정과 데이터베이스를 생성해주고 yona 계정에 yona DB에 대한 모든 권한을 부여합니다.
MYSQL > create user 'yona 계정명'@'localhost' identified by '비밀번호'; MYSQL > create database yona DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_bin; MYSQL > grant all on yona.* to 'yona 계정명'@'localhost';
# wget http://archive.apache.org/dist/tomcat/tomcat-8/v8.5.27/bin/apache-tomcat-8.5.27.tar.gz
// 압축 해체
# tar zxvf apache-tomcat-8.5.27.tar.gz
// 톰캣을 /usr/local/로 이동시키고 디렉토리 이름을 tomcat8로 변경
# mv apache-tomcat-8.5.27 /usr/local/tomcat8
3. tomcat 설정 및 환경 변수 등록
vi /usr/local/tomcat8/conf/server.xml
// vi /usr/local/tomcat8/conf/server.xml
// 아래 설정을 찾아서 URIEncoding="UTF-8"을 추가한다.
...
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="UTF-8" />
...