반응형

1. 시험환경

    ˙ 윈도우 10

    ˙ 파이썬 3.8

    ˙MS Office Pro 2019

 

2. 목적

    ˙ pandas 라이브러리의 read_excel()를 이용하여 xlsx(엑셀) 파일 load 하는 방법을 학습한다.

 

3. 적용

    ① pandas로 읽어 올 엑셀 파일(xlsx)을 준비한다.

        - 첫번째 행(row) : title

        - 두번째 행(row) 이후 : 데이터

엑셀 입력 파일

 

    ② read_excel() 함수를 이용하여 엑셀파일을 load 한다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import pandas as pd
 
if __name__ == '__main__':
    df = pd.read_excel('./input/sample.xlsx', engine='openpyxl', sheet_name='Sheet1')
    print(df)
 
    col1List = df.iloc[:,0].values.tolist()
    col2List = df.iloc[:,1].values.tolist()
    col3List = df.iloc[:,2].values.tolist()
    col4List = df.iloc[:,3].values.tolist()
    print(col1List)
    print(col2List)
    print(col3List)
    print(col4List)
cs

 

4. 결과

    ˙ df과 df을 컬럼 단위로 추출한 결과를 확인한다.

엑셀 파일 출력

 

※ 내용이 도움 되셨다면 광고 클릭 한번 부탁드립니다 ※

반응형
반응형

1. 시험환경

    ˙ 윈도우

    ˙ Spring Boot

    ˙ Gradle

 

2. 목적

    ˙ Spring Boot 개발환경에서 MySQL 의존성 라이브러리를 추가하고, Connection을 설정한다.

    ˙ Spring Boot 개발환경에서 MariaDB 의존성 라이브러리를 추가하고, Connection을 설정한다.

 

3. 적용

    [MySQL]

    ① MySQL 의존성 라이브러리 추가

        - build.gradle

1
implementation 'mysql:mysql-connector-java'
cs

 

    ② MySQL Connection  설정

        - application.properties

1
2
3
4
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:[포트]/[DB이름]?characterEncoding=UTF-8
spring.datasource.username=[계정]
spring.datasource.password=[비밀번호]
cs

 

 

    [MariaDB]

    ① MariaDB 의존성 라이브러리 추가

        - build.gradle

1
implementation group: 'org.mariadb.jdbc', name: 'mariadb-java-client'
cs

 

    ② MariaDB Connection  설정

        - application.properties

1
2
3
4
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
spring.datasource.url=jdbc:mariadb://localhost:[포트]/[DB이름]?characterEncoding=UTF-8
spring.datasource.username=[계정]
spring.datasource.password=[비밀번호]
cs

 

반응형
반응형

1. 시험환경

    ˙ 윈도우 10

 

2. 목적

    ˙ diskpart 유틸리티를 이용하여 파티션을 삭제하는 방법을 학습한다.

    ˙ 윈도우 "디스크 관리" 서비스를 통해서 병합할 수 없는 파티션 병합법을 학습한다.

 

3. 적용

    ① 윈도우 "디스크 관리"를 실행하면 D드라이브가 2개의 파티션으로 나누어져 있다.

        - 디스크 병합을 시도하면, "복구 파티션(할당되지 않음)"은 주 파티션과 병합할 수 없다는 메시지가 나타난다.

복구 파티션(할당되지 않음)

 

    ② 파티션을 삭제하기 위해 cmd 창에서 "diskpart" 명령어를 실행한다.

diskpart

 

    ③ 명령어를 차례대로 실행하여 결국 삭제하기 위한 파티션을 선택한다.

        - list disk : disk 목록 출력

        - select disk [디스크 No] : disk 선택

        - list partition : 선택한 disk의 파티션 목록 출력

        - select partition [파티션 No] : 파티션 선택

삭제 대상 파티션 선택

 

    ④ 선택한 파티션을 삭제한다.

        - delete partition override

선택 파티션 삭제

 

4. 결과

    ˙ "디스크 관리" 서비스에서 파티션이 합쳐진 것을 확인할 수 있다.

 

 

※ 내용이 도움 되셨다면 광고 클릭 한번 부탁드립니다 ※

반응형
반응형

1. 시험환경

    ˙ 윈도우 10

    ˙ STS(Spring Tool Suite) 4

    ˙ Tomcat 9.0.21

 

2. 목적

    ˙ Tomcat 설치하는 방법을 학습한다.

    ˙ STS에서 Tomcat 적용하는 방법을 학습한다.

 

