React를 시작하기 위한 준비물로 가장먼저 NodeJS 설치를 먼저해야합니다.  

NodeJS 를 설치하는 이유는 npx를 이용하여 create-react-app를 설치하기 위해서입니다. 

 

https://nodejs.org/ko/

 

Node.js

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org

https://nodejs.org/ko/

 

 

그리고 코드를 작성하기 위해서 에디터를 설치해야하는데 가장 많이 사용하고 있는 Visual Studio Code(VS Code)를 설치하도록 하겠습니다. 

https://code.visualstudio.com/

 

Visual Studio Code - Code Editing. Redefined

Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications.  Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows.

code.visualstudio.com

https://code.visualstudio.com/

'Web > ReactJS' 카테고리의 다른 글

#04-02. Component를 만들어보자  (0) 2022.12.20
#04-01. Component 란?  (0) 2022.12.20
#03-02.폴더 및 파일의 역할  (0) 2022.12.19
#03-01. Create-react-app 설치 및 오류사항 대응  (0) 2022.12.19
#02. Create-react-app 설치  (0) 2022.12.19

" 본인이 하고 싶은 일 또는 제품등을 서비스하는 회사에서 권장하는 프로그래밍 언어를 배우면 된다. "

그렇다면 프로그래밍 언어란 무었이고 왜 종류는 다양한지에 대해서 의문이 들 수 있다.

프로그래밍 언어란?

말 그대로 언어의 일종이다. 외국어를 공부하는 이유는 외국인과 대화를 하기 위해서 공부를 한다
즉 프로그래밍 언어는 컴퓨터랑 대화를 하기 위해서 배우는것이 프로그래밍 언어 볼 수 있다.

 

프로그래밍 언어는 왜 다양한것인가? 

먼저 프로그래밍 언어가 왜 탄생했는지부터 알아보자.

수학에는 2,8,10,16진법이 있는데 사람이 가장 많이쓰는 진법은 10진법이다.
이유는 아마도 사람의 손가락이 10개이기 때문이다. 그렇다면 컴퓨터는 어떤 진법을 사용할까? 2진법이다. 
이유는 전력이 입력되고 들어오지 않고 이 상태를 표현하기에는 2진법이 가장 쉽기 떄문이다.

 

CPU건 GPU등의 연산장치는 이 2가지 신호를 확장한 것이라고 볼수 있다.

사람이 010101 이라는 0과 1을 이용해서 컴퓨터와 대화하기는 상당히 곤란한 부분이 많고 어렵다고 볼 수 있다.

이 어려움을 극복하기 위해서 그리고 어려움을 개선하기위해서 최초의 프로그래밍 언어인 어셈블리어가 나오게 되었다.

 

그리고 그 언어가 발전하여 여러 가지 언어가 나오게 되었다.

C, C++ , C#, JAVA, 파이썬 등...

 

프로그래밍 언어 중 가장 좋은 1개로 통일하면 좀더 생산적이지 않을까?

"프로그래밍 언어는 왜 여러 종류가 있고 이것들이 모두 다 쓰이는 이유는 무엇일까?" 라는 생각을 할 수 있다. 

이 부분은 언어의 완성도나 성능이 아닌 해당 언어를 개발한 회사의 환경에서 이유를 찾을 수 있다. 

 

다른 회사에서 개발한 언어를 기반으로 제품을 만들 경우 예를 들면 IOS의 App을 Objective-c / Swift가 아닌 다른 언어를  언어를 이용하여 개발 할 경우 해당언어의 라이선스가 무료에서 유료로 변경이 되거나 버전업을 통해 특정기능이 제한이 되거나 하는 등의 이슈가 있을 수 있다. 

본인이 직접 개발하고 라이선스가까지 관여할 수 있는 언어를 사용한다면 위에 말한 이슈에 대해서 상당부분 자유로울 수 있다.

또한 각 회사마다 문화와 목표가 있고 그 방향성에 맞게 언어가 개발되고 발전되어지기 때문에 프로그래밍 언어가 다양하다고 볼 수 있다. 

[COP27 Review] - 샤름엘셰이크 이행계획(Sharm El-Sheikh Implementation Plan)

'이행 COP’와 ‘손실과 피해’로 주목받은 제27차 유엔기후변화협약 당사국총회(COP27)가 약 2주간의 여정을 마치고 폐막했습니다. 이집트 샤름엘셰이크에서 열린 COP27(Conference of the Parties 27th)은 국가 간 이해관계에 따른 협상 난항으로 마감시한을 이틀 넘긴 11 20(현지시간)에 대표 결정문인 ‘샤름엘셰이크 이행계획(Sharm El-Sheikh Implementation Plan)’을 채택했습니다.

 

