일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- myBatis
- 마이바티스
- Framework
- AOP
- spring aop
- JDBC TEMPLATE
- POJO
- Dependency Injection
- java
- Spring JDBC
- java spring
- unix
- @AspectJ
- Ubunt
- SpringJDBC
- STS
- @test
- 컨테이너
- Spring Boot
- pointcut
- spring framework
- 프로퍼티
- JdbcTemplate
- 리눅스
- spring
- @JUnit
- Linux
- XML
- Di
- @Spring-Test
- Today
- Total
목록전체 글 (307)
개키우는개발자 : )

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' git hub에 올라가있는 프로젝트를 clone 하기 저는 git-clone 폴더를 바탕화면에 만들었습니다. Clone with HTTPS를 사용하여 내려받으면 git init 처리를 생략 할 수 있음. git-clone 폴더에 이동하여 현재 폴더 안에 풀어준다 . < dot 붙여야함. git clone https://github.com/shimkijun/Git-First.git . ls 로 파일목록 확인 git log 를 치면 이전에 로그정보도 모두 확인 가능 Visual Studio Code 에서 git-clone 폴더 를 열어 README.md 파일을 수정하여 작성한다. git add . git commit -m "클론서버에서 수정" git p..

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' Git hub 사이트에 프로젝트 저장소 만들기 GitHub 로그인 후 + 클릭 후 New Repository 선택 프로젝트 이름 작성, 프로젝트 설명, Public 은 공개 이며 Private는 비공개 로 만들 수 도 있다. README 를 체크하면 README.md파일이 생성되고 Add .gitignore , license 옵션도 초기에 설정할 수 있다. .gitignore은 매우 중요한 파일 중 하나인데 Git Hub에 올리면 안돼는 파일들을 작성하면 Git Hub에 올릴 수 없다. 녹색 버튼을 눌러 생성한다. 생성하고 나면 이전 글에서 add , commit 방법과 동일한 설명을 한다. 차이점은 remote 라는 옵션이 있는데 remote 라인..

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' git add - 내가 변경한 파일 중 올리길 원하는 것만 선택 git commit -m "설명" - 선택한 파일들을 하나의 버전으로 만들고 설명 적어주기 | commit이란? 1. 변경 사항의 모음(x) 하나의 최종 코드 모음(o) 2. 다만 기존 커밋과 비교해서 변경된 파일이 아니면 '변경되지 않았다'고만 저장해서 용량이 무겁지 않음. 3. 바로 이전 커밋만 보면 됩니다. Visual Studio Code 실행한 초기화 한 폴더를 열어줍니다. https://dog-developers.tistory.com/214 git init 광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 깃 초기화 1. 원하는 폴더를 버전관리 하고싶을때 git in..

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 깃 초기화 1. 원하는 폴더를 버전관리 하고싶을때 git init 사용 2. git init 을 하면 .git 숨겨진 폴더 생성 3. 로컬 저장소에 내가 만든 버전 정보, 원격 저장소 주소 등이 저장 4. 원격 저장소에서 내 컴퓨터로 코드를 받아오면 로컬 저장소가 자동으로 생성 5. 한 폴더애 하나의 로컬 저장소만 유지 Bash를 사용할 경우 기본 명령어를 알아야 합니다. cd (change directory) : 폴더간의 이동 ls (list segments) : 폴더의 파일목록 ls -al : 숨겨진 폴더 모두보기 pwd를 치면 본인의 현재경로가 보입니다. 저는 윈도우 바탕화면에 git-first라는 폴더를 생성하였고 해당 폴더로 이동하였습니..

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' 필수 github 가입 https://github.com/ git 설치 https://git-scm.com/downloads Git - Downloads Downloads Mac OS X Windows Linux/Unix Older releases are available and the Git source repository is on GitHub. GUI Clients Git comes with built-in GUI tools (git-gui, gitk), but there are several third-party tools for users looking for a platform-specific git-scm.com 자신의 버전에 맞게 다운..
광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 문제 N개의 자연수가 입력되면 각 자연수의 자릿수의 합을 구하고, 그 합이 최대인 자연수를 출력 하는 프로그램을 작성하세요. 각 자연수의 자릿수의 합을 구하는 함수를 int digit_sum(int x)를 꼭 작성해서 프로그래밍 하세요. | 입력설명 자연수의 개수 N(3 8 max = 13; res = 15232 16 > 13 max = 16; res = 97 public class Test10 { static int digit_sum(int x){ int sum = 0, tmp; while(x>0){ tmp=x%10; sum=sum+tmp; x=x/10; } return sum; } public static void main(String[] a..

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 문제 자연수 N이 입력되면 1부터 N까지의 각 숫자들의 약수의 개수를 출력하는 프로그램을 작성하 세요. 만약 N이 8이 입력된다면 1(1개), 2(2개), 3(2개), 4(3개), 5(2개), 6(4개), 7(2개), 8(4 개) 와 같이 각 숫자의 약수의 개수가 구해집니다. 출력은 다음과 같이 1부터 차례대로 약수의 개수만 출력하면 됩니다. 1 2 2 3 2 4 2 4 와 같이 출력한다. | 입력설명 자연수 N(5
광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 문제 괄호가 입력되면 올바른 괄호이면 “YES", 올바르지 않으면 ”NO"를 출력합니다. (())() 이것은 괄호의 쌍이 올바르게 위치하는 거지만, (()()))은 올바른 괄호가 아니다. | 입력설명 괄호 문자열이 입력됩니다. 문자열의 최대 길이는 30이다 | 출력설명 YES, NO를 출력한다. | 입력 예제 (()(()))(() | 출력 예제 NO | 풀이 '(' = +1 , ')' = -1 이런식으로 쌍이 맞으면 결국엔 (())() = 0 의 값이 나오며 (()())) = -1 즉 0보다 작은 값이 나올 경우 올바른 쌍이 아니다. import java.util.Scanner; public class Test8 { public static vo..

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 문제 현수의 컴퓨터가 바이러스에 걸려 영어단어가 뛰어쓰기와 대소문자가 혼합되어 표현된다. 예를 들면 아름다운 이란 뜻을 가지고 있는 beautiful 단어가 “bE au T I fu L” 과 같이 컴퓨터에 표시되고 있습니다. 위와 같이 에러로 표시되는 영어단어를 원래의 표현대로 공백을 제거하고 소문자화 시켜 출력하는 프로그램을 작성하세요. | 입력설명 바이러스에 걸린 영어단어가 주어진다. 바이러스에 걸린 영어단어의 길이(공백포함)는 100을 넘지 않는다. 문자사이의 공백은 연속적으로 존재할 수 있습니다. 입력은 알파벳과 공 백만 주어집니다. | 출력설명 소문자로 된 정상적인 영어단어를 출력한다. | 입력 예제 bE au T I fu L | 출력 ..

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 문제 문자와 숫자가 섞여있는 문자열이 주어지면 그 중 숫자만 추출하여 그 순서대로 자연수를 만 듭니다. 만들어진 자연수와 그 자연수의 약수 개수를 출력합니다. 만약 “t0e0a1c2her”에서 숫자만 추출하면 0, 0, 1, 2이고 이것을 자연수를 만들면 12가 됩니 다. 즉 첫 자리 0은 자연수화 할 때 무시합니다. 출력은 12를 출력하고, 다음 줄에 12의 약 수의 개수를 출력하면 됩니다. 추출하여 만들어지는 자연수는 100,000,000을 넘지 않습니다. | 입력설명 숫자가 썩인 문자열이 주어집니다. 문자열의 길이는 50을 넘지 않습니다. | 출력설명 자연수를 출력하고, 두 번째 줄에 약수의 개수를 출력합니다. | 입력 예제 g0en2Ts8..

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 문제 주민등록증의 번호가 주어지면 주민등록증 주인의 나이와 성별을 판단하여 출력하는 프로그램 을 작성하세요. 주민등록증의 번호는 -를 기준으로 앞자리와 뒷자리로 구분된다. 뒷자리의 첫 번째 수가 1이면 1900년대생 남자이고, 2이면 1900년대생 여자, 3이면 2000년대 생 남자, 4이면 2000년대생 여자이다. 올해는 2020년입니다. 해당 주민등록증 주인의 나이와 성별을 출력하세요. | 입력설명1 주민등록증 번호가 입력됩니다. | 출력설명1 나이와 성별을 공백을 구분으로 출력하세요. 성별은 남자는 M(man), 여자는 W(Woman)로 출력한다. | 입력 예제1 780316-2376152 | 출력 예제1 43 W | 입력 예제2 06110..

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 문제 N(2

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 문제 자연수 N이 주어지면 자연수 N의 진약수의 합을 수식과 함께 출력하는 프로그램을 작성하세요. | 입력설명 자연수 N을 입력합니다.(3

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 문제 자연수 A, B가 주어지면 A부터 B까지의 합을 수식과 함께 출력하세요. | 입력설명 자연수 A, B를 차례대로 입력합니다. (1

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 문제 자연수 N이 입력되면 1부터 N까지의 수 중 M의 배수합을 출력하는 프로그램을 작성하세요 | 입력설명 자연수 N과 M을 차례대로 입력합니다.(3
광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 타입 스크립트 인덱스 타입 타입을 동적으로 사용할 때 사용하는 방법중 하나인 index type Props 인터페이스에 string 타입의 key 의 타입은 string 입니다. index type은 [ key : string | number ] 둘중 하나의 타입만 가능하며 만약 index type이 아닌 name 처럼 고정된 데이터를 적용 할 경우 name은 반드시 필요하고 key type의 key는 문자,숫자 가 사용 가능하며 데이터는 string type인 값만 저장 가능 합니다. 할당된 index type 은 접근방식이 동적 인것을 확인 할 수 있습니다. p.abc는 실제 없는 key 지만 접근하여도 에러는 발생하지 않습니다. keyof ..
광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 타입 스크립트 타입 별칭 타입에 직접 이름을 부여할 수 있습니다. intersection type으로 User와 Action을 UserAction이라는 별칭을 type키워드를 사용하여 만들 수 있습니다. interface User { name : string; } interface Action{ do() : void; } type UserAction = User & Action; function createUserAction() : UserAction{ return { do() {}, name : '' } } union type 도 별칭으로 부여 가능하며 generic type 또한 별칭이 가능하다 type StringOrNumber = stri..

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 타입 스크립트 인터섹션 & 유니온 | Intersection type 여러타입을 합쳐서 사용하는 타입 User,Action 타입을 합쳐서 반환하는 함수가 있을 때 두개의 타입을 & 통해 타입을 선언 할 수 있습니다. interface User{ name : string; } interface Action{ do() : void; } function createUserAction(u: User, a: Action) : User & Action{ return {...u,...a}; } const u = createUserAction({ name : 'dog' }, {do(){} }); u.do(); u.name; | Union type 변수 또는 함..
광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 타입 스크립트 제네릭 함수에 generic 타입을 적용 가능 createPromise 함수에 어떠한 타입이 올 지 모를 때 를 사용하여 타입을 지정합니다. 타입의 이름은 자유롭게 작성 가능하며 관례상 대문자로 작성합니다. function createPromise(x: T, timeout:number){ return new Promise((resolve: (v : T) => void ,reject)=>{ setTimeout(() =>{ resolve(x); },timeout) }) } createPromise("eh",100) .then(v=> console.log(v)) createPromise(1,100) .then(v=> console.log..
광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 타입 스크립트 클래스 interface의 상속 및 abstract(추상화) class Person 은 이름이 있고 말을 할 수 있습니다. Programmer는 코드를 작성할 수 있습니다. 클래스에는 상속을 받을 수 있는데 class에서 class를 상속받을 땐 extends를 사용하고 interface를 상속받을 땐 implements 키워드를 사용하여 상속받습니다. interface의 키워드는 다중 상속이 가능합니다. 하지만 클랜은 하나의 클래스만 상속이 가능합니다. KoreanProgrammer는 Person, Programmer 인터페이스를 상속받아 interface에 선언된 property와 method를 모두 구현하고 추가로 구현된 ki..
광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 타입 스크립트 클래스 es6의 추가된 class를 new 연산자를 통해 객체로 인스터스화 가능하다. class Cart{ constructor(user){ this.user = user; this.store = {}; } put(id,product){ this.store[id] = product; } get(id){ return this.store[id]; } } TypeScript의 작성방식 User, Product 인스턴스를 선언합니다. 그리고 Cart class 블록 안에 user, store 속성을 정의할 수 있습니다. 그리고 각 파라미터 값에 타입을 작성합니다. interface User{ name : string; } interface..

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 타입 스크립트 enum 타입 enum 타입의 등급 데이터 를 선언한다. 그리고 switch 문을 사용하여 등급별 할인률을 반환하게 되는데 WELCOME, GREEN, GOLD 의 값이 무엇인지 알 수 없다. 그래서 콘솔에 값이 어떻게 찍히는지 컴파일 후 js파일을 실행해본다. enum StarbuksGrade{ WELCOME, GREEN, GOLD } function getDiscount(v: StarbuksGrade) : number{ switch(v){ case StarbuksGrade.WELCOME: return 0; case StarbuksGrade.GREEN: return 5; case StarbuksGrade.GOLD: return 1..

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 타입 스크립트 함수형 타입 타입스크립트에서 함수의 파라미터 값에는 타입을 지정해 주어야 합니다. 더하기 함수인 add의 x , y는 숫자이므로 타입스크립트에서 result는 number 타입으로 추론을 합니다. function add (x: number, y: number){ return x + y; } const result = add(1,2); 아니면 반환되는 값을 함수에 타입을 지정할 수 있습니다. function add (x: number, y: number): number{ return x + y; } const result = add(1,2); optional 처리는 값이 있을 수도 있고 없을 수도 있다. 속성 뒤에 ? 를 붙여주면 된..

광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 타입 스크립트 인터페이스 인터페이스는 추상화의 작업이라고 생각한다. 추상화란? 컴퓨터 과학에서 추상화(abstraction)는 복잡한 자료, 모듈, 시스템 등으로부터 핵심적인 개념 또는 기능을 간추려 내는 것을 말한다. interface 에는 어떠한 행위(기능)를 하는 메서드를 선언하는 영역이다. 그중 interface TV는 화면을 켜고, 끄는 기능의 선언 부만 작성을 한다. 그리고 그 선언한 메서드의 return 타입 또한 지정해야 한다. 선언한 interface TV를 myTv의 타입으로 선언하고 myTv 객체에는 turnOn , turnOff 메서드를 구현해야 합니다. turnOn 같은 경우는 return type 이 boolean이기 때..
광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ' | 타입 스크립트 기본 타입 최신 ECMAScript 표준은 다음과 같은 7개의 자료형을 정의한다. let numValue : number; let stringValue : string; let boolenValue : boolean; let undefinedValue : undefined; let nullValue : null; let objValue : object; let symbolValue : symbol; let anyValue : any; 기본 자료형(Primitive) 타입 Number String Boolean Undefined Null Symbol (ECMAScript 6에 추가됨) 객체형 타입 object가 있습니다. 타입을 선언..