3. 적용

    ① Tomcat 사이트에서 운영체제와 플랫폼에 적합한 버전을 다운로드 한다.

        - URL : https://tomcat.apache.org/

 

Apache Tomcat® - Apache Tomcat 9 Software Downloads

Welcome to the Apache Tomcat® 9.x software download page. This page provides download links for obtaining the latest version of Tomcat 9.0.x software, as well as links to the archives of older releases. Unsure which version you need? Specification version

tomcat.apache.org

 

Tomcat 파일 다운

 

    ② 다운 받은 파일을 원하는 위치에서 압축 해제한다.

        - 별도의 설치과정없이 압축해제만으로 설치는 끝난다.

Tomcat 다운 파일 해제


    ③ 설치한 Tomcat을 STS에 적용하기 위해 "Windows" → "Preferences" 메뉴를 클릭한다.

STS 환경 설정 메뉴

 

    ④ "Server" → "Runtime Environment" 메뉴에서 "Add.." 버튼을 클릭한다.

Server Runtime Environment 창

 

    ⑤ Tomcat 위치를 설정하고, "Finish" 버튼을 클릭한다.

        - Tomcat installation directory: 다운받은 Tomcat을 설치(압축해제)한 폴더를 설정한다.

        - JRE: Tomcat 실행에 필요한 JDK를 선택한다.한다.

Tomcat 폴더 위치 지정

 

    ⑥ 다음 화면에서 설치한 Tomcat 버전을 선택한다.

Tomcat 버전 선택

 

    ⑦ 추가한 Apache Tomcat 서버를 확인하고, "Apply and Close" 버튼을 클릭한다.

Tomcat 설정 적용

 

4. 결과

    ˙ 프로젝트를 실행하여 설정한 Tomcat 서버가 동작하는 것을 확인한다.

프로젝트 실행

 

Tomcat 실행 확인

 

※ 내용이 도움 되셨다면 광고 클릭 한번 부탁드립니다 ※

반응형
반응형

1. 시험환경

    ˙ putty

    ˙ mobaxterm

 

2. 목적

    ˙ SSH Agent Key Forwarding이 무엇인지 알아보자.

    ˙ putty와 mobaxterm에서 SSH Agent Key Forwarding 하는 방법을 알아보자.

 

3. 적용

    ① SSH Agent Key Forwarding이 필요한 이유

        - 예를 들어 “원격 서버”에 연결한 상태에서 Github에 저장하고 있는 일부 코드를 git pull 동작을 하기 위해서는 Github

        에 SSH 인증이 필요하다. 하지만, 보통의 경우 private SSH Key가 접속한 “원격 서버”에 있는 것이 아니라 “자신의 Local

        PC”에 존재한다. 이러한 상황에서는 SSH Agent Forwarding을 해야만 “원격 서버”를 통해 Github SSH 인증이 가능하다.

 

    ② putty에서 SSH Key Forwarding 설정

        - 참고: https://www.howtogeek.com/devops/what-is-ssh-agent-forwarding-and-how-do-you-use-it/

 

    ③ mobaxterm에서 SSH Key Forwarding 설정

        - 참고: https://docs.gcc.rug.nl/hyperchicken/ssh-agent-forwarding-mobaxterm/

 

 

※ 내용이 도움 되셨다면 광고 클릭 한번 부탁드립니다 ※

반응형
반응형

1. 시험환경

    ˙ Javascript

 

2. 목적

    ˙ Javascript 이벤트 처리 코드를 참고하자.

 

3. 적용

    ① 변경 이벤트 처리 코드

        - <select>선태한 option value를 selected 변수에 저장

1
2
3
$("#select-menu").change(function(){
    var selected =  $(this).val();
})
cs

 

    ② 클릭 이벤트 처리 코드

1
2
$('#btn-example').click(function() {
});
cs

 

    ③ 활성화 및 비활성화 처리 코드

1
2
$("#text-example").prop("disabled"true);
$("#text-example").prop("disabled"false);
cs

 

    ④ <select>태그 selected option 값 가져오기

1
var selOption = $("select#sel-example option").filter(":selected").val();
cs

 

    ⑤ Text 값 변경 처리 코드

1
$('#txt-example').val("sample text");
cs

 

    ⑥ checkbox 변경(체크, 해제) 이벤트 발생시 처리 코드

        - 변경 이벤트가 "체크"인 경우 처리 코드

1
2
3
4
5
$('input[name=chkbox-example]').change(function(){
    if ($(this).prop("checked"))
    {
    }
});
cs

 

 

※ 내용이 도움 되셨다면 광고 클릭 한번 부탁드립니다 ※

반응형
반응형

