코딩 43

Spring boot 회원가입 만들기!(3) 해시하기 with BCryptPasswordEncoder

이제 비밀번호 및 이름을 받아서 넣을 건데 dto와 바닐라 js를 이용해서 유효성 검사를 할 것이다! 원래 프런트엔드에서도 보안 작업을 걸어야 하지만 사실상 검사를 눌러서 수정해 버리면 의미가 없어지기 때문에 백엔드에서 잘못된 값이 들어왔을 때 튕겨내주는 장치를 하려고 한다! (뇌피셜 일뿐 프런트엔드 전문가 분들이 만들다면 당연히 좀 더 다를 거라고 생각한다 보안은 그냥 정말 특수한 공부 영역 같다) 일단 역시 바닐라 js로 비밀번호 역시 css를 만져준다! 이제 회원가입을 진행할 텐데 form->controller->userservice->비밀번호 해시-> dao->service->controller 이렇게 될 거 같다 이제 시큐리티로 가서 인코더를 만들자! BCryptPasswordEncoder 를 ..

Spring boot 회원가입 만들기!(1) with security And mvcModel And jpa

일단 시큐리티설정을 해주고 모든 페이지에 대한 조건을 허용으로 해준다! .antMatchers("/","/auth/**","/static/**")////이 링크들은 .permitAll();///허용한다 모든 요청을 허용한다 를 해주고 이제 vo/dao/dto를 만들 것이다 dto는 왔다 갔다 컨테이너 용도이고 vo는 데이터베이스에 넣는 용도로 쓸 것이다! 컨트롤러에서 회원가입 페이지로 갈 수 있게 만들어준다! vo/dto/dao를 만들어준다! 1.vo 2.dto import javax.validation을 사용해 조건에 맞지 않는 형식이 들어오면 메시지를 출력해준다! userdto라고 되어있는데 나중에 singupdto/logindto 용도에 따라 나눠볼까 생각도 든다 3.dao 스프링 시작 시 의존성 ..

마치며

부연설명 양이 현재 걷는 방식은 어떻게 보면 현실적이지가 않다 이유는 그냥 양 x좌표에 대한 언덕의 x/y/기울기를 가져오는 것뿐이다 왜 그렇게 해야 하냐면 난 "수학을 잘 모른다" 양이 평지를 걸었다면 그냥 걸음수로 컨트롤하면 된다 왜? 1km로 달리는 러닝머신 위에서 내가 한 시간 동안 1km를 가고 싶다면 내가 2km로 뛰면 된다 하지만 양이 걷는 건 평지 즉 직선이 아니다 그러려면 둘 중 하나의 방법이 있다 양의 x값에 언덕의 좌표를 가져올 터인지 아니면 내가 수학을 겁나 잘해서 그걸 계산해서 걸을 수를 늘려줄 것인지! 진짜 멘붕이었고 다시 한번https://youtu.be/hCHL7sydzn0 이분의 영상을 봤고 이분의 영상을 참고해서 나만의 방법을 만들었다 처음 봤을 때와 막바지에 봤을 때 걱..

언덕위를 걷는양!

언덕 그리기->언덕 움직이기 양 이미지 가져오기->양 프레임 올리기->양 움직이기->양이 곡선 위를 걷기 이렇게 따로따로 해왔다 이제 대망의 하이라이트 양이 우리가 그린 언덕 위를 걷게 만들겠다! 두 가지 방법이 있다 1. 현실처럼 걷게 하는 법 2.x좌표에 따른 y좌표와 기울기를 걷는 법 우리는 2번을 쓸 것이다 이유는 "곡선 위에 일정한 속도로 오브젝트를 움직이게 하는 공식을 모른다"(나는) 과정 1. 클라이언트 접속 시 처음 양위치 계산 2. 베지어 클래스에 어떤 포인트 차례인지 알려주는 함수를 만든다 3. 언덕에 맞게 좌표를 넣어줄 함수를 만든다 4. 그거에 맞게 좌표를 계산해 주는 함수를 만든다 5. 그거를 받아서 양에게 준다 진짜 여기가 헬이었다 비슷하게 만드는 방법은 많지만 오차가 많기에....

언덕을 그리자!(4)

