본문 바로가기

개발

(82)
[JAVA] DB 에서 파일 경로 불러와 화면에 이미지 출력 DB에서 파일경로를 가져와 Base64 로 인코딩하여 화면에서 이미지를 출력하는 예제이다. FileUtil.java public static byte[] convertFileContentToBlob (String filePath) { byte[] result = null; try { result = FileUtils.readFileToByteArray( new File(filePath)); } catch (IOException ie) { log.error("file convert Error"); } return result; } public static String convertBlobToBase64 (byte[] blob) { return new String(Base64.getEncoder().enco..
[전자정부프레임워크] properties 설정 정보 불러오기 최근 전자정부프레임워크를 사용하여 프로젝트를 진행중이다. SpringBoot 사용할때는 .properties 파일에 설정정보를 넣어놓고 사용했는데 전자정부프레임워크에서는 xml 을 이용하여 설정정보를 저장하고 이를 사용할 수 있도록 되어있다. egovframwork 로 프로젝트를 생성하면 resource 밑에 아래와 같은 구조이다. 여기서 설정정보는 context-properties.xml 에 작성하면된다. 나의 경우에는 파일경로를 저장해두고 불러오기 위해서 사용하였다. 1. 설정정보 입력 위와 같이 fileUploadPath 라는 설정정보를 추가하였다. 2. propertiesService 호출 사용하려는 클래스에 아래 내용을 추가한다. @Resource(name="propertiesService") ..
[Babel] Babel 의 역할, 기본적인 사용법 이번에 프론트엔드 프로젝트를 진행하며 BABEL 을 사용하게 되었다. 이전 프로젝트에서 리액트를 하면서 사용해보긴 했지만 별다른 설정없이 리액트에서 생성해주는 설정그대로 사용하다보니 자세하게 알아보질 못했다. 이번 기회에 바벨에 대해서 재대로 공부해보고 싶은 마음이 들어 포스팅을 하게 되었다. 자바스크립트는 매우 빠르게 발전하고있다. 하지만 그만큼 브라우저가 따라가지를 못한다. 몇해전 큰 변화를 불러왔던 ES6(ECMAScript2015) 도 2015년 6월에 발표되었다고 한다. 하지만 국내에서 많이 사용하는 IE 와 같은 구형 브라우저는 지원하지 않는다. 따라서 최신 자바스크립트 문법을 모든 브라우저에서 사용할 수 있는 형태로 변환할 수 있는 transcomplier 가 필요하게 되었다. 그중에서 가장..
[Spring Secutiry] Invalid CSRF token found for... Spring Security 를 사용하여 개발중 Invalid CSRF token found for... 와 같은 에러가 발생하면서 로그인이 진행되지 않았다. CSRF는 Cross-site request forgery (크로스-사이트 요청 위조) 이다. 위 문제를 해결하기 위해서는 CSRF Token 추가해야한다. 서버에서는 해당 토큰을 받아 세션에 추가한후 이후에 요청 파라미터의 토큰값과 세션의 토큰값을 비교하여 일치하는지 검증해야한다. 1. maven dependency 추가 org.springframework.security spring-security-taglibs ${secutiry.version} 2. taglib 추가 3. form 태그 안에 csrf 추가
[도커]Docker 컨테이너에 vi(편집기) 설치 이번에 도커에 오라클을 설치하여 개발환경을 구축하고 있다. tnsnames.ora 를 수정하려고 하는데 vi 명령어가 동작하지 않는다. 기본적으로 설치되어있지 않은것같아서 별도로 설치해보았다. 1. 컨테이너 bash 접속 docker exec -it ‘컨테이너명’ bash 2. apt-get 업데이트 apt-get update 3. vim install apt-get install vim 4. vim 실행 vim tnsnames.ora 5. 결과
[전자정부프레임워크] Oracle log4jdbc 로 쿼리로그 출력 환경 DB : Oracle 11g XE Framework : egovFramework 3.8 ojdbc 버전 : ojdbc6 1. pom.xml 에 dependency 추가 org.bgee.log4jdbc-log4j2 log4jdbc-log4j2-jdbc4.1 1.16 2. context-datasource.xml 수정 driverClassName 과 url 이 수정된다. 변경전 변경후 3. resource 경로 밑에 log4j2.xml 이 없을 경우 추가 사용자 환경에 따라 log level 를 지정한다. 아래는 stackoverflow 에서 가져온 표이다. 로그레벨을 지정할때 참고하자. 개발할때는 DEBUG 가 유용하다.
[도커]MAC DOCKER ORACLE 설치 도커설치 https://hub.docker.com/editions/community/docker-ce-desktop-mac 맥 버전 설치 terminal 로 설치할 수 도 있지만 위 설치하는 프로그램은 GUI 환경을 제공하기 때문에 직관적으로 실행되고 있는 컨테이너를 확인할 수있다. 처음설치해보는거라 모든 기능을 현재 활용할 수 없지만 익숙해지면 좋을것같다. 오라클 컨테이너 설치 설치가능한 오라클 확인 docker search oracle 위 리스트 중에서 Start 가 제일 높고 설치하고자 하는 XE 버전인 oracleinanutshell/oracle-xe-11g 설치 오라클 설치 docker pull oracleinanutshell/oracle-xe-11g 컨테이너 실행 docker run --nam..
[Vue] Vue CLI3 + Vuetify 개발환경 세팅 Vue CLI3 + Vuetify 개발환경 세팅 토이프로젝트를 하기 위해 Vue 를 사용하기로 하였다. 빠른 설치환경을 위해 Vue CLI 를 사용하고 프론트 디자인은 전문 영역이 아니기때문에 Vuetify 를 사용하였다. Vue CLI3 + Vuetify 개발환경 세팅은 몇가지 명령어로 쉽게 생성할 수 있따. 기본적으로 node 가 설치되어 있다는 가정하에 포스팅을 시작하겠다. ( 만약 Node 가 설치 되어있지 않다면 [Node.js] Node.js 설치하기 (Windows10) 를 보고 설치하길 바란다 ) 1. Vue CLI 설치 > npm install @vue/cli -g 2. Vue App 만들기 > vue create my-app 명령어를 입력하면 위와 같이 프로젝트설정 화면이 나온다. 프로..