1. 시험환경

    ˙ Spring Boot

    ˙ gradle

    ˙ H2

 

2. 목적

    ˙ H2 데이터베이스 의존성 라이브러리를 추가하고, 연결 설정한다.

    ˙ Memory 상에 올라간 H2 데이터베이스에 접속하는 방법을 알아보자.

 

3. 적용

    ① H2 의존성 라이브러리를 추가한다.

        - build.gradle : runtimeOnly 'com.h2database:h2'

1
runtimeOnly 'com.h2database:h2'
cs

 

 

    ② application.yml(또는 application.properties) 파일에 H2와 JPA 쿼리문 관련 설정을 한다.

        - spring.h2.console.enabled : h2 DB 스키마에 접근할 수 있는 console 기능 활성화

        - spring.jpa.show-sql : Terminal 화면에 SQL 쿼리문 표시

        - spring.jpa.properties.hibernate.format_sql : Terminal 화면에 표시되는 SQL을 pretty하게 표현

        - spring.jpa.properties.hibernate.use_sql_comments : SQL 주석 표시

1
2
3
4
5
6
7
8
9
10
spring:
  h2:
    console:
      enabled: true
  jpa:
    show-sql: true
    properties:
      hibernate:
        format_sql: true
        use_sql_comments: true
cs

 

    ③ 웹 서버를 실행시 생성되는 DB 스키마 이름을 복사한다.

        - DB 접속 주소 : /h2-console

        - In-Memory DB 생성 스키마 이름은 웹 서버 실행시 마다 변경되는 것에 주의한다.

 

    ④ H2 데이터베이스에 저복한다.

        - DB 콘솔 접속 URL : http://localhost:8080/h2-console

        - JDBC URL : 생성된 DB 스키마

 

4. 결과

    ˙ 접속 성공하여 SQL 문을 사용할 수 있다.

 

 

※ 내용이 도움 되셨다면 광고 클릭 한번 부탁드립니다 ※

반응형
반응형

1. 시험환경

    ˙ Java

    ˙ Spring Boot

    ˙ IntelliJ

 

2. 목적

    ˙ Java Enum Value로 선언된 각각의 항목에 값이 아닌 범위를 선언하는 방법을 학습한다.

    ˙ Enum Value 범위의 유효성을 검증하는 방법을 학습한다.

 

3. 적용

    ① Java Enum Type을 선언한다.

        - 각 항목에 값이 아닌 범위를 체크하는 코드를 람다식으로 정의한다.

        - 람다식으로 만든 객체에 접근하기 위해서 함수형 인터페이스를 선언한다.
        - 함수형 인터페이스 변수를 매개변수로 갖는 Enum 생성자를 정의한다. (Lombok 사용시 @AllArgsConstructor로 대체)

        -  validAges() : 정의된 Enum Type과 age가 유효한지 확인하는 코드를 정의하였다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import java.util.function.Function;
 
public enum AgeType {
    YOUTH(age -> age >= 0 && age < 10),
    STUDENT(age -> age >= 10 && age < 20),
    YOUNG(age -> age > 20 && age <= 30),
    OLD(age -> age > 30 && age <= 40);
 
    private final Function<Integer, Boolean> checkFunc;
    AgeType(Function<Integer, Boolean> checkFunc) {
        this.checkFunc = checkFunc;
    }
 
    public void validAges(Integer _age) {
        if (checkFunc.apply(_age) == false) {
            System.out.println("age is not valid");
        }
        else {
            System.out.println("age is valid");
        }
    }
}
cs

 

    ② test 변수를 Enum Type으로 선언 후, "YOUTH"를 할당하고, 유효성 검사 코드를 작성한다.

        - "YOUTH"로 정의된 변수(test)의 범위에 4가 포함되는가 확인
        - "YOUTH"로 정의된 변수(test)의 범위에 14가 포함되는가 확인

1
2
3
4
5
6
7
8
9
public class Start {
    public static void main(String[]args) throws Exception {
        System.out.println("Hello World");
 
        AgeType test = AgeType.YOUTH;
        test.validAges(4);
        test.validAges(14);
    }
}
cs

 

4. 결과

    ˙ 변수에 정의된 Enum Type(YOUTH)과 값(4 또는 14)이 유효한가에 대한 결과를 확인한다.

        - "4"는 YOUTH 범위에 포함되므로, true를 return 한다.

        - "14"는 YOUTH 범위에 포함되지 않으므로, false를 return 한다.

 

 

※ 내용이 도움 되셨다면 광고 클릭 한번 부탁드립니다 ※

반응형

+ Recent posts