인텔리 J - 키맵 세팅하는 이유?젯브라인: 러시아 : 인텔리 J, 안드로이드 스튜디오, 코틀린자바개발자: 안드로이드 개발 !!! (안드로이드 스튜디오): 인텔리 J (자바개발, 스프링개발, 앱개발) 유료스프링 개발 툴: STS - 인텔리 J로 맞출 것이다. 이걸로 맞
java version 2.2.9 Spring Boot DevToolshttps://docs.spring.io/spring-boot/docs/1.5.16.RELEASE/reference/html/using-boot-devtools.htmlLombokhttps&
스프링부트 강좌 4강(블로그 프로젝트) - 프로젝트 실행해보기test package를 만든다.spring -> Ioc -> 제어의 역전을 한다.너가 new 해서 메모리에 띄우지 마. 내가 new 해서 메모리를 띄울거야. 여기서 너는 => 나나는 => 스프링싱글톤 패턴
스프링부트 강좌 5강(블로그 프로젝트) - MySQL 환경세팅MySQL 한글 설정my.ini 파일MySQL 재시작한글 설정 확인show variables like 'c%';show variables like 'c%';사용자 생성 및 권한 주기 및 DB 생성\-- 유저이
스프링부트 강좌 7강(블로그 프로젝트) - Git설치 및 Github연동\-> 연동완료스프링부트 강좌 8강(블로그 프로젝트) - Git의 추상적 개념특정 스냅샷을 기억하는 것이다. 이 글은 유투버 겟인데어의 스프링 부트 강좌를 바탕으로 정리한 내용입니다.
1\. POSTMAN 설치https://www.postman.com/downloads/2\. HTTP1.1통신 \------------Write(응답)---------> A Byte Stream (8bit) B <-----------Read(요청
스프링부트 강좌 13강(블로그 프로젝트) - http요청 실습1ctrl + space -> 어노테이션 자동 임포트 개발자 도구(f12)network, get 확인할 수 있음Response Headers 클라이언트가 요청, 서버가 어떻게 응답을 해주었나content-ty
스프링부트 강좌 15강(블로그 프로젝트) - maven이란1\. Maven이란?상황: 프로젝트 이름이 blog이다. 필요한 라이버리리가 Ojdbc 라면, 오라클 드라이버를 사용하기 위해 첫번째로 오라클 사이트에서 ojdbc를 다운을 받는다. blog 프로젝트의 lib
스프링부트 강좌 17강(블로그 프로젝트) - yml설정하기1\. yaml 이란https://www.inflearn.com/questions/16184이 글을 참고하자! yaml 포맷은 xml, json에 비해 가독성이 좋고 간편하다. 2\. yml 설정web.
스프링부트 강좌 18강(블로그 프로젝트) - User테이블 생성Blog 테이블 만들기 (User, Board, Reply) application.yml 에서
스프링부트 강좌 20강(블로그 프로젝트) - Board테이블 생성이 보드를 누가 적었는지 알아야 한다. 그럼 유저의 아이디 값을 통해서 다시 유저를 셀렉트 하던지, 아니면 유저의 아이디 값으로 보더 유저를 조인해서 데이터를 가져올 수 있다. 하지만 orm 에서는 이 방
스프링부트 강좌 22강(블로그 프로젝트) - 연관관계의 주인세가지 클래스로 테이블을 만들긴 했다. 하지만 아직 완성되지 않았다. 연관관계의 주인을 제대로 이해하지 못했기 때문이다. 연관관계의 주인 = FK를 가진 오브젝트 웹 프로그램을 실행하면 화면이 나올 것이다. 게
스프링부트 강좌 23강(블로그 프로젝트) - JSON 사용법Json (왜?) 어떻게 사용?프랑스인 ---프: 안녕 ------------------->한국인 일본인 ---일: 안녕 -------------------->한국인 독일인 ---일: 안녕 -----------
스프링부트 강좌 24강(블로그 프로젝트) - 회원가입 위한 insert 테스트연관관계 만들기@ManyToOne@OneToMany@OneToOne@ManyToManyManyToMany는 사용하지 않는다. 그 이유는 서로의 primary key로만 중간 테이블을 생성해주는
스프링부트 강좌 26강(블로그 프로젝트) - id로 select 테스트얘가 리턴하는 타입이 user가 아니다. Optional 이다. Supplier는 인터페이스이고 get 함수를 들고 있는데 얘는 추상 메서드이기 때문에..인터페이스는 new할 수 없다. 인터페이스를
스프링부트 강좌 28강(블로그 프로젝트) - update 테스트sava 라는 함수는 원래 insert 할때 사용하는 것이다. 니가 만약 save를 할때 id 값을 넘겨주면 그 아이디 값이 만약 데이터베이스에 있다면 걔를 업데이트를 해준다. 근데 문제는 password,
스프링부트 강좌 30강(블로그 프로젝트) - 삭제하기 테스트더티체킹 : 찌꺼기를 체크해서 날리는 것이다. 더러운 것들을 찾아 날리는 것이다.void : return 이 없음open declaration eclipse : ctrl+f3만약 db에 없는 user를 삭제한다
스프링부트 강좌 31강(블로그 프로젝트) - Exception처리하기주소창에 http://localhost:8000/blog/dummy/user/1 get 요청 시 다음과 같은 화면을 볼 수 있다. (이 전에는 수많은 에러메시지들이 있었음...)\-이 글은 유
스프링부트 강좌 32강(블로그 프로젝트) - 스프링 기본파싱전략과 json통신1\. Get요청(select)주소에 데이터를 담아 보낸다. 데이터 형태는 key=valuehttp://localhost:8000/blog/user?usernmae=ssar위와 같이
스프링부트 강좌 33강(블로그 프로젝트) - 메인화면 만들기key default로 바꾸고 ctrl + shift + f => jsp 정렬스프링부트 강좌 35강(블로그 프로젝트) - 회원가입을 위한 기초세팅메뉴와 푸터회원가입 화면동적언어 요즘 많이들 쓰시는 JavaScr
스프링부트 강좌 36강(블로그 프로젝트) - Ajax를 사용하는 이유 첫번째Ajax를 사용하는 첫번째 이유 : 고객이 사용하는 클라이언트는 크게 2가지로 웹과 앱이 있으며, 일반적으로 서버로 부터 응답받을때 웹은 HTML파일을 받고 앱은 데이터(JSON)를 받는다. 이
스프링부트 강좌 38강(블로그 프로젝트) - 회원가입 하기 Ajax요청@Service 서비스가 왜 필요할까? 트랜잭션 관리 서비스 의미 때문송금이라는 서비스 홍길동 ---3만원송금---> 임꺽정5만원 2만원홍길동 금액 update() - commit이 일어나
스프링부트 강좌 40강(블로그 프로젝트) - ResponseDto 수정스프링부트 강좌 41강(블로그 프로젝트) - DB격리수준 READ COMMIT트랜잭션 : 일이 처리되기 위한 가장 작은 단위유튜브 1강을 위한 것1\. 강의 준비2\. 영상 찍기3\. 영상 업로드이
스프링부트 강좌 46강블로그 프로젝트 전통적인 방식의 로그인 방법로그인을 위함 함수를 만들기UserRepository에다가..!findByUsernameAndPassword라는 함수는jap가 들고있는 함수가 아니다. 하지만 자동적으로 쿼리가 실행된다. 첫번째 물음표에는
스프링부트 강좌 49강(블로그 프로젝트) - 스프링 시큐리티 로그인 페이지 커스터마이징앞에 auth를 붙인다../auth/\*\* 라고 해도 무방localhost:800/으로 들어가면..Access Denied하지만 http://localhost:8000/au
스프링부트 강좌 51강(블로그 프로젝트) - XSS 와 CSRFXSS 이란? 자바스크립트로 공격하는 것이다. 게시판이 하나 있다. 글목록이 있는 게시판이다. 글쓰기 버튼이 밑에 하나 있는데 클릭하면 글쓰기 화면으로 갈 것이다. 여기서 글을 쓴다. 글쓰기 완료 버튼을 클
스프링부트 강좌 52강(블로그 프로젝트) - 스프링 시큐리티 로그인username 과 password를 갖고 "/auth/loginProc" 로 이동한다. 현재 프로젝트 내에에서 UserApiController.java 안에는 /auth/joinProc 만 존재한다.
스프링부트 강좌 53강(블로그 프로젝트) - 글쓰기 완료이 주소를 호출했을 때 글쓰기 창으로 이동할 것이다. 글쓰기를 눌렀을 경우는 회원만 가능함. 따라서 로그인 후에 들어와야 접속 가능하다!다음과 같이 글쓰기 화면이 잘 나타남을 볼 수 있다.summernote라는 아
스프링부트 강좌 54강(블로그 프로젝트) - 글목록보기index로 갈때, 즉 메인 페이지로 왔을 때 데이터를 가져와야 한다. 스프링에서는 데이터를 가져갈 때 모델이 필요하다. BoardController.java누가 슬러시 주소를 요청하면 모델에 글 목록을 다 들고온다
스프링부트 강좌 55강(블로그 프로젝트) - 글목록 페이징하기글 목록을 호출할때 findAll을 호출한다. 이때 특정 페이지를 호출할 수 있다. @Pageable를 받아서 !!이것을 이용하여 페이징을 해보도록 하자. Page를 넘기면 Page로 리턴받음. 그래서 get
스프링부트 강좌 56강(블로그 프로젝트) - 글 상세보기BoardController.javadetail로 리턴하게 만들어줌..BoardService.javadetail.jsp onclick="history.back() 하면 기록에 맞춰 전 화면으로 돌아간다. 이 점은
스프링부트 강좌 57강(블로그 프로젝트) - 글 삭제하기board 를 셀렉트 하게 되면 유저 정보나 게시글에 대한 댓글 정보를 EAGER 전략을 통해 같이 들고 온다. 다음과 같이 적으면 정보를 들고 올 것이다. @Transactional(readOnly = true)
스프링부트 강좌 58강(블로그 프로젝트) - 글 수정하기button 이 아니라 하이퍼링크로 해보자. dd@PathVariable를 이용하여 id값을 받는다. 그리고 모델을 만든다. 모델은 해당 데이터를 가지고 view까지 이동하는 것이다. board 데이터를, boar
카카오 로그인 (OAuth2.0 라이브러리를 쓰지 않고 날 코딩 하려고 해요)시큐리티 이론 설명스프링부트 동작 원리 이론 설명댓글쓰기엄청난 노가다... 곧 할 거에요.관리자 페이지 만들기이건 그냥 간단히 회원 관리만 하는 페이지 만들꺼에요. 이거 해야 권한에 대한 개념
스프링부트 강좌 59강(블로그 프로젝트) - 스프링작동원리 복습제일 처음에 톰켓이 시작된다. 시작이 되면 필터들이 올라온다. 여기 필터에는 다양한 필터들이 있다. 권한, 인증, 한글 인코딩 등, 입구에 들어올 때 미리 걸러내야 할 것을 걸러준다. 그리고 필터들이 메모리
스프링부트 강좌 60강(블로그 프로젝트) - 회원수정 1회원정보username은 수정할 수 없으니 readonly로 바꿈email, password는 수정할 수 있음 header.jsp현재 세션으로 저장된 로그인한 객체가 principal이라는 이름으로 저장되어있다.
스프링부트 강좌 61강(블로그 프로젝트) - 회원수정 2세션값을 변경하기스프링 시큐리티에서 약간 까다롭다. 유저 서비스에서 회원수정이라는 단어가 종료될 때 userService.회원수정(user) 함수가 호출이 되고 종료가 되는 타이밍 세션값을 변경하는 방법은 시큐리티
를 통해서 하려고 했지만 제대로 세션에 저장되지 않았다. waring 이 떴다. 직접 접근을 해서 세션을 만드는 게 안된다. 예전에는 되었는데.. 시큐리티 컨텍스트에 Authentication을 내가 강제로 집어넣는 것은 안될 것 같다. (인증 로직을 강제로 수행하는
스프링부트 강좌 62강(블로그 프로젝트) - 카카오 로그인 환경설정카카오 개발자 사이트(https://developers.kakao.com/) 에 들어가서 새로 어플리케이션을 만들어놓자. 클라이언트키: 2170cc08bffc9520b36bca4817118401
스프링부트 강좌 63강(블로그 프로젝트) - 카카오 로그인 OAuth2.0 개념이해세상에는 무한대의 페이지들이 있다. 홍길동이라는 사람은 A, B, C 사이트에 가입한다. 나는 실제 세상에서 1명인데 인터넷 세상에서는 내가 사이트의 개수만큼 존재하게 된다. 그 말은 내
스프링부트 강좌 64강(블로그 프로젝트) - 카카오 로그인 엑세스토큰 받기카카오 로그인 버튼 리소스를 다운받아 UI를 완성함RestAPI https://kauth.kakao.com/oauth/authorize?client_id=2170cc08bffc9520b3
스프링부트 강좌 66강(블로그 프로젝트) - 댓글 디자인하기d-flex : flex 수평으로 맞춰준다justify-content-center: 가운데로 데려가 줌..justify-content-end : 오른쪽으로justify-content-between : 양쪽으로
스프링부트 강좌 67강(블로그 프로젝트) - 댓글 목록 뿌리기상세보기를 했을 때 댓글이 튀어나와야 하니까 boardService에서 작성해야 한다. 일단 레파지토리에 인터페이스를 하나 만든다. extends해서 JPA Prepositoyr로 등록한다. 티입은 Reply
스프링부트 강좌 68강(블로그 프로젝트) - 댓글 작성하기댓글 아이디 내림차순 정렬 댓글 등록하기 기능 .. -> 컴퓨터 껐다가 키니까 작동함 ;button tag에 type을 적지 않으면 submit 이 발생함. 그래서 타입을 명시해줘야 함. detail.jspBoa
스프링부트 강좌 69강(블로그 프로젝트 ) - 댓글 작성시 Dto 사용해보기BoardApiController.java각각 따로따로 들고와서 진행하다 보니까 ... 프로그램이 지저분해지는 경향이 있다.dto 를 사용하지 않은 이유는 ...? 프로그램이 거대해지면 왔다갔다
스프링부트 강좌 71강(블로그 프로젝트) - @Autowired의 원리@Autowired 는 DI이다. 디펜젼시 인젝션.원래 인젝션이 어떻게 일어날까? 기본적으로 생성자가 있다. 스프링이 컴포넌트를 스캔할 때 서비스 어노테이션을 읽고 나서 어? 이 BoardServic
스프링부트 강좌 72강(블로그 프로젝트) - 회원가입 문제와 게시글 삭제 문제 해결<회원가입 문제>동일한 이름을 회원가입 할시 화면에서 마치 회원가입이 나온 것처럼 다시 HOME으로 돌아가지만 사실 db에는 반영되지 않고 있음. 모든 Exception을 Globa
스프링부트 강좌 73강(블로그 프로젝트) - 댓글 삭제 마지막 강board.js에 replyDelete 함수 추가BoardApiControlle 에 replyDelete 함수 추가BoardService에 댓글삭제 함수 추가 \-이 글은 유투버 겟인데어의 스프링 부트 강
스프링 부트를 활용한 블로그 프로젝트Html + JavaScript + bootstrap4 + ajaxJava +Springboot Frameworkmysql회원가입, 로그인사용자는 본인이 글을 등록할 수 있다비밀번호 암호화 (해쉬)카카오톡 로그인비밀번호 수정, 회원