개발/java,spring 45

[선형구조]자료 구조의 개념 정리(리스트, 스택, 큐, 데크)

지금까지 자료구조를 대충 여겨왔네요...이참에 하나씩 정리하려고 합니다. 자료 구조의 정의프로그램에서 사용하기 위한 자료를 기억장치의 공간내에 저장하는 방법과 저장된 그룹 내에 존재하는 자료 간의 관계, 처리 방법 등을 연구 분석하는 것을 말한다. ○ 자료 구조는 자료의 표현과 그것과 관련된 연산 ○ 자료 구조는 일련의 자료들을 조직하고 구조화하는 것○ 어떠한 자료 구조에서도 필요한 모든 연산들을 처리하는 것이 가능○ 자료 구조에 따라 프로그램 실행시간이 달라짐 자료 구조의 분류 자료 구조의 이용○ 정렬(Sort) : 기억장치 내의 자료를 일정한 순서에 의해 나열하는 것 ○ 검색(Search) : 기억장치 내의 자료를 찾는 것○ 파일 편성 : 자료를 기억 매체에 저장할 때의 파일 구조○ 인덱스 : 파일에..

개발/java,spring 2019.09.10

전자정부 프레임워크에 sqLite3 DB 연결 하기

안녕하세요.오늘은 sqLite3 DB를 연결해보자 합니다. 이전에 테스트로 sqLite3를 다운받아 사용했었습니다. [개발/DB] - 윈도우 64비트 SQLite3 설치 및 실행(콘솔 및 그래픽 활용 가능) 설치한김에 전자정부 프레임워크에 연결까지 해보고 삭제하려고합니다...간혹 전자정부프레임워크에 2개의 DB를 연결하는 방법을 찾는분들도 계시고하니깐요. 먼저 pom.xml에 메이븐을 설정합니다.gradle이나 웹 프로젝트에는 각각 설정하시면 될거 같습니다. pom.xml 추가 org.xerial sqlite-jdbc 3.25.2 context-datasource.xml 설정 아직 비밀번호 설정하는 법은 배우지 못했습니다.기본 로컬경로에 있는 DB를 연결하였습니다. context-sqlMap.xml설정 ..

개발/java,spring 2019.03.15

(공통처리)웹취약성 크로스사이트 스크립트(XSS) 처리하기2_filter chain