샤름엘셰이크 이행계획에서는 지구 평균 온도 상승폭을 1.5℃로 유지한다는 파리협정 목표를 재확인하였고, 개발도상국이 지난 30년간 요구해온 손실과 피해 신규 기금 조성에 합의를 이룬 것이 최대 성과로 꼽힙니다. 그러나 COP27 최종 합의문에 대해 안토니우 구테흐스 유엔 사무총장은 “우리의 지구는 아직 응급실에 있다”는 말로 보다 과감하고 시급한 탄소 감축 대응 노력이 필요함을 강조했습니다.

 

그 동안 탄소 감축을 위해 적극적으로 나서 왔던 EU뿐만 아니라 미국 역시 연방 정부 조달업체에 온실가스 배출량 공개를 요구하며 기후변화에 대응하기 위한 노력을 아끼지 않고 있습니다. 한국의 온실가스 배출량은 세계 10위권으로, 우리 정부와 기업도 탄소 배출 감축에 대한 책임과 의무를 이행해야 합니다.

'기타(분류없음)' 카테고리의 다른 글

사회책임투자 (Social Responsible Investing)  (0) 2023.08.03

PLSQL Developer 프로그램을 사용하는 도중 실행권한만 있는 계정에 Sysnonym 및 Grant를 받아서 사용하는 계정의 경우 Object의 목록이 너무 많아 응답없음 상태가 되거나 찾는데 많은 시간이 소요될 수 있습니다. 

PLSQL Developer Filter 기능을 사용하면 프로그램을 좀더 가볍가 사용할 수 있습니다. 

 

설정방법

1.Object Window에 Filters 버튼을 클릭합니다. 

Filters 버튼

2. 아래 호출된 창에서 우측의 붉은색 박스를 클릭하여 new Filter를 생성합니다.

    Description 항목과 Where clause 항목을 아래 그림과 같이 작성합니다. 

        - Description 는 필터의 기능을 유추할 수 있는 이름으로 작성하시면 됩니다. 

        - Where clause는 필터링할 조건을 Like 문으로 작성하시면 됩니다. ( eg. object_name Like 'MYOBJ%' )

 

Filters를 클릭하여 호출된 설정 팝업

3. 아래 그림과 같이 필터를 적용하여 Object를 검색할 수 있습니다. 

 

Oracle Data base 19c 버전을 사용하는 경우 jdbc jar를 8버전으로 사용해야만 한다(?) 라고 되어있다.

https://www.oracle.com/database/technologies/faq-jdbc.html

 

Oracle JDBC Frequently Asked Questions

For byte data, there are three Oracle SQL types: VARCHAR2, LONG and CLOB. VARCHAR2 data is of limited length, is stored directly in a column, and is transmitted to the server in inline packets. LONG data has a much larger limit (2 Gigibytes), is stored via

www.oracle.com

그런데.. 문제는 ojdbc8.jar을 사용하려면 jdk 8 버전부터 이상이어야 한다는 것이다. 

기존에 사용하는 JAVA 프레임워크가 스프링 하위 버전이라면 JDK가  8버전으로 변경되기 떄문에  버전에 맞게 프레임워크가 버전도 변경이 되어야 한다.(Spring 기준).. 

 

DB가 변경되었다고 해당 DB를 사용하는 어플리케이션이 변경되는 것은 아무래도 어느정도의 리스크를 생각해야만한다.

 

하지만 이러한 어려움을 Oracle의 설정으로 이겨낼 수 있다.

 

19c보다 하위 버전의 Oracle Client에서 접속할 수 있도록 설정하는 기능을 이용하면 JDK의 버전 변경 없이 Oracle 19C Databse를 사용할 수 있다.

 

/Oracle 설치 경로/network/admin/sqlnet.ora

해당 파일에 아래의 설정값을 추가한다.

SQLNET.ALLOWED_LOGON_VERSION_SERVER=9
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=9

Oracle client version 9 부터 사용가능하도록 설정하면 ojdbc8.jar의 변경없이 19c 데이터베이스를 사용할 수 있다.

사이트 접속시 www.testurl.com/a%5c.jsp  등의 경로로 테스트를 진행할 경우 400 bad request 를 만나게 된다.

 

web.xml에서 에러페이지를 아무리 설정해도 에러페이지로 이동하지 않고 브라우저 오류 페이지로 이동한다.

 

tomcat에서 보안상의 사유로 특정 특수문자에 대해서 파싱을 시도하는 중 파싱 오류가 나는 현상으로 

아래와 같은 방법으로 해결 가능하다.

 

catalina.properties 파일을 수정한다. (없으면 추가한다.)

org.apache.catalina.connector. CoyoteAdapter.ALLOW_BACKSLASH=true

 

