전체 글 39

Next.js 로컬 다중 파일 업로드

Next.js : 14.1.4 typeScript : 5 formidable : 3.5.1 버전을 사용합니다. 인스타그램처럼 사진을 선택할 당시에 미리 서버에 파일을 저장시키는 방식. 저는 게시판 글작성할 때 사진도 같이 올릴 수 있는 기능. 1. 이미지 업로드시 서버 저장 2. 저장 후 저장된 파일 이름 return 받아서 저장해 놓기 3. 글 작성 후 글 등록 버튼 누르면 글 등록할 때 저장해 놓은 파일 이름 같이 저장하기 4. 이미지 업로드 했지만 글작성 안 하고 나갈 시 파일 삭제하기 ( 미구현) formidable 이란 라이브러리를 사용할 것이기 때문에 라이브러리부터 설치하기. - npm install formidable ts를 사용한다면 오류가 발생할 것이다 그러면 declare를 해주던가 n..

Next.js,typeScript 2024.04.19

Oracle - join

join 이란? 조인은 두개의 테이블을 서로 묶어서 하나의 결과를 만들어 내는 것을 말한다. join의 종류에는 INNER JOIN OUTER JOIN CROSS JOIN SELF JOIN 1. INNER JOIN (내부 조인) : 두 테이블을 조인할 때, 두 테이블에 모두 지정한 열의 데이터가 있어야한다. SELECT * FROM TABLE_1 INNER JOIN TABLE_2 ON WHERE or SELECT * FROM TABLE_1 JOIN TABLE_2 ON WHERE or SELECT * FROM TABLE_1 T1, TABLE_2 T2 WHERE T1.공통된열이름 = T2.공통된열이름 방식으로 사용할 수 있다. 2. OUTER JOIN (외부 조인) : 외부 조인은 한 테이블에만 데이터가 있..

Oracle ( SQL ) 2022.11.22

전자정부프레임워크 암호화

전자정부 프레임워크에서 암호화 하여 회원가입 하기 암호화 알고리즘이란? 수학적인 과정을 통해 특정한 정보를 의미가 없는 문자로 나열하는 것이다. 암호화 (Encryption) 에는 크게 양방향 암호화 와 단방향 암호화가 있다. 양방향 암호화는 암호호와 복호화가 가능하며 단방향 암호화는 암호화만 가능하고 복호화가 불가능하다. 회원가입을 할 때 사용자의 개인정보들을 보안을 위해 이름이나 이메일 패스워드 등 을 암호화하여 저장해야 한다. 전자정부프레임워크에서는 암복호화 라이브러리를 제공해준다. 자세한 사용법은 https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:com:v3.8:sec:%EC%95%94%ED%98%B8%ED%99%94_%EB%B3%B5%ED%..

전자정부프레임워크(eGovFrame)란?

전자정부 프레임워크란 java 기반의 정보시스템 구축에 활용할 수 있는 개발,운영 표준 환경을 제공하기 위한 것이다. Java의 Spring 프레임워크와 java 라이브러리를 가지고 미리 만들어 놓은 공통컴포넌트와 이를 개발하는 개발환경, 실행환경, 운영환경, 관리환경 등으로 구성되어 있다. 정부 기관에서 관리하는 검증되고 신뢰할 수 있는 공통된 프레임워크를 사용하므로서 특정 개발사에 종속되지 않고 유지보수가 보다 편하며, 안정적인 개발을 할수있게 도와주는 역할을 한다. 쉽게 생각하면 나라에서 편하게 개발할 수 있도록 만든 프레임워크라고 생각하면 될거같다. eGovFrame의 장점에는 공통컴포넌트 재사용으로 중복 예산 절감 표준화된 개발기반으로 사업자 종속성 해소 프레임워크 무상제공으로 중소기업 경쟁력 ..

Callback 함수란?

