전체406 Mocking 생성하기 1. 라이브러리 다운로드 https://mvnrepository.com/search?q=Mockito gradle코드 땡겨오기 // https://mvnrepository.com/artifact/org.mockito/mockito-core testImplementation group: 'org.mockito', name: 'mockito-core', version: '4.9.0' // https://mvnrepository.com/artifact/org.mockito/mockito-junit-jupiter testImplementation group: 'org.mockito', name: 'mockito-junit-jupiter', version: '4.9.0' gradle코드 추가후 Refresh해주기.. 카테고리 없음 2022. 12. 22. JUnit 이란? 추가하기 사전 기반 지식 TDD(Test-driven Development) 테스트 주도 개발에서 사용한다. 코드의 유지 보수 및 운영 환경에서의 에러를 미리 방지 하기 위해서 단위 별로 검증하는 테스트 주도 개발 방법론이다. 단위 테스트란 작성한 코드가 기대하는대로 동작을 하는지 검증하는 절차이다. JUnit Java 기반의 단위 테스트를 위한 프레임워크이다. Annotation기반으로 테스트를 지원하며, Assert를 통해 검증한다. JUnit Platform: 테스트를 실행해주는 런처와 TestEngine API를 제공함. Jupiter: TestEngine API 구현체로 JUnit5에서 제공함. Vintage: TestEngine API 구현체로 JUnit3, 4에서 제공함. Jupiter API: as.. 카테고리 없음 2022. 12. 22. Gradle란 Gradle이란 Gradle란 오픈소스 빌드 자동화 툴이다. 자바 프로젝트를 진행하면서 외부 라이브러리들을 가져다가 사용한 적이 있다. 그 때마다 매번 직접 jar 파일을 가져와서 Classpath에 추가 했어야 했다. Gradle들을 사용하면 build.gradle이라는 파일에 명시를 하고 파일 재 갱신 처리하면 알아서 인터넷을 통해서 jar 파일을 다운 받아 추가해 준다.(m2 폴더) https://gradle.org/install/ Gradle | Installation Install the Gradle build tool on Linux, macOS or Windows, either manually or using a package manager like SDKMAN! or Homebrew. gr.. 카테고리 없음 2022. 12. 22. Spring Boot 게시글 작성 header.jsp 글쓰기 a태그를 누르게되면 href주소를타고 글쓰기 페이지로 넘어가게된다. HOME 로그인 회원가입 글쓰기 회원정보 로그아웃 save_form.jsp 글을쓸때 여러가지 도구를 사용할 수 있도록 라이브러리를 땡겨와서 사용을 할 수 있다. 글을 다 작성하면 글쓰기 a태그를 누르게되면 id값을 할당하여 js에서 데이터 처리를 해준다. 썸머노트 라이브러리 Title Content 글쓰기 완료 board.js 글쓰기 완료 버튼을 누르게되면 ajax통신을 통해서 url주소를 타고 db에 접근하여 저장하도록 처리를 해준다. db에 저장이 잘되었으면 context경로로 페이지를 리다이렉트 해준다. let index = { init: function() { $("#btn--save").bind("cl.. 카테고리 없음 2022. 12. 20. spring boot 로그인 기능 (form태그 로그인하기) SecurityConfig package com.demo.t1.config; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; import org.springframework.security.config.annotation.method.configurat.. 개발일지/스프링 2022. 12. 20. spring boot 회원가입 기능 SecurityConfig package com.demo.t1.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity; import org.springframework.secu.. 개발일지/스프링 2022. 12. 20. csrf적용한 로그인(아웃), 회원가입,댓글(작,삭),게시글(작,수,삭),회원정보(수정) SecurityConfig login_form.jsp username: password: signIn 로그인화면에서 소스보기로 확인해보면 토큰값을 받아오는걸 확인 할 수 있다. 회원가입 처리 header user.js let token = $("meta[name='_csrf']").attr("content"); let csrfHeader = $("meta[name='_csrf_header']").attr("content"); beforeSend: function(xhr) { xhr.setRequestHeader(csrfHeader,token) }, 게시글 작성 save: function() { let xcheckTitle = XSSCheck($("#title").val()); let token = $(".. 개발일지/스프링 2022. 12. 20. spring boot 댓글 삭제기능 detail.jsp 돌아가기 수정 삭제 글 번호 : ${board.id + 100} 글 작성자 : ${board.user.username} ${board.title} ${board.content} 등록 댓글 목록 ${reply.content} 작성자 : [ ${reply.user.username} ] 삭제 board.js let index = { init: function() { $("#btn--save").bind("click", () => { this.save(); }); $("#btn--delete").bind("click", () => { this.deleteById(); }); $("#btn--update").bind("click", () => { this.update(); }); $("#btn.. 개발일지/스프링 2022. 12. 19. XSS 예방 XSS(크로스 사이트 스크립트) 란? 검증되지 않은 입력 값으로 인해 사용자의 웹 브라우저에서 의도하지 않은 악성 스크립트가 실행되는 취약점 외부 입력이 동적 웹 페이지 생성에 사용될 경우, 전송된 동적 웹 페이지를 열람하는 접속자의 권한으로 부적절한 스크립트가 수행되는 취약점 공격을 통해 사용자의 개인정보 및 쿠키정보 탈취, 악성코드 감염, 웹 페이지 변조 등이 발생 공격 대상은 서버가 아니라, 클라이언트이다. https://github.com/naver/lucy-xss-servlet-filter GitHub - naver/lucy-xss-servlet-filter Contribute to naver/lucy-xss-servlet-filter development by creating an accoun.. 개발일지/스프링 2022. 12. 19. 카카오 로그인 기능 생성 및 셋팅(인가코드 발급받기, 토큰발급받기) https://developers.kakao.com/ Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com 내 애플리케이션 만들기 나중에 페이지를 넘겨줄 URL주소이다 (생성할 예정) 인가코드를 받기위해 나중에 Redirect URL이 필요하다 그러니 따로 메모장에 기록해두자 카카오톡 로그 설정하는법 https://developers.kakao.com/docs/latest/ko/kakaologin/rest-api Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인.. 개발일지/스프링 2022. 12. 15. 스프링 RestTemplate RestTemplate란 Spring에서 지원하는 객체로 간편하게 Rest 방식 API를 호출할 수 있는 Spring 내장 클래스입니다. Spring 3.0부터 지원되었고, json, xml 응답을 모두 받을 수 있습니다. Rest API 서비스를 요청 후 응답 받을 수 있도록 설계되어있으며 HTTP 프로토콜의 메소드(ex. GET, POST, DELETE, PUT)들에 적합한 여러 메소드들을 제공합니다. ※ Spring Framework 5부터는 WebFlux 스택과 함께 Spring은 WebClient 라는 새로운 HTTP 클라이언트를 도입하여 기존의 동기식 API를 제공할 뿐 만 아니라 효율적인 비차단 및 비동기 접근 방식을 지원하여, Spring 5.0 이후 부터는 RestTemplate는 dep.. 개발일지/스프링 2022. 12. 15. JPA 네이밍전략, 네이티브 쿼리 사용하기 간단한 CRUD 기능은 자동으로 생성해주지만 나중에 필요한 데이터를 가져오기위해 복잡한 쿼리들이 사용할때가있다. 그럴땐 직접 쿼리를 짜서 기능을 만들어주어야 한다. 복잡한 쿼리를 사용하기에는 네이티브 쿼리를 사용하는게 좋다. 개발일지/스프링 2022. 12. 12. 이전 1 ··· 6 7 8 9 10 11 12 ··· 34 다음