본문 바로가기
반응형

전체 글110

[Spring] DI/IoC 이번 포스팅에서는 스프링의 특징 중 하나인 DI/IoC에 대해서 글을 작성해보려고 합니다. DI와 IoC에 대한 개념적인 얘기는 이 포스팅을 참고해주시면 됩니다. https://programforlife.tistory.com/103 [Spring] Spring 기초 이번 포스팅에서는 인턴을 하게 된 회사에서 진행해준 신입사원 교육 중, Spring의 기초에 대해 정리해보려 합니다. Spring Boot로 프로젝트를 진행했던 경험이 있어서 Spring의 특징에 대해 어느 정도 programforlife.tistory.com 해당 포스팅에서는 DI가 뭔지, 예제 코드를 가지고 설명을 했지만, 실제로 사용하는 코드와 다른, 개념을 설명하기 위한 코드로 설명했습니다. 이번 포스팅에서는 실무와 유사한 정도의 코드.. 2021. 9. 8.
[개발 공부] SQLPLUS SP2-0310 에러 데이터베이스 공부를 하려고 Oracle 데이터베이스에 실습환경을 구축하기 위해 SQLPLUS를 통해 데이터 이관 SQL파일을 실행시키려고 했습니다. C:\ 경로에 [데이터이관.sql] 파일을 옮겨 놓고, cmd 창을 열고, 다음 명령어를 통해 SQLPLUS를 실행했습니다. C:\> SQLPLUS [아이디]/[비밀번호] 그리고 SQLPLUS가 켜지면 다음과 같은 명령어로 SQL파일을 실행하려고 했습니다. SQL> @[파일이름] 하지만 다음과 같은 에러가 발생했습니다 SP2-0310: 파일 "데이터이관.sql"을 열 수 없습니다. 이를 해결하기 위해 검색을 해봤는데 찾은 해답으로는 SQL 파일을 상대 경로가 아닌 절대 경로로 실행해보라는 것이었습니다. 하지만 이 방법도 해결되지 않았습니다. 긴 시간 고민한 .. 2021. 8. 25.
[개발 공부] 엑셀 데이터 데이터 베이스에 이관하기 이번 포스팅에서는 엑셀로 관리하던 데이터를, 엑셀로만 관리하기 너무 어려운 상황에 이르러서 관리 플랫폼을 웹 애플리케이션으로 개발하는 초기 단계에서, 엑셀의 데이터를 데이터베이스 상으로 이관하는 SQL문을 작성하는 방법에 대해 설명하려고 합니다. 보통 엑셀로 관리하던 데이터는 몇백 개에서 몇천 개가 될 수 있습니다. 조금 더 많은 양의 데이터를 이관하는 작업에는 알맞지 않은 방법일 수 있으나, 1000개 정도의 데이터를 옮겨야 했던 저는 좋은 방법이었습니다. ※ 해당 포스팅에서 사용되는 데이터와 테이블은 포스팅을 위한 데이터를 직접 만든 것으로 실제 데이터가 아닙니다 ※ 엑셀로 회원정보를 관리하고 있었고, 엑셀에 회원 정보가 있습니다. 회원 정보에는 아이디, 비밀번호, 주소, 전화번호가 있습니다. 해당 .. 2021. 8. 5.
[Spring] Spring 기초 이번 포스팅에서는 인턴을 하게 된 회사에서 진행해준 신입사원 교육 중, Spring의 기초에 대해 정리해보려 합니다. Spring Boot로 프로젝트를 진행했던 경험이 있어서 Spring의 특징에 대해 어느 정도 알고 있다고 생각하고 있었는데, 이 교육을 듣고 Spring에 대해 한층 더 자세히 알게 되었습니다. Spring의 등장 Spring이 등장하기 전, 자바 개발자들은 EJB(Enterprise Java Beans)를 주 프레임워크로 사용했습니다. 2002년도에 로드 존슨이 출판한 도서 "Expert One-on-One J2EE Design and Development"에 선보인 코드가 Spring의 근간이 되었습니다. 이 도서를 읽은 개발자들이 코드가 책으로만 존재하기에는 너무 아깝다며 로드 존.. 2021. 7. 21.
[개발 공부] Spock Test Framework 실습 지난 포스팅에서는 Spock Framework에 대한 개념과 JUnit테스트와의 차이점 등에 대해 이론적으로 포스팅했었습니다. https://programforlife.tistory.com/101 [개발 공부] Spock Test Framework 이번 포스팅에서는 인턴을 시작하면서 받은 교육 중, Spock Test Framework에 대해 정리해보려 합니다. Java를 사용한 개발을 진행하면서 들어본 테스트는 JUnit이라는 것인데, Spock Framework는 생소한 기 programforlife.tistory.com 이번 포스팅에서는 Spock Test Framework을 통한 실무에 사용할 수 있는 실습을 해보려고 합니다. 실습 준비 먼저, 실습을 진행하기 위한 프로젝트는 구조는 다음과 같습니.. 2021. 7. 20.
[개발 공부] Spock Test Framework 이번 포스팅에서는 인턴을 시작하면서 받은 교육 중, Spock Test Framework에 대해 정리해보려 합니다. Java를 사용한 개발을 진행하면서 들어본 테스트는 JUnit이라는 것인데, Spock Framework는 생소한 기술이었습니다. 왜 테스트를 해야 하는가? 실제 운영 중인 서비스에서, DB의 백업이 되고 있지 않거나, 개발 중인 소스 코드를 VCS(Version Control System)을 사용하여 백업을 하고 있지 않는 경우엔 어떻게 될까요? 개발하다가 한 번의 실수를 하면 복구도 못하고, 관리에 어려움을 느낄 수 있기 때문에 DB 백업과 VCS를 통한 백업을 진행합니다. 그렇다면 테스트 없이 개발을 하면 어떻게 될까요? 마찬가지로 좋은 코드를 작성할 수 없고 제대로 개발하기 힘듭니다.. 2021. 7. 20.
[Git] Git 제대로 알고 사용하기 - 2 이번 포스팅에서는 인턴십 교육 때 진행했던 실습에 대해 정리하려고 합니다. 이번 교육을 맡으신 분께서 하신 말씀이 있습니다. Git을 잘 쓴다고 하는 것은, Git Tree를 자유자재로 사용할 수 있는 것이다. 이번 실습은 Git, GitHub, SourceTree로 진행되었습니다. 먼저 GitHub에서 실습용 repository를 생성하고 SourceTree 프로그램에서 Clone을 해주었습니다. 위의 사진을 보면, main, origin/main, origin/HEAD 3개의 branch를 확인할 수 있습니다. main - main branch origin - 원격 저장소의 디폴트 이름, git clone 하면 자동으로 생성됨 origin/main - 원격 저장소의 main branch origin/.. 2021. 7. 13.
[Git] Git 제대로 알고 사용하기 - 1 이번 포스팅에서는 최근 시작한 인턴십에서 진행하는 신입사원 교육 중 흥미롭게 들었던 Git강의에 대한 정리를 하려고 합니다. 먼저 Git에 대한 이야기를 하기전에 Git을 왜 사용하게 됐는지 부터 얘기하려고 합니다. (항상 기술을 사용할 때에는 왜? Why? 라는 질문을 습관화 합시다) Version Control System (VCS) VCS는 문서나 설계도, 소스 코드 등의 변경점을 관리해주는 소프트웨어입니다. 다음은 VCS을 사용하는 이유들 입니다. 변경점 관리 버전 관리 - 버전들 사이의 변경 사항, History등 관리 백업 & 복구 - 초창기 Git의 중점 point 협업 VCS에는 다음과 같은 종류들이 있습니다. Local VCS Centralized VCS Distributed VCS Lo.. 2021. 7. 7.
[인터넷 보안] Metasploit 모의침투 Metasploit 이란? Metasploit은 온갖 취약점과 공격을 시도할 수 있는 프레임워크이자 오픈소스 도구입니다. Metasploit과 Metasploitable2는 다른 것입니다. Metasploitable2는 하나의 시스템이고, Metasploit는 프레임워크입니다. Kali Linux에 기본적으로 설치되어 있습니다. 그럼 본격적으로 Metasploit을 사용해서 모의 침투를 진행해보겠습니다. 먼저 Metasploit을 사용하려면 데이터베이스가 필요한데, postgreSQL을 사용하겠습니다. 다음 명령어를 이용해 postgreSQL을 실행하고, 실행 중인지 상태를 확인합니다. $ systemctl start postgresql $ systemctl status postgresql Postgre.. 2021. 6. 13.
[인터넷 보안] XSS (Kali, Ubuntu 사용) 이번 포스팅에서는 공격자인 Ubuntu, 피해자인 Kali를 두고 XSS 실습을 해보겠습니다. 다음은 각 운영체제의 IP주소입니다. Ubuntu - 192.168.0.12 Kali - 192.168.0.20 먼저, 사용자 Kali에서 전송해오는 내용을 받기 위해 Ubuntu에서 apache2 웹서버를 설치하고 실행시켜줍니다. 그리고 다음 명령어를 통해 apache2 웹서버의 access log를 켜 둡니다. $ cd /var/log/apache2 $ sudo tail -f access.log DVWA에서 실습 Kali에서 DVWA의 XSS에서 다음 스크립트를 입력해 submit 하고 실행시켜줍니다. 이 스크립트는 쿠키 정보를 공격자 PC인 Ubuntu의 IP주소로 보내라는 스크립트입니다. 그럼 Ubunt.. 2021. 6. 12.
반응형