이전 글에서는 한 개의 언덕을 이동시켰다! 그러면 이제 이어 언덕이 나타나게 해 보자! 과정 1.point 클래스 고치기 2.draw 함수 고치기 3.bezier 클래스 고치기 과정이 좀 많아서 이렇게 적겠다 세부과정은 각 Step으로 적어 놓겠다! 1.point 클래스 고치기 stepup 에서 pointsx[0]에 초기값을 할당하게 하고 그다음 pointsx[1], pointsx[0]은 계속 스위치 하면서 화면 뒤에서 부터 언덕이 그려지게 만들기 위해 저렇게 설정해준다! 2.draw 함수 고치기 Step one 2차원 배열 생성! 2차원 배열을 만들어주는 함수를 만들어준다! setup함수에서 pointx/y에게 할당해준다! Step two 초기값 할당! 초기 값으로 설정해준다 이유는 이제 언덕이 뒤에서..

언덕을그리자!(3)

오늘은 그린 언덕을 움직이게 할 것이다 이거는 이전 작업에 비해 어렵지 않다 는 뻥이고 이것도 알고 보면 쉬운 거지 우리 같은 코린이 들 시간 잡아먹기 딱 좋은 작업이다 ㅋㅋㅋㅋ 과정 1.언덕움직이는 메서드 만들기 2. 스위치 메서드 만들기 3. 리턴 받는 함수를 다른 메서드로 따로 만들기 1. 언덕 움직이는 메서드 만들기 -자 일단 움직이는 메서드를 만들어보자! 이름은 무브 시스템이라 하겠다 왜냐면 별/구름도 이 함수를 같이 쓰게 될 것이다 자 이제 결과를 보면 띠용? 움직이지 않는다 난 분명 pointx를 1씩 늘려주고 있는데 이유는 바로 여기 있다 function draw() { background('gray'); pointsx=point.returnx(); pointsy=point.returny(..

언덕을 그리자(2)!

이전까지는 단순한 하나의 베지어로 언덕을 그렸다!이번엔 한 화면에 규칙적인 언덕 여러 개를 만드려 보려 한다!과정1. 포인트(좌표 받아오는 클래스) 수정2.bezier(좌표를 받아서 그리는 클래스) 수정! 1. 포인트 수정! 이전까지는 x, y배열 안에고정점 x, 제어점 x, 고정점 x, 제어점 x고정점 y, 제어점 y, 고정점 y, 제어점 y이렇게 줬지만 이제 제어점은 베지어한테 주고 고정점 x, 고정점 x, 고정점 x, 고정점 x고정점 y, 고정점 y, 고정점 y, 고정점 y으로 만들어 줬다!물론 제어점도 이전처럼 여기다가 넣어줘도 되지만 나는 bezier에서 관리를 했다! 2.bezier수정! 자 이제 this.secondx/y를 만들어서 +/-해줘서 제어점을 준다만들고 싶은 언덕을 대충 생각 해보..

언덕을 그리자(1)!

이제 bezier클래스에 있는 좌표들을 따로 꺼내서 포인트라는 클래스를 만들어서 관리할 것이다 이유는 1. 유지보수 2. 다양한 좌표를 사용하기 위해 bezier클래스는 그리기+양이 걷기 위한 함수를 빼고는 걷어내는 거다! 과정 1. 포인트 클래스 생성 2.x, y좌표 생성하기 3.bezier에게 전달해주기 4.bezier 클래스 재정비 1. 클래스 생성&2. 좌표 생성 자 이렇게 x/y를 리턴해주는 함수를 만든다 지금 봐서는 엥 이 정도로 간단한데? 클래스를 굳이 만든다고 할 수 있지만 나중에 언덕 모양도 더 이쁘게 만들고 언덕 수도 늘어나고 언덕이 움직이기 시작하면 불지옥이 되기 때문에 미리 나눠서 작업을 시작한다! 3.bezier에게 전달 p5.js메인 에와서 클래스를 받을 변수 그리고 받을 배열을..

스프라이트 이미지 움직이기(3)

이제는 기울기를 만들 차례이다! 과정 1. 탄젠트 값 구하기 2.atan2 사용 3.draw 에서 바꿔주기 4.p5js rotate() 사용 5.rotate() 보조 값 주기 1. 탄젠트 구하기 p5js.org/ko/reference/#/p5/bezierTangent reference | p5.js p5js.org 역시 내장되어있는 예제를 보면 곡선 밑으로 서 있는 막대기들을 볼 수 있는데 그게 힌트다! 자 코드를 가져와서! let tx = bezierTangent(85, 10, 90, 15, t); let ty = bezierTangent(20, 10, 90, 80, t); let a = atan2(ty, tx); 요 부분을 사용할 것이다! 아마도 이 부분은 stackoverflow.com/questi..