일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 쿠킹덤공략
- 스프링
- CSS
- 쿠키런킹덤크리스마스
- 프로그래머스
- 크리스마스
- 티스토리챌린지
- 스프링퀵스타트
- 쿠킹덤
- 이클립스
- Eclipse
- programmers
- GIT
- 프로그래밍
- dart
- 딥러닝
- 개발자
- Java
- 자바
- 홀리데이익스프레스
- 쿠키런킹덤공략
- MySQL
- HTML
- 웹개발
- 오블완
- oracle
- edwith
- 쿠키런킹덤
- SQL
- Spring
- Today
- Total
Dev study and notes
[java] 개발환경 설정 JAVA(JDK, eclipse) SQL(oracle,client,SQL developer) 개발/연습 환경 구축 본문
[java] 개발환경 설정 JAVA(JDK, eclipse) SQL(oracle,client,SQL developer) 개발/연습 환경 구축
devlunch4 2020. 9. 19. 15:001JAVA(JDK, eclipse)
*설치할 컴퓨터의 운영체제와 비트에 맞추어 JDK 다운로드 (실습은 8 또는 11 버전 추천)
https://www.oracle.com/kr/index.html
*jdk-15_windows-x64_bin.exe 다운 및 설치 (글쓴이는 이버전을 설치)
(위 파일은 글작성일 현재 최신 버전임 /실습은 8 또는 11 버전 이 필요)
*JDK 설치후 환경변수 설정
제어판내 시스템창 >왼쪽프레임바 ‘고급 시스템 설정’ 클릭 >시스템속성창 아래 ‘환경 변수’버튼 클릭
*시스템변수창에 변수를 생성
변수 이름: JAVA_HOME
변수 값: D:\B_Util\2.Java\JDK1.7 (설치한 위치 JDK 버전 7)
*시스템변수창 내 항목 생성
Path항목>편집>새로만들기>
>입력(입력시 대괄호 내부의 특수문자와 문자만 입력) [%JAVA_HOME%\bin]>확인>확인
*설치확인 cmd창을 열어서 확인
java -version 타이핑 엔터
javac -version 타이핑 엔터
각버전이 출력되면 잘 설치가 된것.
*이클립스 설치
https://www.eclipse.org/downloads
글쓴이는 eclipse-jee-2020-09-R-win32-x86_64 버전을 설치
*[Eclipse IDE for Java EE Developers] 다운로드 및 압축풀기 = 실행 = 작성할 코드 저장 위치 설정
*한글표시 깨짐 해결법
> 작업표시줄>window>preferences>검색 ‘encoding’(언어 표현하는 방식)
> ‘content Types’> ‘java archive’> ‘default encoding’란에 ‘UTF-8’타이핑 후 update버튼
> 그외 하단의 목록 java class file/Text/Word Document/ 모두 업데이트
> ’Text’ 항목을 열어 UTF-8가 아닌 항목을 수정 업데이트
> 옵션창 왼쪽프레임의 ‘Workspace’에서 text file encoding 박스에서 other의 콤보박스 ‘UTF-8’
>왼쪽프레임의 web css/html/jsp 모두 UTF-8
*텍스트 크기 설정
작업표시줄>window>preferences>Genaral>Appearance>Colors and Fonts>basic>text font//
자신에게 맞는 크기를 설정 확인
*코딩창 우리는 자바 코딩이므로 오른쪽 상단의 ‘Java EE’ 옆의 ‘+창’을 클릭하여 ‘Java’를 추가
2.SQL(oracle,client,SQL developer)
*오라클 설치
오라클 버전 OracleXE112_Win64 설치(압축해제후 설치) <<<연습시 유용
-설치시 password 글쓴이의 경우 oracle 로 설정함 (실제 관리자계정의 비밀번호)
*오라클 클라이언트 설치
클라이언트 버전 win64_11gR2_client 설치(압축해제후 설치)
*SQL developer 설치
sqldeveloper-20.2.0.175.1842-x64 (JDK8 or 11 포함 버전) 설치(압축해제후 설치)
*SQL developer 실행
-관리자계정 접속하기> 왼쪽 프레임 + 클릭 >
?접속이름/사용자이름 "system", 비밀번호 oracle
>비밀번호저장 체크
호스트 127.0.0.0=localhost (기본)
포트 1521(기본)
SID xe(기본)
>테스트 버튼 클릭>"상태:성공"확인
>저장>목록에서 생성된 "system" 클릭후 접속
*sql 연습할 테이블공간 및 사용자 생성
--TABLE SPACE 확인 (DATAFILE 항목은 사용자 확인 필수)
SELECT *
FROM DBA_DATA_FILES;
--TABLE SPACE생성 (DATAFILE 항목은 사용자 확인 필수)
CREATE TABLESPACE TS_DBSQL
DATAFILE '오라클이 설치된 경로 내부의~ORACLE\ORADATA\XE\TS_DBSQL.DBF'
SIZE 100M
AUTOEXTEND ON;
--사용자 추가
create user [사용자명] identified by [비밀번호]
default tablespace TS_DBSQL
temporary tablespace temp
quota unlimited on TS_DBSQL
quota 0m on system;
--접속, 생성권한
GRANT CONNECT, RESOURCE TO [사용자명];
*SQL Developer 에서 왼쪽 프레임 + 눌러서 접속자 새로 생성.
-이전의 더보기 글에서 설정한 [사용자명], [비밀번호] 입력 및 설정>
>비밀번호저장 체크
호스트 127.0.0.0=localhost (기본)
포트 1521(기본)
SID xe(기본)
>테스트 버튼 클릭>"상태:성공"확인
>저장>목록에서 생성된 "system" 클릭후 접속
*테이블 생성1 demosql
--
-- Copyright (c) Oracle Corporation 1988, 1999. All Rights Reserved.
--
-- NAME
-- demobld.sql
--
-- DESCRIPTION
-- This script creates the SQL*Plus demonstration tables in the
-- current schema. It should be STARTed by each user wishing to
-- access the tables. To remove the tables use the demodrop.sql
-- script.
--
-- USAGE
-- SQL> START demobld.sql
--
--
SET TERMOUT ON
PROMPT Building demonstration tables. Please wait.
SET TERMOUT OFF
CREATE TABLE BONUS
(ENAME VARCHAR2(10),
JOB VARCHAR2(9),
SAL NUMBER,
COMM NUMBER);
CREATE TABLE EMP
(EMPNO NUMBER(4) NOT NULL,
ENAME VARCHAR2(10),
JOB VARCHAR2(9),
MGR NUMBER(4),
HIREDATE DATE,
SAL NUMBER(7, 2),
COMM NUMBER(7, 2),
DEPTNO NUMBER(2));
INSERT INTO EMP VALUES
(7369, 'SMITH', 'CLERK', 7902,
TO_DATE('17-DEC-1980', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 800, NULL, 20);
INSERT INTO EMP VALUES
(7499, 'ALLEN', 'SALESMAN', 7698,
TO_DATE('20-FEB-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 1600, 300, 30);
INSERT INTO EMP VALUES
(7521, 'WARD', 'SALESMAN', 7698,
TO_DATE('22-FEB-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 1250, 500, 30);
INSERT INTO EMP VALUES
(7566, 'JONES', 'MANAGER', 7839,
TO_DATE('2-APR-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 2975, NULL, 20);
INSERT INTO EMP VALUES
(7654, 'MARTIN', 'SALESMAN', 7698,
TO_DATE('28-SEP-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 1250, 1400, 30);
INSERT INTO EMP VALUES
(7698, 'BLAKE', 'MANAGER', 7839,
TO_DATE('1-MAY-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 2850, NULL, 30);
INSERT INTO EMP VALUES
(7782, 'CLARK', 'MANAGER', 7839,
TO_DATE('9-JUN-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 2450, NULL, 10);
INSERT INTO EMP VALUES
(7788, 'SCOTT', 'ANALYST', 7566,
TO_DATE('09-DEC-1982', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 3000, NULL, 20);
INSERT INTO EMP VALUES
(7839, 'KING', 'PRESIDENT', NULL,
TO_DATE('17-NOV-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 5000, NULL, 10);
INSERT INTO EMP VALUES
(7844, 'TURNER', 'SALESMAN', 7698,
TO_DATE('8-SEP-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 1500, 0, 30);
INSERT INTO EMP VALUES
(7876, 'ADAMS', 'CLERK', 7788,
TO_DATE('12-JAN-1983', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 1100, NULL, 20);
INSERT INTO EMP VALUES
(7900, 'JAMES', 'CLERK', 7698,
TO_DATE('3-DEC-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 950, NULL, 30);
INSERT INTO EMP VALUES
(7902, 'FORD', 'ANALYST', 7566,
TO_DATE('3-DEC-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 3000, NULL, 20);
INSERT INTO EMP VALUES
(7934, 'MILLER', 'CLERK', 7782,
TO_DATE('23-JAN-1982', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 1300, NULL, 10);
CREATE TABLE DEPT
(DEPTNO NUMBER(2),
DNAME VARCHAR2(14),
LOC VARCHAR2(13) );
INSERT INTO DEPT VALUES (10, 'ACCOUNTING', 'NEW YORK');
INSERT INTO DEPT VALUES (20, 'RESEARCH', 'DALLAS');
INSERT INTO DEPT VALUES (30, 'SALES', 'CHICAGO');
INSERT INTO DEPT VALUES (40, 'OPERATIONS', 'BOSTON');
CREATE TABLE SALGRADE
(GRADE NUMBER,
LOSAL NUMBER,
HISAL NUMBER);
INSERT INTO SALGRADE VALUES (1, 700, 1200);
INSERT INTO SALGRADE VALUES (2, 1201, 1400);
INSERT INTO SALGRADE VALUES (3, 1401, 2000);
INSERT INTO SALGRADE VALUES (4, 2001, 3000);
INSERT INTO SALGRADE VALUES (5, 3001, 9999);
COMMIT;
SET TERMOUT ON
PROMPT Demonstration table build is complete.
*테이블 생성2 (사용자
--
-- Copyright (c) Oracle Corporation 1988, 1999. All Rights Reserved.
--
-- NAME
-- demobld.sql
--
-- DESCRIPTION
-- This script creates the SQL*Plus demonstration tables in the
-- current schema. It should be STARTed by each user wishing to
-- access the tables. To remove the tables use the demodrop.sql
-- script.
--
-- USAGE
-- SQL> START demobld.sql
--
--
SET TERMOUT ON
PROMPT Building demonstration tables. Please wait.
SET TERMOUT OFF
CREATE TABLE BONUS
(ENAME VARCHAR2(10),
JOB VARCHAR2(9),
SAL NUMBER,
COMM NUMBER);
CREATE TABLE EMP
(EMPNO NUMBER(4) NOT NULL,
ENAME VARCHAR2(10),
JOB VARCHAR2(9),
MGR NUMBER(4),
HIREDATE DATE,
SAL NUMBER(7, 2),
COMM NUMBER(7, 2),
DEPTNO NUMBER(2));
INSERT INTO EMP VALUES
(7369, 'SMITH', 'CLERK', 7902,
TO_DATE('17-DEC-1980', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 800, NULL, 20);
INSERT INTO EMP VALUES
(7499, 'ALLEN', 'SALESMAN', 7698,
TO_DATE('20-FEB-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 1600, 300, 30);
INSERT INTO EMP VALUES
(7521, 'WARD', 'SALESMAN', 7698,
TO_DATE('22-FEB-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 1250, 500, 30);
INSERT INTO EMP VALUES
(7566, 'JONES', 'MANAGER', 7839,
TO_DATE('2-APR-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 2975, NULL, 20);
INSERT INTO EMP VALUES
(7654, 'MARTIN', 'SALESMAN', 7698,
TO_DATE('28-SEP-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 1250, 1400, 30);
INSERT INTO EMP VALUES
(7698, 'BLAKE', 'MANAGER', 7839,
TO_DATE('1-MAY-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 2850, NULL, 30);
INSERT INTO EMP VALUES
(7782, 'CLARK', 'MANAGER', 7839,
TO_DATE('9-JUN-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 2450, NULL, 10);
INSERT INTO EMP VALUES
(7788, 'SCOTT', 'ANALYST', 7566,
TO_DATE('09-DEC-1982', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 3000, NULL, 20);
INSERT INTO EMP VALUES
(7839, 'KING', 'PRESIDENT', NULL,
TO_DATE('17-NOV-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 5000, NULL, 10);
INSERT INTO EMP VALUES
(7844, 'TURNER', 'SALESMAN', 7698,
TO_DATE('8-SEP-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 1500, 0, 30);
INSERT INTO EMP VALUES
(7876, 'ADAMS', 'CLERK', 7788,
TO_DATE('12-JAN-1983', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 1100, NULL, 20);
INSERT INTO EMP VALUES
(7900, 'JAMES', 'CLERK', 7698,
TO_DATE('3-DEC-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 950, NULL, 30);
INSERT INTO EMP VALUES
(7902, 'FORD', 'ANALYST', 7566,
TO_DATE('3-DEC-1981', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 3000, NULL, 20);
INSERT INTO EMP VALUES
(7934, 'MILLER', 'CLERK', 7782,
TO_DATE('23-JAN-1982', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = AMERICAN'), 1300, NULL, 10);
CREATE TABLE DEPT
(DEPTNO NUMBER(2),
DNAME VARCHAR2(14),
LOC VARCHAR2(13) );
INSERT INTO DEPT VALUES (10, 'ACCOUNTING', 'NEW YORK');
INSERT INTO DEPT VALUES (20, 'RESEARCH', 'DALLAS');
INSERT INTO DEPT VALUES (30, 'SALES', 'CHICAGO');
INSERT INTO DEPT VALUES (40, 'OPERATIONS', 'BOSTON');
CREATE TABLE SALGRADE
(GRADE NUMBER,
LOSAL NUMBER,
HISAL NUMBER);
INSERT INTO SALGRADE VALUES (1, 700, 1200);
INSERT INTO SALGRADE VALUES (2, 1201, 1400);
INSERT INTO SALGRADE VALUES (3, 1401, 2000);
INSERT INTO SALGRADE VALUES (4, 2001, 3000);
INSERT INTO SALGRADE VALUES (5, 3001, 9999);
COMMIT;
SET TERMOUT ON
PROMPT Demonstration table build is complete.
*사용자 scott 에 대하여 인터넷 검색 해보기
사용자 scott 설정하거나 안하거나 마음대로~
*batch.sql 생성
--batch.sql 생성
drop table batch;
drop table daily;
drop table cycle;
drop table product;
drop table customer;
/* 고객 */
CREATE TABLE CUSTOMER (
CID NUMBER NOT NULL, /* 고객번호 */
CNM VARCHAR2(50) NOT NULL /* 고객명 */
);
COMMENT ON TABLE CUSTOMER IS '고객';
COMMENT ON COLUMN CUSTOMER.CID IS '고객번호';
COMMENT ON COLUMN CUSTOMER.CNM IS '고객명';
CREATE UNIQUE INDEX PK_CUSTOMER
ON CUSTOMER (
CID ASC
);
ALTER TABLE CUSTOMER
ADD
CONSTRAINT PK_CUSTOMER
PRIMARY KEY (
CID
);
/* 제품 */
CREATE TABLE PRODUCT (
PID NUMBER NOT NULL, /* 제품번호 */
PNM VARCHAR2(50) NOT NULL /* 제품명 */
);
COMMENT ON TABLE PRODUCT IS '제품';
COMMENT ON COLUMN PRODUCT.PID IS '제품번호';
COMMENT ON COLUMN PRODUCT.PNM IS '제품명';
CREATE UNIQUE INDEX PK_PRODUCT
ON PRODUCT (
PID ASC
);
ALTER TABLE PRODUCT
ADD
CONSTRAINT PK_PRODUCT
PRIMARY KEY (
PID
);
/* 고객애음주기 */
CREATE TABLE CYCLE (
CID NUMBER NOT NULL, /* 고객번호 */
PID NUMBER NOT NULL, /* 제품번호 */
DAY NUMBER NOT NULL, /* 요일 */
CNT NUMBER NOT NULL /* 수량 */
);
COMMENT ON TABLE CYCLE IS '고객애음주기';
COMMENT ON COLUMN CYCLE.CID IS '고객번호';
COMMENT ON COLUMN CYCLE.PID IS '제품번호';
COMMENT ON COLUMN CYCLE.DAY IS '요일';
COMMENT ON COLUMN CYCLE.CNT IS '수량';
CREATE UNIQUE INDEX PK_CYCLE
ON CYCLE (
CID ASC,
PID ASC,
DAY ASC
);
ALTER TABLE CYCLE
ADD
CONSTRAINT PK_CYCLE
PRIMARY KEY (
CID,
PID,
DAY
);
/* 일실적 */
CREATE TABLE DAILY (
CID NUMBER NOT NULL, /* 고객번호 */
PID NUMBER NOT NULL, /* 제품번호 */
DT VARCHAR2(8) NOT NULL, /* 일자 */
CNT NUMBER NOT NULL /* 수량 */
);
COMMENT ON TABLE DAILY IS '일실적';
COMMENT ON COLUMN DAILY.CID IS '고객번호';
COMMENT ON COLUMN DAILY.PID IS '제품번호';
COMMENT ON COLUMN DAILY.DT IS '일자';
COMMENT ON COLUMN DAILY.CNT IS '수량';
CREATE UNIQUE INDEX PK_DAILY
ON DAILY (
CID ASC,
PID ASC,
DT ASC
);
ALTER TABLE DAILY
ADD
CONSTRAINT PK_DAILY
PRIMARY KEY (
CID,
PID,
DT
);
ALTER TABLE CYCLE
ADD
CONSTRAINT FK_CUSTOMER_TO_CYCLE
FOREIGN KEY (
CID
)
REFERENCES CUSTOMER (
CID
);
ALTER TABLE CYCLE
ADD
CONSTRAINT FK_PRODUCT_TO_CYCLE
FOREIGN KEY (
PID
)
REFERENCES PRODUCT (
PID
);
ALTER TABLE DAILY
ADD
CONSTRAINT FK_CUSTOMER_TO_DAILY
FOREIGN KEY (
CID
)
REFERENCES CUSTOMER (
CID
);
ALTER TABLE DAILY
ADD
CONSTRAINT FK_PRODUCT_TO_DAILY
FOREIGN KEY (
PID
)
REFERENCES PRODUCT (
PID
);
/* 배치 */
CREATE TABLE BATCH (
BID NUMBER NOT NULL, /* 배치번호 */
BCD VARCHAR2(20) NOT NULL, /* 배치작업 */
ST VARCHAR2(20) NOT NULL, /* 배치상태 */
ST_DT DATE, /* 배치시작일자 */
ED_DT DATE /* 배치종료일자 */
);
COMMENT ON TABLE BATCH IS '배치';
COMMENT ON COLUMN BATCH.BID IS '배치번호';
COMMENT ON COLUMN BATCH.BCD IS '배치작업';
COMMENT ON COLUMN BATCH.ST IS '배치상태';
COMMENT ON COLUMN BATCH.ST_DT IS '배치시작일자';
COMMENT ON COLUMN BATCH.ED_DT IS '배치종료일자';
CREATE UNIQUE INDEX PK_BATCH
ON BATCH (
BID ASC
);
ALTER TABLE BATCH
ADD
CONSTRAINT PK_BATCH
PRIMARY KEY (
BID
);
--자료
insert into customer values (1, 'brown');
insert into customer values (2, 'sally');
insert into customer values (3, 'cony');
insert into product values (100, '야쿠르트');
insert into product values (200, '윌');
insert into product values (300, '쿠퍼스');
insert into product values (400, '야쿠르트400');
insert into cycle values (1, 100, 2, 1);
insert into cycle values (1, 400, 3, 1);
insert into cycle values (1, 100, 4, 1);
insert into cycle values (1, 400, 5, 1);
insert into cycle values (1, 100, 6, 1);
insert into cycle values (2, 200, 2, 2);
insert into cycle values (2, 100, 3, 1);
insert into cycle values (2, 200, 4, 2);
insert into cycle values (2, 100, 5, 1);
insert into cycle values (2, 200, 6, 2);
insert into cycle values (3, 300, 2, 1);
insert into cycle values (3, 100, 3, 2);
insert into cycle values (3, 300, 4, 1);
insert into cycle values (3, 100, 5, 2);
insert into cycle values (3, 300, 6, 1);
COMMIT;
개발 환경 및 연습 환경 완료!
'studyLog' 카테고리의 다른 글
[java] 논리 연산 표 (0) | 2020.09.23 |
---|---|
[SQL] JOIN의 종류에 따른 결과 도식화 다이어그램 (0) | 2020.09.20 |
[SQL] 002 SQL 간단 설명과 사용법 (0) | 2020.09.15 |
[SQL] 001 SQL 개발환경만들기 (오라클 및 SQL developer 설치) (0) | 2020.09.15 |
[java] 001 자바 설치 및 개발환경 만들기 (0) | 2020.09.15 |