분류 전체보기(250)
-
백준 14426: 이모티콘 [Java] - 포포
문제 영선이는 매우 기쁘기 때문에, 효빈이에게 스마일 이모티콘을 S개 보내려고 한다. 영선이는 이미 화면에 이모티콘 1개를 입력했다. 이제, 다음과 같은 3가지 연산만 사용해서 이모티콘을 S개 만들어 보려고 한다. 화면에 있는 이모티콘을 모두 복사해서 클립보드에 저장한다. 클립보드에 있는 모든 이모티콘을 화면에 붙여넣기 한다. 화면에 있는 이모티콘 중 하나를 삭제한다. 모든 연산은 1초가 걸린다. 또, 클립보드에 이모티콘을 복사하면 이전에 클립보드에 있던 내용은 덮어쓰기가 된다. 클립보드가 비어있는 상태에는 붙여넣기를 할 수 없으며, 일부만 클립보드에 복사할 수는 없다. 또한, 클립보드에 있는 이모티콘 중 일부를 삭제할 수 없다. 화면에 이모티콘을 붙여넣기 하면, 클립보드에 있는 이모티콘의 개수가 화면에..
2022.11.23 -
22/11/21
1. 코드 리뷰 받고 수정했다. 주말~오늘 오전에 멘토님들이 코드 리뷰를 해주셔서, 오늘 오후에는 제출한 코드를 수정했다. 2. 스터디 준비..를 절반밖에 못했다. 이번 주는 스터디를 화요일에 진행하는 줄 알았다 ! 하지만 그건 나의 착각 아침에 백신 3차 접종을 맞고, 오늘, 내일 코어타임 전에 쏠쏠 준비해 가면 될 것이라고 판단했는데,, 완전히 고장났다. 훨씬 잘 준비하신 분들도 계셨을 텐데, 죄송한 마음이다,, 지금껏 N개월을 스터디하며 이런 적이 없었건만.. 심적으로 충격이 꽤 컸다. 3. Spring 강의를 들었다. 이번 주 금요일까지 코드 리뷰 과제를 제출해야 하고, 다음 주 수요일까지 개인 프로젝트를 제출해야 한다. 나는 화요일까지 모든 것을 마쳐야 하는 상태라, 이번 주는 극한으로 해야겠구..
2022.11.22 -
22/11/19
1. Spring 수업을 들었다. 오늘은 스프링과 스프링 부트의 차이, AutoConfiguration을 학습했다. 스프링을 배우면 스프링 부트가 얼마나 편하고 다양한 기능을 제공하는지 깨닫게 된다. 2. Spring 과제 제출 지난 주 1차 과제를 제출했고, 주말 사이에 코드 리뷰 받은 부분들을 개선했다. 그리고 이번 주는 새로운 2차 과제를 시작했고, 어제 마무리지었다. 그동안 TIL 작성이 뜸했는데 좀 바빴던 것 같다. 파일과 메모리에서 관리하던 데이터를 DB에 저장, 조회하는 작업으로 변경하는 것이었고 데이터 접근 기술로는 JDBC를 사용해야 했다. RowMapper를 이용해서 레코드 한 줄씩 Java 객체에 매핑해야 했는데, 고객 1명이 바우처 N개를 들고 있는 1:N의 상황에서 고객과 바우처 ..
2022.11.19 -
톰캣 JAR 누락으로 인한 오류
톰캣 서버를 띄우고 jsp 페이지와 매핑된 url을 입력하니 아래와 같은 에러가 발생했다. 절대 URI인 [http://java.sun.com/jsp/jstl/core]을(를), web.xml 또는 이 애플리케이션과 함께 배치된 JAR 파일 내에서 찾을 수 없습니다. 작성한 jsp 페이지에서는 최상단에 jstl의 태그를 등록한 상태다. KDT Spring App the time on the server is 이 jstl(태그 라이브러리)를 사용하기 위해서는 jstl.jar, taglibs.jar 두개의 라이브러리가 필요하다. 따라서 pom.xml에 두개의 dependency를 등록하였는데 javax.servlet jstl 1.2 taglibs standard 1.1.2 동일한 500에러가 발생한다. 이럴..
2022.11.15 -
트랜잭션과 격리수준, MVCC
몇 주 전 Real MySQL을 공부하며 정리했던 내용을 팀원들에게 공유한 적 있다. 오늘 들은 스프링 수업에서 이를 다루어서, 노션 페이지에 있는 포스팅을 블로그에 옮긴다. 트랜잭션 트랜잭션은 작업의 완전성을 보장해 준다. 논리적인 작업 셋을 모두 완벽하게 처리하거나, 처리하지 못 할 경우에는 원 상태로 복구해 작업의 일부만 적용되는 현상(Partial Update)이 발생하지 않게 만들어준다. 잠금과 트랜잭션은 비슷한 개념 같지만, 잠금은 동시성을 제어하는 기능이며 트랜잭션은 데이터 정합성을 보장 트랜잭션은 DBMS의 커넥션과 마찬가지로 최소의 코드에만 적용하는 것이 좋다. 트랜잭션의 범위를 최소화하라! 특히, 네트워크 작업 등 긴 시간이 걸리는 작업은 제외해야 한다. 메일 전송, 파일 전송 등 외부..
2022.11.12 -
UUID란, UUID vs 자동증가 pk
개요 💡 강의에서 엔티티의 PK를 UUID로 사용하고 있다. UUID란 무엇이며, 자동 증가 PK 와 비교했을 때 어떤 장단점이 있는지 알아보았다. MySQL에 UUID를 저장하고 조회할 때 발생할 수 있는 문제를 간략하게 정리했다. UUID란 UUID는 정보 식별을 위해 사용되는 식별자로, 128-bit 숫자로 구성되어있다. 네트워크 상에서 각 개체들을 식별하기 위해서는 각각의 고유한 이름이 필요하며, 이 이름은 유일성이 매우 중요하다. 중복되는 이름의 개체가 존재하면 구별이 불가능하기 때문이다. 중앙에서 관리시스템을 두어 고유한 이름을 부여해 주면 고유성을 확보할 수 있다. 하지만 독립적으로 개발되는 시스템들은 중앙 관리 시스템으로 관리할 수 없다. 따라서 개발 주체가 스스로 이름을 지으면서 유일성을..
2022.11.12