본문 바로가기

전체 글

(262)
[spring] 시스템, 사람, 코드를 믿어야 할까? 회원가입을 구현하고 있었다. 회원은 class Member로 구현한 상태. MemberRepositroy에서 findMemberByLoginId()를 구현하는 도중 의문점이 생겼다. 프로그램의 규모가 커짐에 따라 복잡성은 늘어나고 하나를 수정하면 다른 곳이 터지거나 유기적으로 연결된 부분에서 예상하지 못한 곳에서 문제가 생기는 경험을 많이 했다. 우린 대부분의 웹사이트가 그러하듯이 아이디를 중복허용하지 않았다. 이때 시스템이 커지면 어떤 경로로든 중복검사를 뚫고 들어올 수도 있지 않을까 생각했다. 그래서 생각한 나의 방법. findMemberByLoginId()를 구현할 때 다음과 같이 구현하는 것. 즉 탐색할 때 마다 list로 모두 가져오고 중복된 아이디가 있는지 없는지 검사하는 것이다. 사실상 fi..
java 키보드입력시 주의사항 https://limkydev.tistory.com/170
창이 화면 넘어로 넘어갈 때 고치는 법 전자책을 보는는데 전체화면을 클릭하니까 갑자기 전자책 창이 모니터 밖으로 나갔다. 마우스가 닿지않는 곳으로 나감... YES24 전자책 뷰어 사용중이었음. 임시로 나간 창을 다시 불러오는 방법은 다양하지만 근본적인 원인 해결책은 없었다. 우여곡절 끝에 해결함. 1. 크롬 브라우저는 화면확장을 해도 튕기지 않았다. 2. YES24 전자책 뷰어만 말썽이었음. 3. 난 듀얼모니터를 사용중임 YES24만 삭제하고 다시 깔아봐도 계속 문제가 반복되었다. -> 프로그램과 OS간에 소통에 문제가 있다고 생각 -> 이전에는 잘 동작했기 때문에 OS에서 뭔가 변화가 생긴듯 했다.(아무것도 건드리지 않음.) -> 바탕화면 마우스 우클릭 -> 디스플레이 설정클릭. 아래와 같은 화면에서 1번 상자를 드래그해서 2번 오른쪽에 ..
윈도우 사용자 폴더 이름 바꾸기!! @ 주의할 점! 1. 레지스터 편집을 꼭 해야함. 2. 윈도우 버전이 home이라면 안되는 것 같다. home으로 하다가 안되서 edu버전으로 업그레이드 해서 진행함. 본인이 home버전이라면 edu 또는 pro버전으로 업그레이드하길 바람. 업그레이드는 어렵지 않다. 설정에서 제품 키만 입력해주면 알아서 진행함. 구글링하면 쉽게 나온다. home -> edu -> pro 순으로 많은 기능을 제공. 나는 학교에서 제공해 주는 edu버전을 사용했다. 3. admin 중간에 막히거나 하면 반드시 원상태로 돌려놓은 다음에 다른 방법을 사용해라. 4. 내 블로그 말고 다른 블로그도 참고 할 텐데 "윈도우 사용자 폴더 이름바꾸기" 와 "윈도우 사용자 계정이름 바꾸기"는 다르다. 반드시 폴더 이름 바꾸기로 검색하고 ..
org.springframework.mail.MailSendException: Failed messages: com.sun.mail.smtp.SMTPSendFailedException: 555 5.5.2 Syntax error. j3-20020a056a00234300b004faabba358fsm2205302pfj.14 - gsmtp https://rovictory.tistory.com/10 Gmail Smtp 555 5.5.2 Syntax error 해결방법 Gmail Smtp 555 5.5.2 Syntax error 수업시간에 배운 JavaMailSender를 이용하여 테스트 이메일을 보내보려고 코드를 작성했다. package com.kh.spring17; import java.util.Properties; import org.junit.Test; i.. rovictory.tistory.com 윈도우 계정 이름이 영어가 아니라서 생긴문제.... 포맷해야할듯..
[xv6] 시작 메시지 변경 qemu를 사용해서 xv6를 구동함. xv6시작메시지를 변경하라는 과제를 받았다. xv6-public 폴더에 들어가서 make qemu를 통해서 xv6를 가동할 수 있다. make qemu를 하면 터미널 창이 하나 더 생김. 터미널 창이 하나 더 생기는게 싫다면 같은 위치에서 make qemu-nox할 수 있다. 다만 nox를 붙여서 실행했을 때는 새창이 생기지 않는다. 그 상태에서 qemu를 나갈 때는 ctrl+a+x를 누르면 된다는데 나는 왜인지 모르겠지만 그게 동작하지 않아서 make qemu를 추천한다. (make qemu하면 x버튼을 눌러서 qemu나갈 수 있음.) make qemu는 xv6-public 디렉토리에서만 동작한다. 그리고 xv6-public에서 ls해보면 여러 개의 .c파일이 나오..
[vmware] 리눅스 우분투 공유폴더 학교 과제로 vmware에서 리눅스 설치후 공유폴더를 만들어야 하는 상황에 이르렀다. 운 안좋게도 여러가지 문제점을 만났고 삽질했기 때문에 정리함. 단순 과정을 설명하기보다 삽질하면서 배운 의미를 기록하려함. 용어부터 정리하자 호스트머신 : 내 os(윈도우)가 깔려있 기계 게스트머신 : vmware로 추상화 시킨 기계(나는 리눅스를 설치함) 게스트머신에 리눅스가 아니라 윈도우를 설치한 사람은 https://wjdqh6544.tistory.com/526 링크를 따라하자. 리눅스인지 윈도우인지에 따라서 많이 다르다. 기본적으로는 오른쪽의 링크에 나와있는 과정을 따라가면 된다. https://m.blog.naver.com/cjh226/221159795371처음에는 왜 vmware tool을 설치해야하는지 이해..
DTO와 entity를 분리해야하는 이유 https://mangkyu.tistory.com/192 [Spring] 엔티티(Entity) 또는 도메인 객체(Domain Object)와 DTO를 분리해야 하는 이유 개발을 하다 보면 API의 요청이나 응답을 처리할 때 또는 다른 계청으로 넘기는 파라미터가 너무 많은 시점에 별도의 DTO를 생성해야 하나 고민을 하는 시점이 생깁니다. 개인적으로는 간단한 애 mangkyu.tistory.com 내용이 구체적이고 좋다. 다른 글도 읽어보자. 먼저 컨트롤러에서 엔티티를 반환하는 것은 절대로 하면 안된다. 엔티티가 바뀔수 있다. -> 엔티티가 바뀌면 API 반환형식도 바뀐다. -> 웹은 빠르게 대응한다고 쳐도 앱은 동작을 안하게 된다. API는 한번 바뀌면 해당 API를 사용하고 있는 서비스가 모두 변경되어..