자기 계발 리스트 120

[Spring] 14. Spring Legacy Project 만들기

이번에는 Spring Legacy Project로 프로젝트를 만들고 실행해보도록 하겠습니다. 먼저 Project Explorer에 new - other - spring을 검색하면 Spring Legacy Project를 선택해줍니다. 그다음 프로젝트명을 임의로 정해서 적어주고(저는 SpringMVC01로 했습니다.) Templates에 Spring MVC Project를 누르고 Next를 눌러줍니다. 그럼 보기와 같은 창이 나오는데 top-level 패키지를 지정해달라고 합니다. 우선 com.mvc.hello로 만들어줍니다. 이 부분은 패키지가 이렇게 자동으로 설정되게 도와줍니다. 여기서는 다른 설정 없이 바로 실행해보면 이렇게 왜인지 모르겠지만 한글이 깨져서 나옵니다. 하지만 코드를 조금만 손보면 한글..

Java/Spring 2021.07.31

The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path 에러

SpringMVC의 view 부분에 jsp파일을 만들던 도중 이러한 에러가 발생했다. ctrl + a -> ctrl + x -> ctrl + v 해봐도 여전했다. 구글링을 통해 찾아보니까 서버 쪽 에러라고 한다. 응? 나 근데 왜 서버 잘 연결되어있는데... 다시 찾아보니 Project Facets쪽 연결을 확인해보라고 한다. 이 부분에 체크가 풀려있었는데 다시 체크하고 Apply and Close 시키면 에러가 사라져 있는 걸 확인할 수 있다.

Java/Error 2021.07.31

[CS50] 조건문과 루프

