기본 콘텐츠로 건너뛰기

11월, 2022의 게시물 표시

SQL

Table 생성 CREATE TABLE test (     key NUMBER NOT NULL PRIMARY KEY,     value varchar(50) NOT NULL     value2 varchar(50) NOT NULL ); Table 삭제 DROP TABLE test; Table 선택 SELECT * FROM test; Table 요소 삽입 INSERT INTO test(key, value) VALUES (1,'Hello!'); Table 요소 여러개 삽입 INSERT INTO test (key, value) SELECT t.* FROM (        SELECT 1, 'Hello,' FROM DUAL     UNION ALL     SELECT 2, 'World' FROM DUAL      UNION ALL     SELECT 3, '!' FROM DUAL )t; Table 요소 삭제 DELETE FROM test WHERE key=1; Table 요소 전체 삭제 DELETE FROM test; Table 요소 수정 UPDATE test SET value='Hello,', value2='Word!' WHERE key=1; Sequence 생성 CREATE SEQUENCE test_seq; Sequence 삭제 DROP SEQUENCE test_seq; Sequence 사용 SELECT test_seq.NEXTVAL FROM DUAL; Sequence 현재 값 SELECT test_seq.CURRVAL FROM DUAL; Sequence 조회 SELECT * FROM all_sequences WHERE sequence_name = 'test_seq'; Table에 날짜 저장 INSERT INTO test(date) VALUES (SYSDATE); Table에 세부 날짜 저장 INSERT INTO test(date) VALUES (localtimes

웹개발

MVC+S DAO(DataAccessObject) VO(ValueObject) Servlet SVC(Service) View(JSP)

기록

DB에 저장해야 할 데이터 작성자, 작성일, 제목, 내용, 파일명, 파일사이즈 - 글 작성시 첨부파일 없다면? -> 컬럼값이 비어 있게 된다 - 원자성 : 한개의 컬럼에는 한개의 값만 저장해야 한다 board(글번호, 작성자, 작성일, 제목, 내용) attach(글번호, 첨부번호, 파일명, 파일사이즈) 글 한개를 저장할 때 첨부파일이 2개 포함된 경우 board 테이블에 한 행 추가(글 번호1) attach 테이블에 2개 행 추가(글 번호1, attnum(1), attnum(2)) DB Normalization(정규화) - 무결성 확보 제 1 정규형(원자성) // 한 개의 컬럼에는 한 개의 값만 넣는다 제 2 정규형(PK가 다수개의 컬럼을 구성된 경우(복합키)에 적용)     - PK에 모든 다른 속성이 종속되어야 한다     - PK의 일부에 종속되는 경우(부분함수 종속성)가 없어야 한다 제 3 정규형     - PK 외의 속성에 다른 속성이 종속되는 경우 (이행함수 종속성)가 없어야 한다 종속성 : 어떤 속성 'A'를 알면 다른 속성 'B'의 값이 유일하게 정해지는 관계 - 주민번호를 알면 그 사람의 이름은 유일하게 정할 수 있다 - 주번, 이름, 학과, 교수명, 과목 (테이블 내에 서로에 대해 종속성이 없어야 한다) 오라클,MyBatis 패턴검색 - SELECT * FROM emp WHERE ename LIKE '%sm%' // 부분 일치 검색(패턴검색) - SELECT * FROM WHER ename='sm' // 완전 일치 검색 sql 표준 - ename LIKE '%' || #{pattern} || '%'

Javascript

형제 요소 선택 .nextSibling : 다음 형제 마디선택(텍스트 포함) .nextElementSibling : 다음 형제 요소 선택(텍스트는 제외) onload 적용 가능 태그 <body> <frame> <frameset> <iframe> <img> <input type="image"> <link> <script> <style> Date var date = new Date(); date.getFullYear(); // 현재년 date.getMonth(); // 0~11 date.getDate(); // 현재일 Object.valueAsDate = new Date(); // 현재 날짜 value값으로 주기 문자열 길이 String s = "Hello, World!"; console.log(s.length); 태그 숨기기 Object.style.visibility = "hidden"; 시간 지연 setTimeout(function() {}, 0); JSON 만들기 var json = {}; json.key = "value"; alert(JSON.stringify(json)); // 문자열로 변환해서 화면에 표시 대문자 소문자 "hello, world!".toUppserCase(); "hello, world!".toLowerCase(); 무작위 수 생성 Math.random() // 0이상 1미만의 숫자 Math.floor(Math.random()*(max+1-min))+min // min ~ max 반올림, 올림, 내림 Math.round(); // 절반 이상은 무조건 반 올림 Math.ceil(); // 소수점 올림 Math.floor(); // 소수점 버림 Timing Events - setTimeout(function, milliseconds) - se

Blogger

코드 하이라이트 사이트 http://hilite.me/ 코드 <!-- 나만의 공간 --> <style id='daru_css' type='text/css'> .code {      overflow: auto;      height: 200px;      background-color: rgb(239,239,239);      border-radius: 10px;      padding: 5px 10px; } .code::-webkit-scrollbar-thumb {      background-color: grey;      border: 1px solid transparent;      border-radius: 10px;      background-clip: padding-box;   } .code::-webkit-scrollbar {      width: 15px; } </style> <!-- 나만의 공간 -->

IDE

종류 Sublime Text, Xcode, VSCode, Eclipse, Neovim 단축키 설정 문서 서식 지정 : shift+alt+f 다시 들여쓰기 : ctrl+i 제안 항목 트리거(trigger suggest) : ctrl+space, cmd+I 다음 줄 이동 : shift+enter

터미널

포트 확인법 sudo lsof -PiTCP -sTCP:LISTEN // 현재 열려있는 포트 확인 sudo kill -9 PID // PID 번호로 열려있는 포트 닫기 sudo rm -R FILE // FILE을 강제로 삭제

CSS

선택자 자식 선택자 > 부모 선택자 < 형제 선택자 ~ 글자 가로 가운데 정렬 text-align : center; // 문자 가로 중앙 정렬 글자 세로 가운데 정렬 line-height : (부모의 높이); // 문자 세로 가운데 정렬 vertical-align:middle 요소 중앙 정렬 부모 position: relative; 자식 position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); 요소 가운데 정렬 margin : auto; 컨텐츠에 맞게 크기 조절 width : fit-content; 왼쪽으로 띄우기 float: left width: 100%; // 부모 넓이의 100% height: 100%; // 부모 높이의 100% width: 100vw; // 현재 창 넓이의 100분의 100 height: 100vh; // 현재 창 높이의 100분의 100 문자가 박스 밖으로 못나가게 하기 word-break: break-alll; Input 박스 선택시에 outline 없애기 input:focus {      outline: none; } Input 박스 선택시 화살표 없애기 input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button {      -webkit-appearance:      none;      margin: 0; } border까지 포함해서 크기 고정하기 box-sizing: border-box; p.ex1 {display: none;} p.ex2 {display: inline;} p.ex3 {display: block;} p.ex4 {display: inline-block;}

HTML

  header nav aside section : main article footer // post 방식 enctype="multipart/form-data" // encoding type = text & file / form data input <form enctype="multipart/form-data"> <input type="file" multiple="multiple"> // 다수개의 파일을 올릴 수 있다 <input type="text" disable> // 수정 불가, 폼 전송 불가능 <input type="text" readonly> // 수정 불가, 폼 전송 가능 <input type="date" value=""> // date 기본 값 설정 빈칸 &nbsp; 테두리 포함해서 width, height 크기 정하기 box-sizing: border-box; // 원래는 content-box

jQuery

<script src="https://code.jquery.com/jquery-3.6.1.min.js" integrity="sha256-o88AwQnZB+VDvE9tvIXrMQaPlFFSUTR+nldQm1LuPXQ=" crossorigin="anonymous"></script> ready 함수 $(function(){   // 실행할 기능을 정의해주세요. }); 문법 $("tag") $(".class") $("#id") .prop() .attr() .append() var $div = $("<div></div>"); $("body").append($button); $("#btnUpload").prop("disabled",true); css 스타일 지정 $("p").css("background-color"); $("p").css("background-color","red"); 첫번째 자식 요소 $("#id").children().eq(0); $("img[src='/images/image.jpg']");

Git

git init : git 저장소 생성 git add : git 대기 영역에 변경사항을 추가     파일/경로 : git 대기 영역에 파일이나 경로의 변경사항을 추가     . : git 대기 영역에 현재 경로의 모든 변경사항을 추가     -a : git 대기 영역에 모든 모든 변경사항을 추가     -p : git 대기 영역에 변경사항을 각각 편집 git commit : git 대기 영역의 내용을 git 저장소에 저장      -m "문장" : git 대기 영역의 내용을 git 저장소에 저장하고 문장을 기록 git status : git 저장소의 내용을 확인 git remote : git 원격 저장소 연결     add 이름 주소 : git 원격 저장소의 주소로 연결하고 별칭은 이름으로 설정      -v : git 원격 저장소의 모든 이름과 주소     rename 원래이름 바꿀이름: git 원격 저장소의 원래이름을 바꿀이름으로 변경     rm 이름 : git 원격 저장소 '이름'을 삭제 git push : git 저장소에 있는 내용을 git 원격 저장소에 저장     이름 이름2: git 원격 저장소 '이름'에 분기 '이름2'를 저장 git branch : git 저장소의 분기     -d 이름 : git 저장소의 이름 분기 삭제 git checkout : git 저장소의 분기 변경     -b 이름 : 이름 분기를 생성 후 이름 분기로 이동 git put : git 원격 저장소의 내용을 git 저장소에 저장 git clone : git 원격 저장소의 내용을 저장 git merg : git 저장소의 분기 병합 git fetch : git 원격 저장소의 내용을  git log : git 저장소의 기록     -n 숫자: git 저장소의 기록을 숫자 개 보기 git grep : git 저장소의 내용 검색 git reset : git 저장소의 내용을 초기화 git stash : git 저장소에 임