전체 글 230

타임리프 스프링 통합과 폼

해당 게시물은 인프런 - "스프링 MVC 2편 - 백엔드 웹 개발 활용 기술" 강의를 참고하여 작성한 글 입니다유료강의이므로 자세한 내용은 없고, 간단한 설명 위주로 정리했습니다강의 링크타임리프 스프링 통합스프링 통합 매뉴얼https://www.thymeleaf.org/doc/tutorials/3.0/thymeleafspring.html타임리프는 스프링과 통합을 위한 다양한 기능을 편리하게 제공한다스프링 통합으로 추가되는 기능들SpringEL 문법 통합${@myBean.doSomething()}처럼 스프링 빈 호출 지원폼 관리를 위한 추가 속성th:objectth:field, th:errors, th:errorclass폼 컴포넌트 기능checkbox, radio buttion, List 등을 편리하게 사..

스프링 부트 2024.05.29

타임리프 기본

해당 게시물은 인프런 - "스프링 MVC 2편 - 백엔드 웹 개발 활용 기술" 강의를 참고하여 작성한 글 입니다유료강의이므로 자세한 내용은 없고, 간단한 설명 위주로 정리했습니다강의 링크타임리프 소개공식 사이트 https://www.thymeleaf.org/타임리프 특징서버 사이드 HTML 렌더링네츄럴 템플릿스프링 통합 지원타임리프 사용 선언텍스트th:text를 사용해 데이터를 출력한다변수변수를 사용할 때는 변수 표현식을 사용한다변수 표현식: ${...}변수 표현식에는 SpringEL이라는 스프링이 제공하는 표현식을 사용할 수 있다SpringEL 다양한 표현식 사용user의 username 프로퍼티에 접근하는 표현식이다list에서 첫 번째 user를 찾고 username 프로퍼티에 접근하는 표현식이다ma..

스프링 부트 2024.05.23

Github markdown README badge

Readme.md Badges다음과 같이 프로젝트 README 또는 개인 프로필 README에 badge를 추가할 수 있다   만드는 방법shields.io에서 badge를 만들 수 있다https://shields.io/badges Static Badge | Shields.ioOne of the named logos (bitcoin, dependabot, gitlab, npm, paypal, serverfault, stackexchange, superuser, telegram, travis) or simple-icons. All simple-icons are referenced using icon slugs. You can click the icon title on simple-icons to copy ..

git 2024.05.22

Wrapper 클래스

Wrapper 객체객체 지향 프로그래밍에서는 모든 것들을 객체로 다뤄야 한다하지만 성능상의 이유로 현실과 타협할 수밖에 없는 경우가 있다지금까지 다음과 같은 원시 타입을 사용했고, 이들을 객체화할 수 있다Primitive Data TypeWrapper ClasscharCharacterbyteByteshortShortintIntegerlongLongfloatFloatdoubleDoublebooleanBooleanchar, int, long과 같은 데이터 타입은 실제로 값 이상의 의의를 가지지 않기 때문에, 비용이 많이 드는 객체 대신 원시 타입을 사용한다자바는 기본형들을 추상화해서 객체화는 했지만, 값 이상의 의의를 가지지 않으면 성능상의 이유로 원시 값을 그대로 사용한다객체로의 기능이 필요할 때 원시 값..

Java 2024.05.21

스레드

1. 프로세스와 스레드프로세스 vs 스레드프로세스: 운영체제로부터 자원을 할당받는 작업의 단위스레드: 프로세스가 할당받은 자원을 이용하는 실행 단위프로세스프로세스는 실행 중인 프로그램을 의미한다OS 위에서 실행되는 모든 프로그램은 OS가 만들어 준 프로세스에서 실행된다프로세스 구조OS가 프로그램 실행을 위한 프로세스를 할당해 줄 때 프로세스 안에서 Code, Data, 메모리 영역(Stack, Heap)을 할당해준다Code는 Java main 메소드와 같은 코드를 말한다Data는 프로그램이 실행 중 저장할 수 있는 저장공간을 의미한다전역변수, 정적 변수 등 초기화 된 데이터를 저장하는 공간Memory 메모리 영역Stack: 지역변수, 매개변수 리턴 변수를 저장하는 공간Heap: 프로그램이 동적으로 필요한..

Java 2024.05.20

git 명령시 한글이 숫자로 보이는 문제

한글이 숫자로 보이는 문제MAC os에서 git을 이용하던 중 한글이 숫자로 변해서 보이는 문제가 생겼다.  문제 해결이를 해결하기 위해 다음 코드를 입력한다.git config --global core.quotepath false 이후 한글이 정상적으로 보이는 걸 확인할 수 있다.  공식 문서git 문서에 다음 내용을 참고해보자.  참고http://git-scm.com/docs/git-confighttp://git-scm.com/docs/git-config Git - git-config DocumentationWhen using the deprecated [section.subsection] syntax, changing a value will result in adding a multi-line ke..

git 2024.05.20

git cache 삭제

캐시 삭제.gitignore에 폴더나 파일을 추가했지만 반영이 안 되는 경우가 있다.이럴 때 cache를 삭제해 문제를 해결할 수 있다.아래와 같은 명령어로 캐시 삭제를 수행한다.git rm -r --cached .git add .git commit -m "캐시 삭제"  또는 다음과 같이 한 파일만 cache를 삭제한다.git rm --cached FILENAME  공식문서다음과 같이 공식문서를 보면 명령어를 확인할 수 있다. 해석은 다음과 같다더보기gitignore 파일의 목적은 Git에서 추적하지 않는 특정 파일이 추적되지 않은 상태로 유지되도록 하는 것이다현재 추적 중인 파일의 추적을 중지하려면 git rm --cached를 사용하여 인덱스에서 파일을 제거한다그런 다음 파일 이름을 .gitignor..

git 2024.05.19

자동 구성(Auto Configuration)

해당 게시물은 인프런 - "스프링 부트 - 핵심 원리와 활용" 강의를 참고하여 작성한 글입니다유료강의이므로 자세한 내용은 없고, 간단한 설명 위주로 정리했습니다강의 링크스프링 부트의 자동 구성스프링 부트는 자동 구성(Auto Configuration) 기능을 통해 일반적으로 자주 사용하는 많은 빈들을 자동으로 등록해 준다spring-boot-autoconfigure라는 프로젝트 안에서 수많은 자동 구성을 제공한다JDBCTemplate을 설정하고 빈으로 등록하는 자동 구성은 다음과 같다@AutoConfiguration( after = {DataSourceAutoConfiguration.class})@ConditionalOnClass({DataSource.class, JdbcTemplate.class}..

스프링 부트 2024.05.19

프로그래머스 - 게임 맵 최단거리

문제https://school.programmers.co.kr/learn/courses/30/lessons/1844# 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  풀이가중치가 없는 그래프이므로 최단거리를 찾기 위해 BFS 알고리즘을 사용한다그래프의 최대 크기가 100x100이므로 인접행렬을 통해 그래프를 만든다  코드python123456789101112131415161718192021222324252627def bfs(row, col, maps):    q = [[row, col]]        dist = [[-1] * len(maps[0]) for ..

프로그래머스 2024.04.15