오늘은 조건문과 루프는 C에서 어떻게 표현하는지에 대해 공부해보겠습니다. 저번 포스팅에서 C는 오래된 언어이기 때문에 저장하고자 하는 변수의 종류를 꼭 알려줘야 한다고 했습니다. 만약 counter라는 변수에 숫자를 저장하려면 어떻게 표시해야 할까요? 여기서 int는 변수가 정수(Integer)라는 것을 알려주는 것이고 counter라는 변수의 값에 0을 저장하는 것입니다. 마찬가지로 저번 포스팅에서 설명했듯이 = 표시는 같다의 등호(=)가 아닌 오른쪽의 값을 왼쪽으로 할당한다는 할당 연산자로 사용된 것입니다. 그렇다면 변수의 값을 1씩 증가시키려면 어떻게 해야 할까요? 즉 counter에 1을 더한 값을 다시 counter에 할당하면 됩니다. (여기서는 위에서 int counter를 선언했기 때문에 변..

CS 기초/C언어 2021.07.30

[CS50] 문자열

모든 언어가 그렇듯 문자열을 다루기 위해서는 문자열 형식을 가진 변수부터 선언해줘야 합니다. 오늘은 사용자로부터 문자열을 입력받고 입력받은 문자열을 다른 문자열과 합쳐서 출력하는 프로그램을 작성해보겠습니다. 혹시나 실습이 필요하신분들은 https://sandbox.cs50.io/ CS50 Sandbox Temporary programming environments for students and teachers. sandbox.cs50.io 여기서 바로 create눌러서 시작하시면 실습하기 수월합니다. 이렇게 만들어진 스크래치 블록이 있다고 한다면 C로는 어떻게 표현해야 할까요? 지난 포스팅에 say는 printf와 같은 역할을 한다고 공부했습니다. 그렇다면 ask는 어떨까요? ask함수를 C로 가져왔을 ..

CS 기초/C언어 2021.07.29

[CS50] C 기초

그래픽 인터페이스인 스크래치(skratch)를 사용해서도 간단한 프로그래밍이 가능하지만, 텍스트 기반 프로그래밍 언어인 C를 사용해도 컴퓨터에게 동일한 일을 시킬 수 있습니다. C 언어란? 벨 연구소의 데니스 리치가 만든 프로그래밍 언어로 정식 명칭은 'C'지만 한국에서는 'C언어'라고 부른다. 세계적으로 가장 많이 쓰이는 프로그래밍 언어 중 하나이다.(출처 : 나무위키) 우선 저번 시간에 했던 스크래치와 비교해볼 텐데 혹시라도 저번에 스크래치를 사용해보지 않으셨다면 https://darmk.tistory.com/entry/CS50-%EC%8A%A4%ED%81%AC%EB%9E%98%EC%B9%98-%EC%82%AC%EC%9A%A9%ED%95%B4%EB%B3%B4%EA%B8%B0?category=96447..

CS 기초/C언어 2021.07.28

[CS50] 스크래치 사용해보기

알고리즘을 만들려면 여러 가지 프로그래밍 언어를 사용할 수 있는데요. 가장 쉽게 알고리즘을 만드는 방법 중 하나는 그래픽 프로그래밍 언어를 사용해 그래픽으로 이루어진 알고리즘 블록을 붙여가며 기능을 완성하는 것일 겁니다. 이번에는 그래픽 프로그래밍 언어 중 하나인 스크래치 라는걸 사용해보려고 합니다. Scratch - Imagine, Program, Share (mit.edu) Scratch - Imagine, Program, Share Scratch is a free programming language and online community where you can create your own interactive stories, games, and animations. scratch.mit.edu 페..

[CS50] 알고리즘

알고리즘이란? 수학, 컴퓨터과학, 언어학 또는 역인 분야에서 어떠한 문제를 풀어 맺기 위해 정해진 일련의 절차나 방법을 공식화한 형태로 표현한 것이라고 합니다.(출처 : 위키백과) 컴퓨터가 자신이 입력받은 정보를 어떻게 가공해서 출력하는 방식에 대해 생각해보면 컴퓨터는 순서대로 필요한 동작을 하면서 문제를 처리하는데 이를 알고리즘이라고 컴퓨터과학에서는 말합니다. 그렇다면 이 알고리즘을 어떻게 정의가 가능하고, 그 정확성과 효율성은 어떨까요? 전에 2진법을 공부할때 input(입력) output(출력)에 대해 공부했었는데요 input에 해당하는 숫자, 글자, 색깔 등 컴퓨터가 이해할 수 있는 2진법으로 표현하는 것을 배웠습니다. 그렇다면 output은 어떻까요? output은 input된 내용(자료)을 처..

[CS50] 정보의 표현

지난 포스팅에 컴퓨터가 이미지, 오디오, 비디오 등을 저장할 수 있을까? 하고 잠깐 얘기한 게 있는데 말 그대로 숫자는 2진법으로 표현할 수 있다고 해도 그 이외의 정보들은 어떻게 처리할지 알아보겠습니다. 문자의 표현 가장 먼저 문자의 표현입니다. 기존에 코딩을 접해보지 않으신분들은 문자를 어떻게 숫자로 표현하지? 하고 의문을 가질 수 있는데요 문자 역시 숫자로 표현할 수 있도록 미리 정해진 약속(표준)이 있습니다. 이를 ASCII(아스키코드)라고 합니다. 0부터 127까지 총 128개의 부호로 이루어져 있습니다. 여기서 알파벳은 대문자 A를 시작으로 소문자 z까지 10진수 기준 65부터 표시가 가능합니다. 예를 들어 알파벳 A를 표현하려고 한다면 10진법 기준으로 65가 알파벳 A이므로 2진법으로 표현..

[CS50] 2진법

CS는 Computer Science의 약자로 직역하면 컴퓨터 과학이라는 뜻을 가지고 있습니다. 그렇다면 컴퓨터 과학을 왜 알아야 할까요?? 본 강의에 의하면 컴퓨터 과학은 단지 문제를 해결하는 과정이라고 합니다. 이게 무슨 말인가 해서 봤더니 문제 해결이란 Input을 받아 output을 만들어내는 과정이라고 하는데 이 중간에 있는 과정이 컴퓨터 과학이라고 설명합니다. 이러한 Input, output을 표현하기 위해서는 모든 사람이 동의할만한 약속(표준)이 필요합니다. 따라서 CS의 첫 번째 개념인 2진법은 어떻게 표현하는지에 대한 표현 방법을 말합니다. 2진법 우리가 흔히 사용하는 숫자인 0, 1, 2, ... , 7, 8, 9 이렇게 총 10개의 기호로 표현되는 것이 10진법인데요 컴퓨터는 사람과 ..

[Baekjoon] 백준 2908 상수 - java

오늘은 저번과 마찬가지로 문자열 문제인 상수를 풀어보려 합니다. 브론즈 2문제지만 설명을 보고 생각나는 게 로직이 있었는데 좀 더 쉽게 풀 수 있을 거 같아서요 ㅎㅎ 저번에서 설명했듯 이번부터는 최대한 Scanner를 사용하지 않고 풀어보려고 합니다. 그럼 문제풀러 가볼까요? 문제는 https://www.acmicpc.net/problem/2908 2908번: 상수 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 www.acmicpc.net 여기서 확인하시면 됩니다. 문제풀이 package Baek; import java.io.BufferedReader; import..

Algorithm/Baekjoon 2021.07.23