본 솔루션은 tomcat 7.0.1xx / 7.0.4x 에서 테스트 되었다. (이전버전은 안될 수도 있다. )

Clauses

  - WHERE         : 조건문을 첨가 자료를 제한 선택할수있게함

  - STARTING WITH : LIKE(<exp>%)와 동일 WHERE절에 추가사용

  - ORDER BY      : 자료를 정렬함

  - GROUP BY      : 지정자에따라 동일 자료를 묶음

  - HAVING        : WHERE는 집단 함수에서는 실행하지 않때문에 이를 대처하기위해 사용

 

예시

 

1)일반 문법

   SELECT [DISTINCT | ALL] { * | {[schema.]{table | view |snapshot}.

                            *|exr} [ [AS] c_alias] [, [schema.]{table

                           | view |snapshot}.* |exr} [ [AS] c_alias] ]

                           ... }

   FROM [schema.]{table | view | snapshot}[@dblink][t_alias]

        [,[schema.]{table | view | snapshot}[@dblink][t_alias]...}

    [ WHERE condition ]

    [ GROUP BY expr [,expr] ...[HAVING condition] ]

    [{UNION | UNION ALL | INTERSECT | MINUS} SELECT command ]

    [ ORDER BY {expr|position} [ASC|DESC]

             [, {expr|position} [ASC|DESC]]...]

 

 

1) 테이블 내용 조회

2) 테이블 내용 정렬

Functions

 

1) Number functions

2) Charater functions

3) Conversion functions

4) Date functions

Operators

  - O/S label의 이진형식, 데이타형식은 주로 확인된 ORACLE에 사용. 

  - 이 아이템을 orperandsarguments라 부름

  - Operator는 특정한 charaterskeyword로 묘사

 

 

1) Arithmetic operators

2) Charater operators

  - 문자연결 연산결과는 두 문자열이 서로 다른 문자열로 두 문자열의 자료형식이 같은 CHAR형이면 결과는 이 형식의 제한된 255문자 국한되며, 만약 한쪽이 VARCHR2형이면 결과의 자료 형식은 VARCHR2형으로 제한 범위는 2000문자
형식을 따름
.

  - 문자열 안의 공백문자는 이 연산자에 의하여 그대로 보존됨.

 

3) Comparision operators

  - NULL 데이터타 베이스 용어에서 NULL은 필드에 데이타 베이스가 없다는 뜻임. 그것은 칼람이 제로거나 빈칸이라는 것을 의미하는 것이 아님. 제로나 빈칸은 값임. NULL어떤것도 그 필드안에 없다는 뜻임. 만일 Field = 9와 같은 비교식을 만들어 FieldNULL이면, 그 비교식은 Unknow으로 돌아 올 것임.

    이것은 조건이 불안하여 대부분의 SQL을 선호 하는 사람들은 UnknowFASLE로 바꾸어 특정연산자에게 IS NULL을 제공하여 NULL조건을 테스트함. 상당히 많은 로직버그를 추적할경우 NULL값을 비교하지 말고 FALSE의 초기값으로 복구하는지 확인함.

#1. \escape문자로보고 _앞에\가 선행하여 이것은 오락클이 해석시 _를 특수문자가 아니 일반문자로 인식

 

4) Logical operators

  - NOT, AND , OR 다른 언어와 내용 동일

 

5) SET operators

6) ORTHER operators

내부 Datatypes

 

(1) VARCHR2(size):변수길이인 영숫자 데이터. 최대 2000byte를 갖음.

(2) NUMBER(p.s):PrecisionPScaleS를 포함. P지정시 1~38까지 S지정시 -84~127의 범위.

(3) LONG:문자변수로 확장된 길이를 2GByte 또는 2^31-1까지 확장.

(4 )DATA:날자형 포함한 데이터 타입. ) Jan 1 4712BC - Dec 31 4712 AD

(5) RAW(size):크기가 255Byte까지 가능한 Binary 데이터.

(6) LONG RAW:크기가 Giga_Byte 데이터.

(7) ROWID:Table에서 행의 고유한 Address를 나타내는 16진 문자열.

(8) CHAR(size):1~255문자 사이의 길이를 갖는 영숫자 데이터.

(9) MLSLABLE:O/S Label의 이진형식.

'DB > Oracle' 카테고리의 다른 글

Oracle Database 기초 #4 - Functions  (0) 2022.03.25
Oracle Database 기초 #3 - Operators  (0) 2022.03.25
Oracle Database 기초 #1  (1) 2022.03.25
TNSPING 이용한 접속 테스트  (0) 2021.02.16
Index Rebuild  (0) 2020.10.05

+ Recent posts