일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Dependency Injection
- JDBC TEMPLATE
- Di
- myBatis
- STS
- @Spring-Test
- @test
- Spring Boot
- Framework
- unix
- pointcut
- Linux
- java
- 마이바티스
- SpringJDBC
- @AspectJ
- 프로퍼티
- spring framework
- @JUnit
- XML
- 컨테이너
- java spring
- AOP
- POJO
- 리눅스
- spring aop
- spring
- Ubunt
- Spring JDBC
- JdbcTemplate
- Today
- Total
목록전체 글 (292)
개키우는개발자 : )
유용한 명령어 주요 명령어( history , piping , redirect , grep , more , less ) clear 작업을 하면 화면에 코드가 쌓이게 된다. clear 명령어를 입력하면 화면의 코드들이 삭제된다. 방향키 위내가 직전에 쳤던 명령어를 확인할 수 있다. history내가 작업했던 명령어들을 한번에 볼 수 있다. history 리스트 실행 방법사용할 명령어 숫자를 확인하고 !98(clear) 입력해보겠다. 잘 실행 된다. Shift + PageUp , Shift + PageDown위의 history 명령어를 사용했을때 위에 내용이 더있는데 확인하고 싶을때 사용하면 위 아래 로 이동 한다. history > testhistory 의 목록을 콘솔 창이 아닌 file로 담고 싶을때 h..
파일 찾기와 파일 정보 확인하기 주요 명령어( find , file , cmp , cat , head , tail , grep ) 파일 찾기 find 파일 또는 디렉토리를 찾는 명령어. find ./ -name Hello.java현재 디렉토리 에서 이름이 Hello 이고 확장자가 .java인 파일 find ./ -name *.java현재 디렉토리 에서 확장자가 .java인 모든 파일 find . -name *.java -size +1c현재 디렉토리에서 확장자가 .java인 파일크기가 1byte 이상인 파일 find / -name *.java현root경로 / 에서 확장자가 java인 파일을 찾는데 권한이 일반권한이라 Permission denied(권한거부) 메시지가 뜬다. 정보 확인 cat Hello.j..
nano를 이용한 파일 편집 - 파일 편집기 - nano 편집기 nano Hello.java 를 입력하면 나노 편집기로 이동하게 됩니다. 명령어 단축키 들이 보입니다. ^ = Ctrl ^E 를 누르면 EXIT 가 실행됩니다. 실행해보겠습니다.처음 실행 했을땐 Y , N 알람창 나와서 Y 눌르고 그냥 나와버렸는데 그 이후 부터는 Y,N 창이 안나오고 바로 나와지네요 이제 기본 editor 을 활용 하여 편집을 해보겠습니다. editor H 까지만 쓰고 TAP 키를 누르면 알아서 자동 입력 됩니다. editor 명령어는 내 리눅스에 기본편집기로 설정되어 있는 편집기가 실행되는 겁니다. 기본 에디터인 nano 가 실행되네요 ~ vi랑 다르게 화살표로 이동 합니다. 평상시 사용하던 것처럼 사용하세요 ^G = C..
파일 편집 및 관리 - 파일 편집기 - vi 편집기 - vi 편집기 실습하기 - pwd : 현재 폴더 확인 - cd workspace/ : workspace 폴더로 이동 - ls : 이동한 폴더의 파일목록 확인 - vi Hello.java : 편집할 파일 선택 Enter vi Hello.java 를 편집하기위해 Enter 키를 치면 이와 같은 화면이 나옵니다. 이 화면에선 아직 편집 명령 전입니다.vi 는 편집하기위해 명령어를 또 한번 입력 해야합니다. 초기 화면에서 키보드 i 를 입력합니다. i 를 입력한 후의 화면 모습입니다. i 명령어를 입력해야 이제 편집모드로 변합니다. Hello World 를 입력 해보겠습니다. 메모장에 입력하듯 입력하면 됩니다. 입력후에 윈도우로 치면 저장을 하던가 뒤로가기를..
리눅스 파일 관리 명령어 - 파일 시스템을 위한 명령어들 - 2가지의 폴더를 생성한다. - workspace : java 의 소스코드를 저장해주는 디렉토리- bin : 나만 쓰는 실행파일 들을 모아놓는 디렉토리 - pwd : 디렉토리 위치 home/계정아이디 확인- mkdir(makedirectory) : 디렉토리 생성 명령어- ls : 디렉토리 리스트 확인 - 생성한 파일을 수정하는 방법 - mv : 파일명을 변경한다. 기존의 bin 이라는 디렉토리를 aa 라는 디렉토리로 변경 - ls -l : 파일목록 상세보기 - 디렉토리 파일이 아닌 일반 파일 생성.- 생성된 파일 리스트중 어떤파일이 디렉토리 이고 텍스트 파일인지 확인하는 방법. - touch : 일반 파일을 생성할때 사용하는 명령어. test.t..
리눅스 파일 경로와 순회하기 - 파일 탐색을 위한 명령어들 - cd / : cd 를 이용하여 여러곳의 디렉토리를 접근할 수 있다. cd /home/dogveloper 나의 개인 디렉토리로 이동할때 항상 길게 작성하면 불편하기때문에 cd /home/dogveloper = cd ~ 로 대체 할 수 있다. - pwd : 현재 내가 위치한 디렉토리를 보여주는 명령어 이다. - ls : 디렉토리 목록을 보여준다. - ls -l : 디렉토리 목록을 자세히 보는 명령어 이다. 출처 [뉴렉처] 유튜브 채널https://www.youtube.com/watch?v=_PvQ5_wYhj0&list=PLq8wAnVUcTFU9zLWK-dHWrvTJ0PF8Y0Sf&index=11
리눅스 파일 시스템 구조 - 리눅스 파일 시스템 - 리눅스 파일 시스템과 윈도우 파일 시스템의 비교 - cd / : /(root) 디렉토리 로 이동 (cd = change directory)- ls : 파일 목록 명령어- ls -l: 소문자 l 은 long을 뜻한다. 파일 목록이 길게 보여지는 명령어 이다. 절대경로- 최상위 디렉토리 (/)부터 시작해서 목표 디렉토리까지 가는 경로를 전부 기술하는 방식.- 경로를 기술 할 때에는 항상 맨 앞에 최상위 디렉토리 (/)가 붙는다는 것을 명심.- 절대경로를 이용하여 b 디렉토리에서 d 디렉토리로 이동해보자. cd /a/b/c/d/ 다시 b 경로로 이동 cd /a/b/ 절대 경로는 어렵지 않습니다. 그냥 최상위부터 가고싶은 위치까지 경로를 적어주면 됩니다.실제 ..
리눅스(유닉스) 사용하기 - 쉘(Shell) 이란 Shell 셸은 운영 체제 상에서 다양한 운영 체제 기능과 서비스를 구현하는 인터페이스를 제공하는 프로그램이다. 셸은 사용자와 운영 체제의 내부(커널) 사이의 인터페이스를 감싸는 층이기 때문에 그러한 이름이 붙었다. 셸은 일반적으로 명령 줄과 그래픽 형의 두 종류로 분류된다. 명령 줄 셸은 운영 체제 상에서 명령 줄 인터페이스(CLI)를 제공하는 반면에, 그래픽 셸은 그래픽 사용자 인터페이스(GUI)를 제공한다. GLI와 GUI 기반 셸의 상대적 장점에 대해서는 논쟁이 많다. CLI 지지자는 CLI 셸 상에서 일반적인 수행(파일 이동 등)을 훨씬 빠르게 할 수 있다고 주장한다. 반대로 GUI 지지자는 GUI 셸의 상대적 사용성과 간편함을 내세운다. 일반적..
광고 클릭은 개발자(저) 에게 큰힘이 됩니다!!'ㅁ'우분투 설치(서버 버전) - Linux Desktop 데스크탑 버전은 사용하지 않는다 - 우분투 서버 버전 다운로드 https://www.ubuntu.com/ 우분투 사이트 접속 다운로드 버튼을 클릭하면 이런 메뉴가 나옵니다. 18.04LTS 버튼을 클릭하면 자동으로 다운로드가 됩니다. iso 확장자로 다운이 완료되었네요 Linux Server를 선택후 설정 버튼을 클릭합니다. 저장소 -> 비어있음 -> cd아이콘 -> 가상 광 디스크 파일 선택 순서로 진행합니다. 다운받은 파일 선택 선택된 파일이 잘 적용된지 보고 확인버튼 클릭. 더블클릭 또는 시작 버튼을 누릅니다. 설치가 완료 되면 언어 선택 화면이 나옵니다. 영어를 선택합니다.(enter) Lay..
Virtual Box 설치하기 (Windows) - 오라클 사이트 접속 - https://www.oracle.com/index.html 다이렉트 링크 : https://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html 다운로드 아이콘 클릭 마우스 스크롤을 조금 내리면 IT Infrastructure 클릭 VM VirtualBox 클릭 본인의 컴퓨터 사양에 맞춰 다운로드 다운로드된 파일 실행 실행후 next 모두 설치하기 설치후 메뉴,바탕화면 등 아이콘 표시 관련 체크박스 원하시는데로 체크하셔서 next Yes 인스톨 버튼 확인 설치 도중에 드라이브 설치관련 알람메시지가 뜨면 설치해 주시면 됩니다. 설치완료후 저는 바로 st..
오픈소스 라이선스 - OSI Open Source Definition(https://opensource.org/) - 유명한 오픈 소스 라이선스들 - Apache License 2.0 아파치 라이선스는 아파치 소프트웨어 재단에서 자체적으로 만든 소프트웨어에 대한 라이선스 규정이다. 아파치 2.0 라이선스는 누구나 해당 소프트웨어에서 파생된 프로그램을 제작할 수 있으며 저작권을 양도, 전송할 수 있는 라이선스 규정을 의미한다. 아파치 라이선스에 따르면 누구든 자유롭게 아파치 소프트웨어를 다운 받아 부분 혹은 전체를 개인적 혹은 상업적 목적으로 이용할 수 있으며 재배포시에는 원본 소스 코드 또는 수정한 소스 코드를 반드시 포함시켜야 하는 것은 아니고 아파치 라이선스, 버전 2.0을 포함시켜야 하며 아파치 소..
오픈소스 유닉스의 탄생 - UNIX의 상업화 POSIX 이식 가능 운영 체제 인터페이스(portable operating system interface)의 약자로, 서로 다른 UNIX OS의 공통 API를 정리하여 이식성이 높은 유닉스 응용 프로그램을 개발하기 위한 목적으로 IEEE가 책정한 애플리케이션 인터페이스 규격이다. POSIX의 마지막 글자 X는 유닉스 호환 운영체제에 보통 X가 붙는 것에서 유래한다. 규격의 내용은 커널로의 C언어 인터페이스인 시스템 콜 뿐 아니라, 프로세스 환경, 파일과 디렉터리, 시스템 데이터베이스(암호 파일 등), tar 압축 포맷 등 다양한 분야를 아우른다. 유닉스 계열 외에 마이크로소프트 윈도 NT는 POSIX 1.0에 준하는 POSIX 서브 시스템을 탑재하고 있으며,..
유닉스의 탄생 - Multics 프로젝트 멀틱스(Multics, Multiplexed Information and Computiong Service)는 현대의 운영 체제에 큰 영향을 미친 초기시분할 운영 체제이다. 1964년 멀틱스 프로젝트가 시작되어 2000년 10월 30일에 마지막으로 멀틱스를 쓰던 컴퓨터가 종료되었다. 흔히 유닉스의 역사와 관련하여 멀틱스가 훌륭한 운영 체제가 되지 못했었다는 인식이 있기도 했으나 이는 잘못된 통념임이 밝혀지고 있다. 실제로 멀틱스는 현대적 기능들을 다수 가지고 있었던 훌륭한 운영 체제라고 할 수 있다. 멀틱스는 처음에 GS-645 메인프레임용으로 개발되었고 나중에 하니웰 6180 시리즈 머신에서 지원되었다. - UNIX 의 탄생 BCPL B언어는 AT&T 벨 연구소..
개발자가 알아야 할 필수내용 - 학습내용 - 서비스 실행 및 관리 Linux/Unix 역사 -> Linux 서버설치 -> 파일 편집 -> 파일 관리 사용자 관리 -> 프로세스 관리 -> Bash Shell -> 설치파일 관리 -> Telnet/SSH/FTP -> JAVA JDK 설치 -> Tomcat/MySQL 출처 [뉴렉처] 유튜브 채널https://www.youtube.com/watch?v=Xd7IVMYnGUU&list=PLq8wAnVUcTFU9zLWK-dHWrvTJ0PF8Y0Sf&index=3
어떤 리눅스를 배워야 하는가? - 리눅스 계보 - 미래지향적 내가 배움에 있어 미래에 사용률이 높아지거나 가치가 있는 프로그램 - 점유율점유일이 높다는 건 사용하는 사람이 많다는 것이다. 사용하는 사람이 많다는 것은 어떤 문제(오류)가 발생했을 때 커뮤니티 활동으로 인해 문제 해결에 큰 도움을 받을 수 있고 Tip이나 개발 기법 또한 도움받을 수 있다. - 사용의 편의성프로그래밍 언어도 직관적으로 사람이 쉽게 읽을 수 있도록 진화한다. 그렇기 때문에 사용의 편의성 또한 중요한 선택의 하나이다. - 웹 서버로 운영되는 리눅스별 사용율 - 리눅스 사용자들이 등록한 사용대수 가장 많이 사용하는 Ubuntu를 배우는 게 위에 작성한 3가지에 부합하기 때문에 Ubuntu를 배우겠습니다. - 우분투 버전 리눅스 커..
왜 우리는 리눅스(Linux)를 배워야 하는가 - 프로그래머 ( 또는 개발자 ) 로써 리눅스를 배워야 하는가? 아직 리눅스를 경험해 보지 못하였기 때문에 꼭 배워야 하나? 라는 궁금증을 항상 가지고 있었습니다. 그렇지만 좀더 개발자 역량의 업그래이드(?) 를 하기 위해 알고 있는 것과 모르는 것은 차이가 크게 난다 생각합니다. 그러하여 리눅스는 배울 가치가 있어 보이고 경력이 높아질수록 필요할 것 개인적으론 배우는 게 좋다고 생각이 드네요~ - 현재 가장 많이 사용되는 운영체제들 우리는 어떤 OS를 사용하고 있나. - Unix 유닉스(Unix)는 대부분의 현대적 컴퓨터 운영 체제의 원형이 된 OS이다. 현대의 윈도우 계열이 아닌 리눅스 , 안드로이드, macOS , IOS 등의 많은 운영체제가 유닉스를 ..
Spring Framework 애플리케이션 프로젝트 Java = 1.8MySql = 8.0.12Spring Framework = 3.2.3.RELEASE유튜브 강좌 : SKplanet Tacademyhttps://www.youtube.com/watch?v=j5WlADp5f_o&list=PL9mhQYIlKEhfYqQ-UkO2pe2suSx9IoFT2&index=1 유튜브 강의를 보면서 정리한 후 다시 블로그에 올리면서 또 강의 듣고 정리하니 시간이 오래걸리지만한번더 정리 하는 마음으로 작성 하였습니다. ㅎㅎ 거의 강의를 정리하는 수준이라 가독성도 떨어지고 블로그는 처음 해봐서 .. 제 쓰레기같은 필력을 또한번 느끼게 해주었습니다. ㅋㅋ 총 28개 강의로 구성되어 있지만 자바에서 기본 애플리케이션 작업과 웹애..
Spring Framework MyBatis(마이바티스) 애플리케이션 작성(2) 학습 목표Mapper 인터페이스 개념Mapper 인터페이스 작성 및 설정여러 개의 Mapper 인터페이스 설정 1.Mapper 인터페이스 개념 1-1 MyBatis3.0의 Mapper 인터페이스 Mapper 인터페이스는 Mapping 파일에 기재된 SQL을 호출하기 위한 인터페이스 - Mapper 인터페이스는 SQL을 호출하는 프로그램을 Type Safe 하게 기술하기 위해 MyBatis3.x 부터 등장 - Mapping 파일에 있는 SQL을 자바 인터페이스를 통해 호출할 수 있도록 해줌. 1-2 Mapper 인터페이스를 사용하지 않았을 때 - Mapper 인터페이스를 사용하지 않으면, SQL을 호출하는 프로그램은 SqlSe..
Spring Framework MyBatis(마이바티스) 애플리케이션 작성(1)학습 목표** sqlSession 을 이용한 sql 쿼리 처리 **MyBatis 및 MyBatis-Spring 설치MyBatis 및 MyBatis-Spring 설정DAO 클래스 작성 및 테스트1.MyBatis 및 MyBatis-Spring 설치1-1 MyBatis 라이브러리 검색 및 설치maven repository 경로 https://mvnrepository.com/artifact/org.mybatis/mybatis/3.4.6가장 많이 사용하는 버전으로 pick1234567 org.mybatis mybatis 3.4.6 Colored by Color Scriptercs 1-1 MyBatis 라이브러리 검색 및 설치maven ..
Spring Framework MyBatis(마이바티스) 개요 학습 목표 MyBatis 개요와 특징MyBatis와 MyBatis-Spring의 주요 컴퓨넌트 1.MyBatis 개요와 특징 1-1 MyBatis의 개요 MyBatis(http://www.mybatis.org/mybatis-3/ko/index.html)는 자바 오브젝트와 SQL문 사이의 자동 Mapping 기능을 지원하는 ORM 프레임워크 Sql Mapper 이다. - MyBatis는 SQL을 별도의 파일로 분리해서 관리하게 해주며, 객체-SQL 사이의 파라미터 Mapping 작업을 자동으로 해주기 때문에 인기를 얻고 있는 기술이다. - MyBatis는 Hibernate나 JPA(Java Persistence Api) 처럼 새로운 DB프로그래..
Spring Framework AOP애플리케이션 작성(2) 학습 목표 Aspect 클래스 선언 및 설정Aspect 클래스 구현Aspect 클래스 테스트 1.Aspect 클래스 선언 및 설정 1-1 Spring AOP의 구현방식 XML 기반의 POJO 클래스를 이용한 AOP 구현- 부가기능을 제공하는 Advice 클래스를 작성한다.- XML 설정 파일에 를 이용해서 애스펙트를 설정한다.(즉, 어드바이스와 포인트컷을 설정함) @Aspect 어노테이션을 이용한 AOP 구현- @Aspect 어노테이션을 이용해서 부가기능을 제공하는 Aspect 클래스를 작성한다. 이때 Aspect 클래스는 어드바이스를 구현하는 메서드와 포인트컷을 포함한다. - XML 설정 파일에 를 설정한다. 1-2 @Aspect 어노테이션 -..
Spring Framework AOP애플리케이션 작성(1) 학습 목표 Advice 클래스 작성AOP 설정 및 테스트PointCut 표현식에 대한 이해 1.Advice 클래스 작성 1-1 Spring AOP의 구현방식 XML 기반의 POJO 클래스를 이용한 AOP 구현- 부가기능을 제공하는 Advice 클래스를 작성한다.- XML 설정 파일에 를 이용해서 애스펙트를 설정한다.(즉, 어드바이스와 포인트컷을 설정함) @Aspect 어노테이션을 이용한 AOP 구현- @Aspect 어노테이션을 이용해서 부가기능을 제공하는 Aspect 클래스를 작성한다. 이때 Aspect 클래스는 어드바이스를 구현하는 메서드와 포인트컷을 포함한다. - XML 설정 파일에 를 설정한다. 1-2 Advice의 종류 - Around 어..
Spring Framework AOP 개요 학습 목표 AOP의 개요와 용어AOP의 특징 및 구현방식AspectJ 와 SpringAOP 설치 1.AOP의 개요와 용어 1-1 핵심기능과 부가기능 - 업무(Biz) 로직을 포함하는 기능을 핵심 기능(Core Concerns) - 핵심기능을 도와주는 부가적인 기능(로깅,보안 등)을 부가기능(Cross-cutting Concerns) 이라고 부른다. - 객체지향의 기본 원칙을 적용하여도 핵심기능에서 부가기능을 분리해서 모듈화하는 것은 매우 어렵다. 1-2 AOP(Aspect Oriented Programming)의 개요 AOP는 애플리케이션에서의 관심사의 분리(기능의 분리) 즉, 핵심적인 기능에서 부가적인 기능을 분리한다. 분리한 부가기능을 애스펙트(Aspect)..
광고 클릭은 개발자(저) 에게 큰힘이 됩니다!!'ㅁ' MySQL 환경변수 설정(Windows10) MySQL 을 설치 완료 하셨으면 환경변수 설정을 합니다. 필자는 Workbeanch 를 사용하기때문에 안했지만 환경변수를 설정하면 컴퓨터 어떤 경로에서라도 접근할 수 있어 cmd창으로도 바로 접근가능합니다. 이런 방법이 있으니 설정방법 ㄱㄱ MySQL 이 설치된 경로를 찾습니다 bin폴더까지 접근~ 아마존 Web Service 중에 EC2 가상컴퓨터에 설치한거라 모두 영어로 되어있네요.. 영알못..주륵 내컴퓨터를 우클릭 합니다. 그리고 속성을 클릭합니다. 고급 시스템 설정 클릭. 환경변수 클릭 path 를 선택후 편집을 누릅니다. 새로운 경로를 지정 할 수있도록 New~클릭 처음에 설치된 경로 를 복사 붙..
광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' MySQL 8.0.15 다운로드 및 설치방법(Windows 10) https://www.mysql.com/ MySQL 홈페이지 주소입니다. https://dev.mysql.com/downloads/mysql/ 다운로드 페이지로 바로 이동하는 경로입니다. (귀찮으신분은 바로 이동~ ㅋ) 사이트 접속화면 부터해서 최대한 꼼꼼히 캡쳐했는데.. 스왑의 압박이..ㅎㄷㄷ MySQL 메인페이지 MySQL 페이지에서 스크롤을 내리다보면 Community edition 문구가 보일거에요 물론 무료입니다.ㅋ 역시 스크롤을 내리다보면 밑에 이미지와 같은 화면이 보입니다.. 스크롤을 내리면 다운로드 영역이 나옵니다. 324.3M 용량의 MSI Installer 를 받습니..