전체 글
-
Spring Security - 로그인Framework & Library/Spring Security 2021. 10. 1. 15:06
로그인 설정 SecurityConfig 클래스 수정 @Override protected void configure(HttpSecurity http) throws Exception { http.csrf().disable(); http.authorizeRequests() .antMatchers("/user/**").authenticated() // 인증 필요 .antMatchers("/manager/**").access("hasRole('ROLE_ADMIN') or hasRole('ROLE_MANAGER')") // ROLE_ADMIN, ROLE_MANAGER 권한 필요 .antMatchers("/admin/**").access("hasRole('ROLE_ADMIN')") // ROLE_ADMIN 권한 필요..
-
Spring Security - 회원가입Framework & Library/Spring Security 2021. 9. 30. 16:21
User 객체 생성 @Entity @Data public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private int id; private String username; private String password; private String email; private String role; private String provide; private String providerId; @CreationTimestamp private Timestamp createDate; } ㆍ 위 코드는 회원가입을 하는 사용자의 정보를 받기 위한 User 객체이다. ㆍ User 객체는 id, 사용자 이름, 패스워드 등의 정보를 담고 있다. 회..
-
Spring Security - 시큐리티 설정Framework & Library/Spring Security 2021. 9. 30. 15:08
IndexController 수정 @Controller public class IndexController { @GetMapping({"", "/"}) public String index() { return "index"; } @GetMapping("/user") @ResponseBody public String user() { return "user"; } @GetMapping("/admin") @ResponseBody public String admin() { return "admin"; } @GetMapping("/manager") @ResponseBody public String manager() { return "manager"; } @GetMapping("/loginForm") public S..
-
Spring Security - 프로젝트 생성 및 환경설정Framework & Library/Spring Security 2021. 9. 30. 14:21
MySQL 사용자 및 DB생성 create user 'qlsdud'@'%' identified by 'qlsdud0604'; GRANT ALL PRIVILEGES ON *.* TO 'qlsdud'@'%'; create database security; use security; ㆍ 위에 sql 문을 차례대로 실행해서 사용자 및 DB를 생성한다. Spring Boot 프로젝트 생성 ㆍ 위 사진과 같은 의존성을 포함한 Spring Boot 프로젝트를 생성한다. application.yml 설정 server: port: 8080 servlet: context-path: / encoding: charset: UTF-8 enabled: true force: true spring: datasource: driver-..
-
SSE 프로토콜을 활용하여 제작한 채팅 애플리케이션Projects/Toy Projects 2021. 9. 28. 11:13
기술 스택 IDE - Visual Studio Code - IntelliJ IDEA Language - HTML - CSS - JavaScript - Java Back-end - Spring Boot - Maven - Lombok Database - Mongo DB 프로젝트 목적 ㆍ 비동기 서버의 특성을 파악한다. ㆍ SSE 프로토콜의 동작 과정을 이해한다. 프로젝트 기능 ㆍ 아이디 입력 기능 ㆍ 채팅방 번호 입력 기능 ㆍ 채팅 기능 비동기 서버의 특성 기존의 서블릿 기반의 스프링(동기 서버) ㆍ 기존의 서블릿 기반의 스프링은 Tomcat을 기반으로 동작하고, 동기방식을 사용한다. ㆍ 동기 서버의 동작 방식은 위 사진과 같이 사용자의 요청이 있을 때마다 스레드가 생성된다. ㆍ 스레드가 많아지면 conte..
-
코딩 테스트 - 다익스트라(Dijkstra)의 개념과 문제Coding Test/Coding Test 문제 추천 2021. 9. 26. 14:29
다익스트라(Dijkstra) 알고리즘 다익스트라 알고리즘이란? ㆍ 그래프 상의 한 노드에서 다른 모든 노드까지의 최단 거리를 구할 때 유용하게 사용되는 알고리즘이다. ㆍ 노드와 노드 사이의 간선의 가중치가 0 이상의 정수일 때만 사용이 가능하다. 다익스트라 문제 난이도(하) ㆍ 백준 1753번 : 최단경로 (🥇 골드 5 티어) ㆍ 백준 1916번 : 최소비용 구하기 (🥇 골드 5 티어) ㆍ 백준 5972번 : 택배 배송 (🥇 골드 5 티어) ㆍ 백준 14284번 : 간선 이어가기 2 (🥇 골드 5 티어) 난이도(중) ㆍ 백준 1446번 : 지름길 (🥈 실버 1 티어) ㆍ 백준 1504번 : 특정한 최단 경로 (🥇 골드 4 티어) ㆍ 백준 1238번 : 파티 (🥇 골드 3 티어) ㆍ 백준 17396번 : ..