안녕하세요.앞서 크로스사이트 스크립트(XSS)를 처리하기 위하여 포스팅한적이 있습니다.이는 간단한 경우에 임시로 처리하기 위함이었습니다. [개발/web, html5,jsp] - 웹취약성 크로스사이트 스크립트(XSS) 처리하기 하지만 프로젝트 전체를 처리할려고 하면... 이과같은 방법은 맞지 않다고 생각되네요. 시간이 지난만큼 더 발전된 모습이겠죠? 프로젝트 전체를 공통적으로 크로스사이트 스크립트를 처리하기위해스프링의 filter chain을 사용하였습니다. 지금부터 제가 사용한 방법을 차례로 기재하겠습니다. 1.web.xml 등록하기 xssfilter lee.comm.util.CrossScriptingFilter xssfilter /* filter의 이름을 xssfilter라 정의하고클래스를 정해 주었습..

개발/java,spring 2019.03.14

java xml 파싱 또다른 방법 sax 파싱

이전에 DocumentBuilder 를 통해 xml 문서를 파싱한 포스팅을 하였습니다. [개발/java,spring] - 자바 xml 데이터, 속성 파싱(java xml parsing data, attribute) 하지만 이 방식으로 할경우 Doctype 에 파일 정보(파일명, 경로 등)이 적혀있을경우 에러가 발생하였습니다.그리하여 찾은 것이Handler를 이용한 xml 파싱 방법 입니다. xml 내용입니다. 홍길동 25 A B C 임꺽정 22 AA BB CC 그리고 바로 소스 첨부하겠습니다.XMLParserHandler.java 파일을 생성하였습니다. package lee.comm.util; import java.util.ArrayList; import org.xml.sax.Attributes; imp..

개발/java,spring 2018.10.24

java JAI 파일 확장자 변환 tif -> png

저를 위한 간단 메모 입니다. 파일 확장자를 tif 에서 png를 바꾸기 위한 소스 입니다. 먼저 메이븐 설정 부분입니다. jai_core jai_core 0.0.1-SNAPSHOT jai_codec jai_codec 0.0.1-SNAPSHOT 라이브러리 파일이 제대로 다운받아지지 않는다면직접 입력하시면 됩니다. 라이브러리 파일 Import현재 pom.xml 에는 위의 소스를 기입된 상황입니다. 프로젝트 우클릭하여 Import를 선택합니다. 검색란에 maven의 ma까지만 치니깐 잘 나오는군요Install or deploy an ~~ 위의 빨간점을 선택해주세요. Artifact file 을 찾아 주시면 됩니다. 인터넷에서 다운받은 jai_codec을 찾은후 Group IDArtifact ID를 jai_c..

개발/java,spring 2018.07.09

자바 junit 사용하기 (단위테스트)

안녕하세요.junit에 대하여 포스팅해보겠습니다.단위테스트라고해서 많이들 들어보셨을겁니다.하지만 사용하지 않고있죠...저도 사용하지 않고 있었습니다. 이참에 사용하기로 마음먹고 사용법을 포스팅하려고 합니다. JUnit이란자바용 단위 테스 도구 입니다. 먼저 라이브러리를 추가해보겠습니다.maven이나 gradle을 사용하시는 분은 직접 라이브러리를 가져올수 있지만이클립스에 제공되는 JUnit이 있습니다. 소스를 다 까보진 않았지만 똑같은거라 생각됩니다.프로젝트의 우클릭을 하여 Properties를 클릭합니다. Java Build Path에서 Add Library를 선택합니다. 그러면 친절하게 JUnit이 있습니다. 바로 선택하려 라이브러리를 추가하였습니다. 이제 테스트 소스를 구현해보겠습니다. 먼저, sr..

개발/java,spring 2018.02.10

자바 리플렉션(java reflection) 클래스 변수, 함수 접근

안녕하세요.오랜만에 포스팅을 하는 기분이네요. 프로젝트를 진행하다 vo에 있는 변수들의 이름이 필요한 상황이 있었습니다.처음에 감이 안잡혀 이리저리 검색하다가 알게된자바 리플렉션(java reflection)!사실 리플렉션 이라고 말은 들어밨지만 제가 궁금한점이 리플렉션인줄 알고약간 민망했네요. 리플렉션에는 많은 내용들이 있지만 제가 써먹었던 것만 일단 정리해 두겠습니다. 리플렉션객체를 통해 클래스의 정보를 분석해 내는 프로그램 기법을 말한다. 투영, 반사 라는 사전적인 의미를 지니고 있다. 리플렉션으로부터 얻을수있는 정보 - ClassName - Class Modifiers - Package Info - Superclass - Implemented Interfaces - Constructors - Me..

개발/java,spring 2017.12.14

자바 xml 데이터, 속성 파싱(java xml parsing data, attribute)

안녕하세요.오랜만에 자바관련 포스팅을 합니다.나중에도 요긴하게 쓰일거같아 기본 코딩만 해두고 포스팅하려고 합니다. xml 데이터 파싱을 해보겠습니다.(java xml parsing data and attribute) 우선 테스트 xml 입니다. 홍길동 25 A B C 임꺽정 22 AA BB CC xml 구조는 테스트로 만든것이기 때문에 이해하기 쉬울 거라 생각됩니다. 제가 구현한 소스 입니다. import java.io.File; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document; import org.w3c.dom.Element; import ..

개발/java,spring 2017.12.04

java static 변수에 대한 기초 개념 이해!

자랑하는건 아니지만... 현재 개발 3년차 입니다.그런데 가끔 프로젝트를 진행하다보면 아주 기초적인 개념 등을 몰라서어리둥절한 경우를 겪게 됩니다. 이번에는... static 변수!제가 알기로는 static 변수는 객체를 생성하지 않아도 접근이 가능하다... 정도?그래서 프로젝트에서 관련 클래스안에 static으로 선언하여 몇번 사용하곤 했습니다. 그래도...나름 개발자인데!알고 사용해야하지 않는가! 라는 생각에 정리해두기로 하였습니다. static 변수클래스 변수이다.클래스가 정의만 되어도 접근이 가능한 변수(인스턴스 변수는 인스턴스가 생성되었을때 접근 가능) class InstCnt { static int instNum=0; public InstCnt() { instNum++; System.out.p..

개발/java,spring 2017.10.12

자바 가상머신(jvm) 메모리 모델, 개념 이해하기

안녕하세요 ~! 이번 포스팅에서는 자바 가상머신(JVM)에 관련된 이야기를 해볼까 합니다.사실 static에 대한 개념을 공부하던 중 jvm관련 개념을 알아야 할거같아 jvm부터 포스팅 하게 되었습니다. 사실 static에 대한 공부를 하고 포스팅 정리하는 중입니다단지, jvm의 간략한 개념을 먼저 이해하는게 도움이 되서 먼저 포스팅 할 뿐! 먼저 의문점!'메모리 관리는 운영체제가 하는 건가요?' 아니면'가상머신이 하는 건가요?' 보통 이런 문제는 신경쓰지 않고 넘어가게 되는데메로리 관리의 이해는 프로그래머에게 중요하다는 사실을 요즘들어 느끼고 있습니다. 메모리에 대한 답변운영체제가 자바 가상머신에 메모리를 준다. ex) 4GB 자바 가상머신은 4GB를 본인이 알아서 사용한다. 그렇다면 자바 가상머신은 ..

개발/java,spring 2017.09.24