본문 바로가기

java

(62)
TIL 240930 - 알고리즘 10회차 숫자 문자열과 영단어네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다. 1478 → "one4seveneight" 234567 → "23four5six7" 10203 → "1zerotwozero3" 이렇게 숫자의 일부 자릿수가 영단어로 바뀌어졌거나, 혹은 바뀌지 않고 그대로인 문자열 s가 매개변수로 주어집니다. s가 의미하는 원래 숫자를 return 하도록 solution 함수를 완성해주세요. 참고로 각 숫자에 대응되는 영단어는 다음 표와 같습니다. 숫자 영단어 0 zero 1 one 2 two 3 three 4 four 5 five 6 s..
일정 관리 어플리케이션 설계 스파르타코딩클럽에서 하고있는 내일배움캠프.공부한지도 한달 째이고, 첫 주 웹개발과, 두 세번째 주는 Java 종합 문법, 넷째 주를 와서 Spring 공부에 진입하였고, 새로운 개인개발 프로젝트도 받게되었습니다.오늘은 프로젝트 설계에 대한 내용을 정리해 보려고 합니다.개발 전, 공통조건일정 작성, 수정, 조회 시 반환 받은 일정 정보에 "비밀번호"는 제외일정 수정, 삭제 시 선택한 일정의 "비밀번호"와 요청할 때 함께 보낸 "비밀번호"가 일치할 경우에만 가능(비밀번호가 일치하지 않을 경우, 적절한 오류 코드 및 메세지를 반환)3 Layer Architecture 에 따라 각 Layer의 목적에 맞게 개발CRUD 필수 기능은 모드 데이터베이스에 연결 및 JDBC 를 사용해서 개발 필수 기능 및 미션1. A..
TIL 240927 - Spring 3 1강. 3 Layer Architecture(3계층)하나의 클래스에 너무 많은 코드가 들어있으면 가독성이 안좋고, 수정 등의 유지보수에 좋지않다.아래의 3개의 클래스를 개별적으로 구분하여 계층화 하고, 코드의 유연성을 올리고 결합을 느슨하게 한다. Controller(출입문이자 출구)  Service(사용자의 요구사항=비즈니스 로직) Repository(데이터베이스 관리: 연결, CRUD) 기존의 Controller 를 통해 클라이언트와 데이터베이스가 소통을 했다면, Controller 의 부분을 좀더 세밀화 해서 아래와 같은 순서대로 데이터를 주고받는다.1. 클라이언트(크롬브라우저)가 게시글 작성 요청 2. HTTP 프로토콜 리퀘스트 규칙에 맞춰서 Controller 로 들어옴(데이터까지 다 처리해서)..
Spring - JBDC JDBC 란 무엇일까?JDBC는 Java 프로그램이 데이터베이스와 상호작용할 수 있도록 해주는 API 이다. 이를 통해 SQL쿼리 를 실행하고, 결과를 처리할 수 있다. 1. JDBC의 기본구성 요소JDBC 드라이버, Connection, Statement, ResultSet 4가지가 있다. 1. JDBC 드라이버: 데이터베이스와 Java 애플리케이션 간의 통신을 담당하는 소프트웨어이다. (처음 데이터베이스와 연결할때, 드라이버를 다운로드 및 설정함) 2. Connection: 데이터베이스와의 연결을 나타내는 객체이다. JDBC-DB에서 데이터베이스와 연결을 나타내는 '인터페이스'이다. 이 인터페이스를 구현한 클래스들이 실제로 데이터베이스와의 연결을 관리한다.더보기Connection 객체를 생성하는 법예..
TIL 240926 - 알고리즘 9회차 삼총사문제 설명 한국중학교에 다니는 학생들은 각자 정수 번호를 갖고 있습니다. 이 학교 학생 3명의 정수 번호를 더했을 때 0이 되면 3명의 학생은 삼총사라고 합니다. 예를 들어, 5명의 학생이 있고, 각각의 정수 번호가 순서대로 -2, 3, 0, 2, -5일 때, 첫 번째, 세 번째, 네 번째 학생의 정수 번호를 더하면 0이므로 세 학생은 삼총사입니다. 또한, 두 번째, 네 번째, 다섯 번째 학생의 정수 번호를 더해도 0이므로 세 학생도 삼총사입니다. 따라서 이 경우 한국중학교에서는 두 가지 방법으로 삼총사를 만들 수 있습니다. 한국중학교 학생들의 번호를 나타내는 정수 배열 number가 매개변수로 주어질 때, 학생들 중 삼총사를 만들 수 있는 방법의 수를 return 하도록 solution 함수를 완..
TIL 240926 - Spring 입문2 1. Jackson 이란?Spring 개발환경에서 Gradle 로 외부에서 입력받은 라이브러리이다. 다양한 기능을 제공한다.Object to JSON(변환)import com.fasterxml.jackson.databind.ObjectMapper;import com.sparta.springmvc.response.Star;import org.junit.jupiter.api.DisplayName;import org.junit.jupiter.api.Test;public class JacksonTest { @Test @DisplayName("Object To JSON : get Method 필요") void test1() throws JsonProcessingException { S..
TIL 240925 - Spring 입문 1. API(application programming interface)'서로 다른 시스템이 서로 정한 약속대로 정보를 주고받는 것'소프트웨어 간의 상호작용을 정의하는 규칙과 프로토콜의 집합이다. API를 사용하면 한 소프트웨어 컴포넌트가 다른 컴포넌트의 기능을 호출하거나 데이터를 교환할 수 있다. 2. 테스트 코드Spring 에서의 테스트 코드는 애플리케이션의 기능과 안정성을 검증하기 위해 작성되는 코드이다.테스트는 개발 과정에서 매우 중요한 역할을 하며, 소프트웨어의 품질을 높이는 데 기여한다. Spring 에서는 여러 가지 테스트 노구와 프레임 워크를 제공하여 테스트를 용이하게 한다.컴파일 에러또는 런타임 에러가 나지않아도 프로그램 자체에서 코드에 문제가 발생하지 않으면 정상적인 코드라고 생각하고..
TIL 240925 - 알고리즘 8회차 이상한 문자 만들기문제 설명 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. 제한 사항 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다. 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다. 나의 잘못된 풀이import java.util.Arrays;import java.util.List;import java.util.stream.Collectors;import java.util.stream.IntStream;class Solution { publ..