callback 또는 콜백 함수(callback function)는 다른 코드의 인수로서 넘겨주는 실행 가능한 코드를 말한다. 라고 구글이 말한다. 쉽게 말하면 특정 함수나 특정 행동이 끝난 뒤 실행하고 싶은 함수나 행동이 있다 싶을때 콜백을 사용하면 된다. 이런것을 비동기 방식이라고 하며, 이런 식의 4초 뒤 실행하는 a 함수 3초 뒤 실행하는 b 함수 2초 뒤 실행하는 c 함수 가 있다고 할 때, 실행순서가 반드시 a,b,c 가 나와야 한다. 근데 이렇게 실행을 시키고 콘솔창에서 확인해보면 c -> b -> a 순서로 나오는것을 볼 수 있다. 작업이 오래걸리는 함수가 있을 것이고 금방 끝나는 함수가 있을 것이다. 근데 꼭 순서가 중요한 작업이 있다. 오늘 했다... a가 실행되고 그 값으로 b가 실행..

JavaScript 2022.09.27

egovMap이란?

egovMap 이란 Map형태의 클래스로 MyBatis(iBatis) 또는 parameterClass 또는 resultClass에서 사용할 수 있도록 제공되는 클래스이다. resultClass란 DB에서 조회한 결과를 가져올때, 결과값의 포맷을 가진 클래스이다. 즉, DB에서 userId, userName, userPhone (셋다 VARCHAR2 타입) 을 가져온다고 했을때 resultClass는 DB 컬럼명과 같고 타입도 같은 속성들을 가진 Class가 resultClass로 와야한다. 즉, String userId, String userName, String userPhone 을 가진 Class가 resultClass가 되어야한다. resultMap 사용해서 Mapping을 해도되지만 번거롭고 받을..

Spring Boot ch02

Spring Boot ch02 프로젝트 만들기 Spring Boot 는 Starter Project NEXT 한뒤 dependency 추가하기 db 연결을 위한 dataSource빈 사용해야 하므로 JDBC, Oracle Driver 추가한뒤 MyBatis 프레임 워크 사용할 것이기 때문에 MyBatis도 추가하기 그 뒤 finish 프로젝트 생성된 후 필요한 dependency 더 추가해줘야 한다. 톰캣과 jsp 사용을 위한 servlet 추가해줘야 한다. javax.servlet jstl org.apache.tomcat.embed tomcat-embed-jasper 이렇게 dependency 추가하기 그 뒤 , application.properties 에 추가 하기 db연결정보 JDBC 디펜던시 추가..

Spring Boot 공부 2022.08.17

Spring - Team Project - 08-16

Team Project 8월16일 그동안 디테일 추가 및 테스트 추가 테스트 반복했다 프로젝트 거의 끝나가고 오늘은 에러페이지 추가했다 가장 먼저 web.xml에 에러페이지 매핑을 해준다 404,405,500 에러 발생시 지정한 페이지로 이동한다. 이때 각 에러 페이지로 이동했을때 ajax를 이용하여 error.do?method=error해당에러 로 컨트롤러를 호출하면 컨트롤러에서는 관리자에게 이메일을 보내도록 한뒤, 3초뒤에 메인페이지로 이동시키도록 했다. 우선 404에러 페이지에 이렇게 한 뒤, 이런식으로 관리자에게 메일을 보내도록 작성했다. 405에러, 500에러 전부 처리해준뒤 테스트를 진행한다. 일부러 에러들을 발생시킨다. 404에러는 없는페이지나 호출을 하면되고, 405에러 띄우기위해서는 컨트..

Spring Boot ch01

스프링 부트 다운받기 다운 걸어놓고 인텔리 J 다운로드하기 Community 버전으로 다운받기 커뮤니티버전으로 다운해도 스프링 연동 가능 다운받는 jar 파일을 IDE 폴더에 넣고 거기서 CMD 열기 다운 완료 후 기존 스프링 ini 파일에서 utf-8 처리하는 문장 복사해서 위 파일의 맨 밑줄에 추가하기 그다음 다운로드 폴더에 있는 lombok.jar 를 sts폴더에 붙여넣기 그 뒤 추가하기 (원래 연결프로그램으로 자바로 실행하면 바로되는데 내 컴퓨터에서는 연결프로그램에 java가 계속 안떠서 이렇게 함;;) 이제 source 폴더 만들어주고 저게 스프링부트 실행 프로그램 바로 가기만든뒤 실행하기 얘는 톰캣 따로 설정안해도됌 dependency에 톰캣도 있음 IntelliJ IDEA keymap for..

Spring Boot 공부 2022.08.16