728x90
반응형

자바 28

스프링 입문 - 비즈니스 요구사항 정리

본격적으로 개발을 하기 앞서, 우선 비즈니스 요구사항을 정리해야 한다. 복잡한 비즈니스 로직을 배우는 것이 아닌, 스프링이 어떻게 돌아가는지를 이해하기 위함이므로 가장 쉬운 비즈니스 요구사항을 택할 것이다. 일반적인 웹 애플리케이션 계층 구조는 이렇다. 컨트롤러: 웹 MVC의 컨트롤러 역할 서비스: 핵심 비즈니스 로직 구현. 도메인을 이용한 서비스, 기능, 로직 그 자체를 의미 리포지토리(저장소): 데이터베이스에 접근하고 도메인 객체를 DB에 저장하고 관리함. 도메인: 비즈니스 도메인 객체. 회원, 주문, 쿠폰 등등. DB에 저장되고 서비스로써 이용될 것들. 비즈니스 요구사항 데이터: 회원ID, 이름 기능: 회원 등록, 조회 아직 데이터 저장소가 선정되지 않은 상태라는 가정 ( 어떤 DB를 사용할지 정해..

Development/Spring 2023.10.29

스프링 입문 - 프로젝트 생성

인프런에서 김영한님 스프링 입문 강의를 완강했다. 스프링은 완전히 처음이라 정말 어려웠지만, 완강하고 나니 대략적인 틀이 보이는 것도 같다. 그러나 정신없이 듣느라 전혀 체득하지 못한것 같아서, 강의를 다시 복습하며 글로 정리해 보려고 한다. https://start.spring.io/ 링크로 접속하면, 위와 같은 화면이 뜬다. 스프링 프로젝트를 쉽게 시작할 수 있도록 스프링에서 제공하는 기능이다. 간단한 설정을 한 후, 다운로드 받으면 쉽게 스프링을 시작할 수 있다. 위와 같이 설정한 후, 아래 GENERATE 버튼을 누르면 다운로드할 수 있다. 자바 버전이 다른경우 스프링 가동이 되지 않으니, 잘 확인해야 한다. 오른쪽 Dependencies(의존성) 부분은, 우린 웹개발을 할 것이니 Spring W..

Development/Spring 2023.07.30

[Baekjoon/JAVA] 백준 10813번 공 바꾸기

1번~N번의 바구니가 있고, 각 바구니엔 번호에 해당하는 공이 들어 있습니다. i, j번 바구니에 들어있는 공을 바꿉니다. 이것을 M번 반복한 후, 각 바구니에 몇번 공이 들어있는지 출력하는 문제입니다. import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); StringTokenizer st; st = new StringTokenizer(br.read..

[Baekjoon/JAVA] 백준 10815번 숫자 카드

주어지는 숫자의 범위가 매우 크기 때문에, 일일이 비교하는 방법보다는 이분 탐색 알고리즘을 이용해야 합니다. import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); StringTokenizer st; int n = Integer.parseInt(br.readLine()); int cards[] = new int[n]; st = new StringTok..

[Baekjoon/JAVA] 백준 1032번 명령 프롬프트

입력받은 문자열들의 각 문자를 모두 비교하여, 모두 같지 않다면 해당 문자를 ?로 바꾸는 문제입니다. 모두 같다면 문자를 그대로 출력합니다. 입력받는 문자열들의 길이는 동일합니다. import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); int n = Integer.parseInt(br.readLine()); String arr[] = new Strin..

Algorithm/문자열 2023.06.30

[Baekjoon/JAVA] 백준 10988번 팰린드롬인지 확인하기

입력받은 문자열이 팰린드롬인지 확인하는 문제입니다. 앞에서 읽을때와 뒤에서 읽을때의 결과가 같으면 팰린드롬입니다. import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); String str = br.readLine(); int start = 0; int end = str.length()-1; int result = 1; while(start < end..

Algorithm/문자열 2023.06.30

[Baekjoon/JAVA] 백준 9086번 문자열

정해진 횟수만큼 문자열을 입력받고, 문자열의 맨 앞과 맨 뒤에있는 문자열을 출력해야 합니다. import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); int n = Integer.parseInt(br.readLine()); for(int i=0; i "A" str.charAt(3) -> "D" 이런 결과가 나오게 됩니다. 이렇게 charAt()함수를 이..

Algorithm/문자열 2023.06.30

[Baekjoon/JAVA] 백준 14659번 한조서열정리하고옴ㅋㅋ

n개의 봉우리(활잡이)가 존재합니다. 각 봉우리는 높이가 다르고, 높은 봉우리에 있는 활잡이가 낮은 봉우리를 처치할 수 있습니다. 공격은 오른쪽으로만 진행되고, 더 높은 봉우리를 만날 시 패배합니다. 이 때 가장 많은 적을 처치하는 봉우리는 몇명의 적을 처치할 수 있는지 출력해야 합니다. import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); Stri..

[Baekjoon/JAVA] 백준 10811번 바구니 뒤집기

1번부터 N번까지의 바구니가 존재합니다. i번~j번 까지의 바구니만을 역순으로 뒤집습니다. 이 작업을 M번 반복합니다. 그리고 마지막 바구니의 순서를 출력하는 문제입니다. import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); StringTokenizer st; st = new StringTokenizer(br.readLine()); int n = I..

[Baekjoon/JAVA] 백준 10810번 공 넣기

1번~N번의 바구니가 있다. 1번~N번의 공이 있다. 공 갯수는 제한이 없다. i번부터 j번까지의 바구니에, k번이 적힌 공을 넣는다. 이 과정은 총 M번 진행되며, 만약 바구니에 공이 이미 있을 경우 새로운 공으로 교체된다. 입니다. 결국 각 바구니에 마지막으로 남아있는 공이 몇번 공인지 출력해야 합니다. import java.io.*; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = ..

728x90
반응형