2024.05.28(화) 슈퍼코딩 부트캠프 백엔드/Spring 네이버 웹툰 인턴 Day 2 일일보고

usnim·2024년 5월 28일
0

super_coding

목록 보기
22/35

📋 TO-DO LIST

스노우 인턴 활동 [o]

5주 2일차 강의 [o]

네이버 웹툰 사수 도움 요청 업무 [o]

팀장님 지시 업무 [o]

중간/일일 업무 보고 작성 [o]

정기 팀/동기 스터디 모임 참석 및 성실도 [o]

📍 학습 내용 정리

Gradle

Gradle은 Apache Ant와 Apache Maven의 장점을 결합한 빌드 자동화 도구로, Groovy 또는 Kotlin DSL을 사용하여 빌드 스크립트를 작성합니다. 이를 통해 프로젝트의 의존성 관리, 빌드 프로세스 정의, 테스트 실행, 배포 등을 효율적으로 처리할 수 있습니다. Gradle은 유연성과 확장성이 뛰어나며, 다양한 프로젝트 유형 및 환경에 적용할 수 있습니다.

https://gradle.org/

RDBMS

RDBMS는 관계형 데이터베이스를 관리하는 시스템으로, 데이터를 테이블 형태로 구조화하여 저장하고 SQL을 사용하여 데이터를 조작합니다. 이러한 데이터베이스 시스템은 데이터의 무결성을 유지하고 관계를 통해 데이터를 연결하며, ACID(원자성, 일관성, 고립성, 지속성) 속성을 준수하여 데이터의 안전성을 보장합니다.

https://velog.io/@moonblue/RDBMS

MySQL

MySQL은 가장 널리 사용되는 오픈 소스 RDBMS 중 하나로, 웹 응용 프로그램, 엔터프라이즈 시스템, 모바일 애플리케이션 등 다양한 환경에서 활용됩니다. 클라이언트/서버 아키텍처를 기반으로 하며, 다중 스레드 처리, 트랜잭션 지원, 데이터 보안 기능 등을 제공하여 안정적이고 성능이 우수한 데이터베이스 시스템으로 평가받고 있습니다. MySQL은 오픈 소스이므로 비용 효율적이며, 커뮤니티 지원이 활발하게 이루어지고 있습니다.

https://www.mysql.com/

📍 일일보고

부족한 점 :

Gradle을 사용하는것이 처음이라 아직은 미숙하다고 판단

스스로 시도해본 것들 :

아래 두 데이터를 직접 입력하고, 데이터 생성 확인합니다.

('감자', 1000, '2023-01-01', '회사1', 50)

('사과', 2000, '2023-02-05', '회사2', 30)

데이터를 아래 데이터처럼 수정하고, 데이터 수정된 부분 확인합니다.

('감자', 6000, '2023-01-01', '회사1', 10)

‘사과’ 데이터를 삭제하고, 데이터 삭제 확인합니다.

암호 복호화 라이브러리 사용 실습

package org.example.assignment.day1;

import org.jasypt.encryption.pbe.StandardPBEStringEncryptor;
import org.jasypt.salt.StringFixedSaltGenerator;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class FileEncrpytionExample {
    public static void main(String[] args) throws IOException {
        String encryptedOutputFilePath = "MyGradle/src/main/resources/encrypted_abc.txt";
        String decryptedOutputFilePath = "decrypted_abc.txt";

        final String PW = "12341234";
        final String ALGORITHM = "PBEWithMD5AndDES";
        final String SALT_GENERATOR = "someFixedSalt";

        StandardPBEStringEncryptor encryptor = new StandardPBEStringEncryptor();
        encryptor.setPassword(PW);
        encryptor.setAlgorithm(ALGORITHM);
        encryptor.setSaltGenerator(new StringFixedSaltGenerator(SALT_GENERATOR));
        System.out.println("Decryption completed successfully.");

        String decryptedText = encryptor.decrypt(readTextFile(encryptedOutputFilePath));

        System.out.println("Decrypted text: " + decryptedText);
        System.out.println("Decryption completed successfully.");
    }

    private static String readTextFile(String filePath) throws IOException {
        StringBuilder content = new StringBuilder();
        try (BufferedReader br = new BufferedReader(new FileReader(filePath))) {
            String line;
            while ((line = br.readLine()) != null) {
                content.append(line).append("\n");
            }
        }
        return content.toString();
    }
}
// Decryption completed successfully.
// Decrypted text: hello my Coding
// Decryption completed successfully.

해결 내용 :

Execution failed for task ':FileEncrpytionExample.main()'.
> Process 'command '/Library/Java/JavaVirtualMachines/temurin-11.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.
Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
For more on this, please refer to https://docs.gradle.org/8.4/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
BUILD FAILED in 1s
2 actionable tasks: 2 executed

에러가 발생해서 읽어들이는 파일의 경로가 잘못되었다고 확인

resource 디렉토리 안에 있는 파일로 경로 지정 후 해결

알게된 점 :

Gradle 설정 후 라이브러리 사용법에 대해 학습

헷갈리거나 실수한 점 :

Gradle을 사용하는것이 처음이라 아직은 미숙하다고 판단

회고 : Gradle을 처음 사용해보고 MySQL을 통해 간단한 쿼리를 작성하는것을 해봤는데
내일 부터는 더 깊게 SQL에 대해 학습하고 기본 문법에 대해서 학습하려고 한다.

profile
🤦‍♂️

0개의 댓글