js에서 어떤 문자를 수정하기 위하여 사용하는 함수 replace

 

// test용 문자열
var test = "a가나다A부비비";

// 'a'를 문자열에서 제거하기 위함.
test = test.replace("a","");

// alert으로 test출력
// 가나다A부비비 를 출력합니다.
alert(test);

 

replace("변경이 필요한 문자", "변경할 문자");

- 변경이 필요한 문자를 => 변경할 문자로 변경함.

- ex) replace("a", "b") => a를 b로 바꾸는 것을 뜻합니다.

- 변경할 문자가 "" 공백일시 해당 문자를 삭제합니다.

- 변경이 필요한 문자에 정규식을 사용할 수 있습니다.

 

 

 

 

 

따옴표(")를 제거하기 위한 방법

replace(/^"(.*)"$/, '$1') -> 이 정규식을 사용하면 해당 변수의 처음과 끝에만 있는 "를 제거합니다.

 

 

 

 

 

 

 

 

 

참고 : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/replace

'▶Devel > WEB' 카테고리의 다른 글

[정규식] 반복적인 정규식 만들기  (0) 2021.05.01
[jQuery/js] 아이디 값 중복시 나타나는 현상  (0) 2021.04.27
[보안] XSS 개념  (0) 2020.06.08

개발환경

항목 설명 비고
OS Window 7 이상  
JDK JAVA SE SDK 7.0 이상 JDK 8은 개발환경 3.7 부터 적용가능
IDE Eclipse 4.6(Neon) JDK 8 이상 사용

 

 

설치

 

eGovFrame의 공식 홈페이지에 접속하여 다운로드 -> 개발환경을 클릭합니다.

 

eGovFrame 공식 홈페이지 ( 그림 클릭시 이동)

 

 

3.7버전은 사용할 것이기 때문에

좌측 메뉴의 개발환경에서 3.x를 클릭합니다.

 

개발환경에 맞는 버전을 클릭합니다.

 

 

 

개발자용 개발환경 3.7버전을 클릭하면

아래와 같은 글이 나오는데 자신의 OS의 bit수를 맞게 클릭합니다.

 

 

exe파일로 그냥 다운받으시면 됩니다.

 

 

 

 

 

다운로드 받으신 파일에 eGovFrameDev-3.7.0.-64(32)bit.exe파일을 실행합니다.

 

 

파일 실행

 

 

 

 

경로를 설정 후 Extract합니다.

 

경로 설정 후 Extract

 

 

 

설치된 곳에 파일에 eclipse에 들어가면 eclipse.exe 응용 프로그램을 실행합니다.

 

eclipse 응용프로그램을 클릭합니다.

 

 

 

 

 

작업공간을 설정하는 곳입니다.

Browse를 클릭하여 경로를 설정 후 OK를 클릭합니다.

 

※ 체크박스

지금 설정된 경로를 기본값(default)로 할 껀지 묻는 박스입니다.

되도록이면 경로는 항상 자기가 확인하도록 합시다. 

 

작업공간 설정 후 OK클릭

 

 

 

 

ecilpse가 정상적으로 실행이 되었습니다.

 

로딩 후에 초기 화면

 

 1.

데이터 모델링의 정의

    •  데이터 모델

      -  데이터베이스의 골격을 이해하고 이해를 바탕으로 SQL문장을 기능과

         성능적인 측면에서 효율적으로 작성하기 위해 알아야 하는 핵심요소

 

 

    •  데이터 모델링

      - SQL 전문가를 위한 지식에서도 데이터베이스의 논리적인 구조를 이해하는 데이터 모델을 이해하는 것은 그 다음

        SQL문장을 어떻게 구성할지에 대한 지식과 효율적인 구성에 대한 밑바탕의 지식을 쌓기 위한 핵심 이론

      - 정보시스템을 구축하기 위해, 해당 업무에 어떤 데이터가 존재하는지 또는 업무가 필요로 하는 정보는 무엇인지를

        분석하는 방법

      - 기업 업무에 대한 종합적인 이해를 바탕으로 데이터에 존재하는 업무 규칙(Business Rule)에 대하여 참(True) 또는

        거짓(False)을 판별할 수 있는 사실(사실명제)을 데이터에 접근하는 방법(HOW), 사람(WHO),

        전산화와는 별개의(독립적인) 관점에서 이를 명확하게 표현하는 추상화 기법

      - 요약하면 업무에 필요로 하는 데이터를 시스템 구축 방법론에 의해 분석하고

        설계하여 정보시스템을 구축하는 과정

 

    •  데이터 모델링을 하는 목적

      - 업무정보를 구성하는 기초가 되는 정보들을 일정한 표기법에 의해 표현함으로써 정보시스템 구축의 대상이

        되는 업무 내용을 정확하게 분석하는

      - 분석된 모델을 가지고 실제 데이터베이스를 생성하여 개발 데이터관리에 사용하기 위함

      - 데이터베이스만을 구축하기 위한 용도가 아니라 데이터 모델링 자체로서 업무를 설명하고 분석하는 부분

 

    •  정리

      - 정보시스템을 구축하기 위한 데이터관점의 업무 분석 기법

      - 현실세계의 데이터(What) 대해 약속된 표기법에 의해 표현하는 과정

      - 데이터베이스를 구축하기 위한 분석/설계의 과정

  • 집계 함수 : 입력이 여러개 이고 출력이 하나인 것을 말합니다.
  • count : 행의 갯수를 세는 집계 함수
1
2
select count(*)
  from A;
cs

 

 

 

 

 

 

  • avg : 행의 평균을 구하는 집계 함수 
1
2
select avg(c) *c는 상수로 이루어진 항
  from A;
cs

 

 

 

 

 

 

  • sum : 행의 총합을 구하는 집계 함수
1
2
select sum(c) *c는 상수로 이루어진 항
  from A;
cs

 

 

 

 

 

 

  • max : 행 중에 최대값을 구하는 집계 함수
1
2
select max(c) *c는 상수로 이루어진 항
  from A;
cs

 

 

 

 

 

  • min : 행 중에 최솟값을 구하는 집계 함수
1
2
select min(c) *c는 상수로 이루어진 항
  from A;
cs

 

 

 

 

 

  • 집계 함수를 사용함으로 써 WHERE문을 사용하여 조건을 걸어 행을 줄여서 계산도 가능합니다.
1
2
3
select sum(c) *c는 상수로 이루어진 항
  from A
 where c < 10;
cs

 

 

 

 

 

  • GROUP BY/HAVING절 그룹을 짝지어서 나누어 사용도 가능합니다. 
1
2
3
4
select count(c)
  from A
 order by c
having count(c) < 10;
cs
  • JOIN의 기본 형태

    • 테이블을 같이 연결하여 자료를 뽑아내는 것을 JOIN이라고 합니다.

    • 기본 형태 (c는 A의 칼럼, d는 B의 칼럼)

1
2
3
select *
  from A, B
 where c = d;
cs

 

  • INNER JOIN

    -JOIN시 칼럼앞에 지정자를 사용하여 명시해주면 오류를 줄일 수 있습니다.

    • 형태
1
2
select *
  from A INNER JOIN B ON (A.c = B.d);
cs

 

 

  • OUTER JOIN

  • LEFT OUTER JOIN은 왼쪽자료를 기준으로 오른쪽 자료가 만족하는 것이 없으면 그 값을 null로 출력합니다.

    • RIGHT OUTER JOIN은 LEFT와 반대로 오른쪽 자료를 기준으로 왼쪽 자료에 만족하는 것이 없으면 그 값을 null로 출력합니다.

    • FULL OUTER JOIN은 LEFT OUTER JOIN / RIGHT OUTER JOIN을 합쳐 놓은 조인형태를 보여준다.

1
2
select A.c, A.g, B.k
  from A (left/right/full) outer join B on (A.c = B.d);
cs
  • SELF JOIN

    • 자기 자신을 JOIN하여 사용하는 형태
1
2
3
4
select A.c, A.g, B.k
  from A A1, A A2
 where A1.g < A2.g
   and A1.h > A2.h;
cs
  • MySQL과 같이 LIMIT를 사용

      WHERE 구문 다음에 LIMIT 문구를 사용한다.

     맨 마지막에 들어가야 된다.

      item_box에서 상위 5개만 출력하기 위한 SQL 

1
2
3
select *
  from item_box
 limit 5;
cs

      

 

 

  • 해당 행에 ROWNUM 출력하기
1
2
3
select (row_number() over()) as rownum, 
       *
  from item_box
cs

 

 

 

 

  • LIMIT는 LOWNUM과 상관없이 정해진 행만큼 자른다.

     LIMIT 5일시 상위 5행만 출력된다.

'▶Devel > DB' 카테고리의 다른 글

[PostgresSQL] sleep() 함수  (0) 2020.06.11
[PostgreSQL] ::(double colon)의 의미  (0) 2020.06.11
[PostgreSQL] 집계 함수  (0) 2020.04.06
[PostgreSQL] JOIN(INNER, OUTER, SELF)  (0) 2020.04.06
[PostgreSQL] Table / Row 정보조회 SQL  (0) 2020.04.06

DB의 TABLE 목록(Table의 이름)을 출력한다.

 

 

Table의 열을 검색한다.

1
2
3
4
5
SELECT * 
  FROM INFORMATION_SCHEMA.COLUMNS 
 WHERE TABLE_CATALOG = '데이터베이스명' 
       AND TABLE_NAME = '테이블명' 
 ORDER BY ORDINAL_POSITION;
cs

 

 

Table의 기본키 값 조회

1
2
3
4
5
6
7
8
9
SELECT CC.COLUMN_NAME AS COLUMN_NAME 
  FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS TC ,INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE CC 
 WHERE TC.TABLE_CATALOG = '데이터베이스명' 
   AND TC.TABLE_NAME = '테이블명' 
   AND TC.CONSTRAINT_TYPE = 'PRIMARY KEY' 
   AND TC.TABLE_CATALOG = CC.TABLE_CATALOG 
   AND TC.TABLE_SCHEMA = CC.TABLE_SCHEMA 
   AND TC.TABLE_NAME = CC.TABLE_NAME 
   AND TC.CONSTRAINT_NAME = CC.CONSTRAINT_NAME;
cs

 

 

 

테이블의 COMMENT(설명) 조회

1
2
3
4
5
6
SELECT PS.RELNAME    AS TABLE_NAME,
       PD.DESCRIPTION AS TABLE_COMMENT
  FROM PG_STAT_USER_TABLES PS,
       PG_DESCRIPTION      PD
 WHERE PS.RELID   = PD.OBJOID
   AND PD.OBJSUBID  = 0;
cs

 

 

 

 

 

테이블 열(ROW/항복) COMMENT(설명) 조회

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SELECT PS.RELNAME    AS TABLE_NAME,
       PA.ATTNAME     AS COLUMN_NAME,
       PD.DESCRIPTION AS COLUMN_COMMENT
  FROM PG_STAT_ALL_TABLES PS,
       PG_DESCRIPTION     PD,
       PG_ATTRIBUTE       PA
 WHERE PS.SCHEMANAME = (SELECT SCHEMANAME
                            FROM PG_STAT_USER_TABLES
                           WHERE RELNAME = '테이블명')
   AND PS.RELNAME  = '테이블명'
   AND PS.RELID   = PD.OBJOID
   AND PD.OBJSUBID &lt;&gt; 0
   AND PD.OBJOID    = PA.ATTRELID
   AND PD.OBJSUBID  = PA.ATTNUM
 ORDER BY PS.RELNAME, PD.OBJSUBID
cs

1. 모델링의 정의

    모델 : 현실 세계의 다양한 현상에 대해서 일정한 표기법에 의해 표현해 놓은 모형

              현실 세계의 추상화된 반영 

 

     모델링 : 모델을 만들어가는 일

                 표기법에 의한 규칙을 가지고 표기하는 것

                 모델에 대한 양상이나 관점을 연관된 사람이나 그룹을 위하여 명확하게 하는 것

                 복잡한 현실세계를 단순화시켜 표현하는 것

                 어떤 것에 대한 것을 최종대상이 구축되도록 하는 계획으로서 기여하는 것

 

2. 모델링의 특징

    • 추상화 : 현실세계를 일정한 양식에 맞추어 표현을 하는 것

                 다양한 현상을 일정한 양식인 표기법에 의해 표현

                 다른 표현으로 모형화, 가설적이 있다.

                 [ 추상화 : 抽象化 / 抽 : 뺄 추 , 象 : 모형 상 , 化 : 될 화 ]

 

    • 단순화 : 현실세계의 약속된 규약에 의해 제한된 표기법이나 언어로 표현하여 쉽게 이해할 수 있도록 하는 개념

                 [ 단순화 : 單純化 / 單 : 홑 단 , 純 : 순수할 순, 化 : 될 화 ]

 

     명확화 : 누구나 이해하기 쉽게 하기 위해 대상에 대한 정확하게 현상을 기술

                 [ 명확화 : 明確化 / 明 : 밝을 명 , 確 : 굳을 확, 化 : 될 화]

 

    • 모델링은 '현실세계를 추상화, 단순화, 명확화하기 위해 일정한 표기법에 의해 표현하는 기법'

 

    정보시스템 구축에서는 모델링은 계획/분석/설계 할 때 업무를 분석하고 설계하는데 이용하고

      이후 구축/운영 단계에서는 변경과 관리의 목적으로 이용.

 

 

3. 모델링의 관점

    • 크게 세가지 관점 :  데이터 관점 / 프로세스관점 / 데이터와 프로세스의 상관관점

 

     데이터 관점 : 업무가 어떤 데이터와 관련이 있는지 또는 데이터간의 관계는 무엇인지에 대해서 모델링하는 방법(What, Data)

 

    • 프로세스관점 : 업무가 실제하고 있는 일은 무엇인지 또는 무엇을 해야 하는지를 모델링하는 방법(How, Process)

 

    • 데이터와 프로세스의 상관관점 : 업무가 처리하는 일의 방법에 따라 데이터는 어떻게 영향을 받고 있는지 모델링하는 방법(Interaction)

 

 

댓글과 공감은 저에게 큰 힘이 됩니다.

모든 것 중에 DB처럼 data를 저장하는 것은 엄청 중요한 것을 담당한다고 본다.

 

Data를 DB에 저장하려면 해당 table에 대한 필드(열/속성)을 잘 구축해야 된다.

 

이번 jsp게시판을 개발에 사용할 DB는 oracle 11g 버전을 사용

 

DB 테이블에 들어갈 내용

 

글번호(글을 식별하기 위해 사용)

제목

글쓴이

내용

첨부파일

등록일

수정일

조회수

 

릴레이션 만들기

Field Name Type 비고
글번호 num number PK
제목 subject varchar2(50Byte)  
글쓴이 written varchar2(20Byte)  
내용 content varchar2(4000Byte) varchar2 최대크기
첨부파일 filename varchar2(50Byte)  
등록일 regdate date  
수정일 modidate date  
조회수 count number 기본값 0

 

부제는 DBCP를 사용한 게시판을 만들 것이다.

 

 

설계에 포함 되어야 되는 것은

 

설계목적 / 주요 기능도 / DB테이블설계서 / 인터페이스 구상도 가 포함되어 있어야 합니다.

 

설계 목적

 

웹개발의 기초가 되는 게시판을 만들어서

 

웹개발의 실력을 향상하는 것에 중점

 

 

주요 기능/동작

 

게시판에 구현하기 위해 필요한 설계

 

구분 기능
list.jsp DB에서 정보를 불러들여 오는게시판의 리스트 부분(조회 / 읽기 / 등록 / 페이징)등의 기능이 있음
post.jsp 양식에 맞추어 data를 작성하는 jsp
postProc.jsp data를 동작하는 jsp
read.jsp 글을 읽어 들여 나타내는 jsp
update.jsp 글을 수정한 부분을 저장 하는 jsp
delete.jsp 글을 삭제 jsp
down.jsp 파일을 다운로드 jsp
DBCon.java DB에 직접적인 연결을 담당하는 부분 (server.xml에 DB의 정보를 입력하고 연결을 담당)
Bean.java DB의 Data를 사용하기 위해 저장 장소로 사용 되는 공간 (getter / setter를 사용)
Mgr.java DB의 data를 불러오고 저장하고 각 종 메소드들 보유

 

 

+ Recent posts