본문 바로가기

분류 전체보기32

[Project01] MiniBoard(1) - 프로젝트 생성, 데이터베이스 연결 시작하며 기본적인 자바 문법과 스프링부트를 이용한 실습이 어느 정도 진행이 된 상황이라 여러 가지 기능을 가진 게시판 프로젝트를 진행한다. 중간에 실력이 부족하다고 느끼면 학습하는 시간이 필요하겠지만 프로젝트에 필요한 내용들일테니 모두 기록에 담고 진행 예정이다. 첫 번째 기능구현은 사용자 가입과 로그인에 대한 내용이다. jdk 버전을 변경하느라 환경변수 설정부터 적지 않은 시간을 썼지만 너무 많은 정보들이 다른 블로그에 있으니 jdk 환경변수 설정은 생략한다. 프로젝트 생성 IDE : IntelliJ Ultimate Language : Java BuildSystem : Gradle-Groovy JDK version : Oracle 21 SpringBoot version : 3.2.1 DataBase :.. 2024. 1. 23.
[Java] ToyProject 1단계 패스트캠퍼스 : 백엔드 개발 부트캠프 ToyProject 1 1단계, 2단계, 3단계로 진행 최종 구현 목표는 '여행과 여정을 기록/관리하는 SNS 서비스' 1단계 달성목표 : Java 문법, 파일 입출력, 예외처리, 클래스 설계 [프로젝트 정의] 회원은 여러 여행 기록을 저장할 수 있습니다. 회원 가입은 다음 단계에서 고려하고 본 프로젝트는 여행과 여정을 기록하고 조회하는 기능을 구현하기로 한다. 여행에는 여러 여정이 있을 수 있습니다. 여정정보는 이동정보(출발지, 목적지, 출발시간, 도착시간), 숙박정보(체크인, 체크아웃) 등의 종류를 포함할 수 있다. 회원의 여행기록 목록이 출력되며, 각 여행기록 목록을 선택하면 상세한 여정기록이 출력됩니다. 회원 및 여행기록은 향후 데이터베이스 테이블로 관리되지만.. 2023. 12. 29.
[Java] 날씨 정보 가져오기(위도/경도 포함) build.gradle 파일에 gson 라이브러리 추가 날씨 정보 api에서 전달받은 json 파일을 파싱 하기 위한 gson 라이브러리 추가하기 https://mvnrepository.com/ 접속 gson 검색 사용할 버전 선택 사용할 방식 선택하여 추가하기 (Maven, Gradle, jar파일 다운로드 등...) dependencies { // https://mvnrepository.com/artifact/com.google.code.gson/gson implementation 'com.google.code.gson:gson:2.10.1' } 프로젝트 구조 만들기 위도/경도 DTO(Locale), 날씨정보 DTO(Weather) 위도/경도 Service(LocaleService), 날씨정보 Ser.. 2023. 12. 20.
[기초 Day8] 주사위 게임 3 1. 문제 설명 1부터 6까지 숫자가 적힌 주사위가 네 개 있습니다. 네 주사위를 굴렸을 때 나온 숫자에 따라 다음과 같은 점수를 얻습니다. 네 주사위에서 나온 숫자가 모두 p로 같다면 1111 × p점을 얻습니다. 세 주사위에서 나온 숫자가 p로 같고 나머지 다른 주사위에서 나온 숫자가 q(p ≠ q)라면 (10 × p + q)2 점을 얻습니다. 주사위가 두 개씩 같은 값이 나오고, 나온 숫자를 각각 p, q(p ≠ q)라고 한다면 (p + q) × |p - q|점을 얻습니다. 어느 두 주사위에서 나온 숫자가 p로 같고 나머지 두 주사위에서 나온 숫자가 각각 p와 다른 q, r(q ≠ r)이라면 q × r점을 얻습니다. 네 주사위에 적힌 숫자가 모두 다르다면 나온 숫자 중 가장 작은 숫자 만큼의 점수를.. 2023. 11. 29.
인천 청년 자격증 응시료 지원금 받기 인천 청년 자격증 응시료 지원금 신청 완료! 지원금 신청 기간 사업기간 : 2023년 1월 ~ 2023년 12월까지 신청기간 : 2023년 3월 2일 ~ 2023년 11월 30일까지 지원금 신청방법 시 홈페이지 인터넷 신청 홈>신청안내 | 인천청년 자격증 응시료 지원 신청안내 사업개요 사업기간 2023. 1. ~ 12. 지원대상 연 령 만18세 ~ 39세 청년 주민등록 신청일 현재 주민등록상 인천시에 거주중인 자 응 시 일 '23. 1. 1. 부터 실시한 시험 응시료 지원내용 1인 1회 www.incheon.go.kr 지원금 신청대상 연령 : 만 18세 ~ 39세 (2023년 기준, 1983년 1월 1일부터 2005년 12월 31일까지 출생자) 주민등록 : 신청일 현재 주민등록상 인천시에 거주 중인 청년.. 2023. 11. 28.
[기초 Day7] 배열 만들기 2 1. 문제 설명 정수 l과 r이 주어졌을 때, l 이상 r 이하의 정수 중에서 숫자 "0"과 "5"로만 이루어진 모든 정수를 오름차순으로 저장한 배열을 return 하는 solution 함수를 완성해 주세요. 만약 그러한 정수가 없다면, -1이 담긴 배열을 return 합니다. 2. 제한 사항 1 2023. 11. 28.
[기초 Day3] 연산 1. 문자열 섞기 길이가 같은 두 문자열 str1과 str2가 주어집니다. 두 문자열의 각 문자가 앞에서부터 서로 번갈아가면서 한 번씩 등장하는 문자열을 return 하는 solution 함수를 완성해 주세요. public String solution231122_1(String str1, String str2) { // 1차 int length = str1.length(); // 길이가 같은 두 문자열이라는 조건때문에 길이라는 변수를 하나로 // char[] char1 = new char[length]; // char[] char2 = new char[length]; // for (int i = 0; i < length; i++) { // char1[i] = str1.charAt(i); // char2[.. 2023. 11. 22.
[Java] 엑셀(Excel) 파일 읽기 (Feat.poi) Maven 추가 pom.xml 에 dependencies를 추가 org.apache.poi org.apache.poi poi 5.2.0 org.apache.poi poi-ooxml 5.2.0 org.apache.logging.log4j log4j-core 2.17.1 Load Maven Changes (Ctrl + Shift + O) Maven 변경사항을 적용 엑셀 경로 (프로젝트 최상위) 엑셀 읽어오기 FileInputStream file = new FileInputStream(new File("example.xlsx")); FileInputStream 클래스는 파일을 바이트 단위로 입력받아 출력할 수 있다. 워크북 생성, 시트 지정 Workbook workbook = WorkbookFactory.cr.. 2023. 11. 19.
[Java] MVC 패턴의 이해 MVC 패턴이란? 유지보수에 용이하고 가독성이 좋은 디자인 패턴중의 하나로써 Model-View-Controller 의 약어이다. 화면과 데이터 처리의 종속성을 줄이고 각자의 역할을 명확하게 한다. 다음 예제를 통해 MVC패턴에 대해 자세히 알아보도록 한다. 예제는 고객정보관리시스템으로 진행한다. Model 모델(Model)은 데이터 처리를 담당 public class Customer { private String name; private int age; private String phoneNumber; private String address; public Customer() { } public Customer(String name, int age, String phoneNumber, String ad.. 2023. 11. 17.
[Java] 다형성의 이해와 활용 다형성이란 무엇인가? 다형성이란 단어의 의미는 '같은 종이면서 어떤 형태나 형질이 다양하게 나타나는 현상' 을 얘기한다. 이와 비슷한 맥락으로 자바에서의 다형성이란 상위클래스가 동일한 메시지로 하위클래스를 서로 다르게 동작 시키는 의미로 이해하면 된다. 대표적인 예로 인터페이스, 추상클래스, 오버로딩, 오버라이딩, 업캐스팅, 다운캐스팅 등이 모두 다형성에 속해 있다. 다형성의 장점 유지보수가 쉽다. 확장이 용이하다. 다형성의 전제 조건 상속관계(extends)에 있어야 한다. 재정의(Override)가 가능하다. (필수 X) 업캐스팅(Upcasting) 동적바인딩 : 런타임 시점에 메서드가 결정된다. 다형성의 활용(예시) 1. 추상클래스 생성 public abstract class Animal { pub.. 2023. 11. 15.