본문 바로가기
반응형

text73

spring boot login 중복 로그인 방지 저번 spring boot의 기본 로그인을 구현했다. spring boot 로그인 (+spring security, mysql) spring boot 로그인 (+spring security, mysql) springSecurity 사용 pom.xml 에 아래와 같이 security 설정 추가 org.springframework.boot spring-boot-starter-security {프로젝트이름}Application.java 가 존재하는 폴더에 config folder 생성 + securityConfig.java 생성 demo.config.Se hoonzi-text.tistory.com 이전 로그인 코드에 중복 로그인 방지를 추가해보자. 중복 로그인 방지 로직을 넣기 위해 기본 로그인 페이지가 아닌.. 2023. 5. 28.
spring boot 로그인 (+spring security, mysql) springSecurity 사용 pom.xml 에 아래와 같이 security 설정 추가 org.springframework.boot spring-boot-starter-security {프로젝트이름} Application.java 가 존재하는 폴더에 config folder 생성 + securityConfig.java 생성 demo.config.SecurityConfig에 기본적인 코드 추가 @Configuration public class SecurityConfig{ @Bean public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { http.csrf().disable() .cors().disable() .authoriz.. 2023. 5. 28.
[18, 9].sort() = [18, 9] javascript sort weird... [18,9]를 sort 하면 어떻게 될까? array에 많이 들어있지도 않다. 숫자는 딱 2개… 겨우 단 2개… 컴퓨터를 사용하지 않고도, 심지에 이제 막 숫자를 배우기 시작하는 어린아이에게 18이 큰지, 9가 큰지 작은 숫자 순서대로 줄을 세워볼까? 라고 물어보면 단번에 답을 내릴 수 있는 아주 쉬운 문제다. 그런 줄 알았다. 단, javascript에게만 빼고 말이다…. 진짜 이게 무슨 말도 안 되는… 자.. 자.. 진정하고 가끔 그런 게 있을 수 있다. (아니 말도 안 되지만) 숫자라고 안 받아들이고 문자로 바꿔서 그런 거 아닐까? 제대로 정렬하기 위해서는 sort function의 인자값으로 내가 정의한 compare function(비교 함수)을 넣어줘야 한다. 아래와 같이 말이다. [18, 9.. 2023. 5. 4.
Identifier '변수' has already been declared check 이번에 js 코딩하면서 새로 발견한 오류와 그에 대한 해결책에 대해서 써보려 한다. 내가 만난 문제는 let을 중복 선언하게 되면서 let으로 선언한 변수가 재 선언될 수 없다는 에러 표시를 만났었다. Identifier '변수' has already been declared check @@: 아니 당연히 중복으로 선언하면 안 되지;; 당연히 알고 있다. 하지만 상황은 이랬다. html 안에 탭을 선택하면 서버에서 html을 불러와 내부에 넣게 되는데, 이때 삽입되는 html이 가지고 있는 js 파일 내 변수명과 외부에 이미 선언된 html 간의 let이 충돌하는 문제였다. 문제를 재연하기 위해 간단하게 만들어 보았다. index.html 간단하게 html(index.html)을 만들었다. 본인이 실행하.. 2023. 4. 3.
excel hyper link 삽입시 주의 사항 (# -> %23 이 될때) 이번에 자바로 엑셀에 값을 넣고 생성하면서 문제가 생긴 부분이 생겼고, 해결하는 과정을 적어보고자 한다. 기존에 엑셀에 외부링크를 넣을 때 (정확히는 인터넷 페이지 주소, url) 아래와 같이 코드를 짰었고, 문제가 없었다. String link = ""; HSSFWorkbook workbook = new HSSFWorkbook(); HSSFSheet sheet = workbook.createSheet("sheet1"); HSSFRow row = null; HSSFCell cell = null; row = sheet.createRow(0); cell = sheet.createCell(0); cell.setCellValue(link); Hyperlink link_article = workbook.getCr.. 2023. 4. 2.
날짜 계산 [날짜 간 차이, 주(week) 계산, 날짜 더하기 빼기] 주먹구구 js 코딩~ 할 때마다 찾아보는 듯해서 어딘가 정리해 놓기... (아마 점점 추가하지 않을까...?) 날짜 객체 생성 const date = new Date(); 날짜에 상수 더하기 빼기 let date = new Date("2023-03-14"); console.log(date); // 2023-03-14T00:00:00.000Z let plus_day = new Date(date.setDate(date.getDate() + 1)); console.log(plus_day); //2023-03-15T00:00:00.000Z let minus_day = new Date(date.setDate(date.getDate() - 2)); console.log(minus_day); //2023-03-13T.. 2023. 3. 24.
나는 인내심이 적고 적어.. (progress bar) tl;dr System.out.print(”…. \r”) 사용 시 해당 줄에서 지워지고 다시 써짐 애니메이션으로 보여지는건 직접 구현하거나, 잘 만들어진 거(예를 들어) 가져다가 쓰세요! intellij로 자바 실행 시 오래 걸리는 작업의 경우, 콘솔창(intellij)에서 print 찍어 놓은 게 없으면 하염없이 기다려야 한다... 이 경우 얼마나 진행됐는지 알고 싶을 때는 로딩바 (progress bar)라고 불리는 게 필요한데 오늘은 직접 한번 코드로 구현해 보자. 일단 오늘의 글을 도와줄 코드 public class mainClass { public static void main(String[] args) { mainClass mainClass = new mainClass(); int n = 69.. 2023. 3. 15.
싱글턴 패턴 (Singleton pattern) 간단 정리 싱글턴 패턴 정리 목차 1. 싱글턴 패턴이 뭔지? 2. 왜 쓰나요? 언제 쓰나요? 3. 어떤 문제가 있나요? 4. 코드로 살펴보자 5. 해당 singleton 패턴을 사용하는 java library 소개 6. 참고 싱글턴 패턴이 뭔지? 싱글턴 패턴은 객체 지향 디자인 패턴 중 하나로, 어떤 클래스의 인스턴스가 오직 하나임을 보장하는 패턴이다. 이 패턴은 전역 변수를 사용하여 클래스의 인스턴스를 저장하고, 해당 클래스의 인스턴스를 생성하는 메소드를 제공, 이렇게 하면 언제 어디서든지 해당 클래스의 인스턴스에 접근할 수 있다. 왜 쓰나요? 언제 쓰나요? 왜 쓰나요? 전역 변수를 사용하지 않고도 하나의 인스턴스만 생성 다수의 스레드에서 동시에 접근하더라도 안전하게 사용 인스턴스를 생성하는 비용이 큰 경우, 프.. 2023. 3. 14.
어댑터 패턴(Adapter pattern) 간단 정리 내가 이해한 어댑터 패턴 간단 정리 (tl;dr) 사용하고자 하는 모듈과 실제 모듈 간의 호환이 되지 않을 때 사용하는 디자인 패턴 중 하나이다. 어댑터 클래스를 구현해 기존 모듈을 상속, 혹은 주입받아 기존 모듈의 동작 & 호환되어야 하는 동작을 adapt 시킨다. 아래는 내가 다른 정리글들을 보면서 나눈 구분들 상황에 따른 구분 먼저 가정이 필요하다. [사용해야 하는 모듈은 내가 개발하는 곳 이외에도 사용처가 많아 수정이 불가능 하다!!] 기존 모듈 존재 but 모듈 수정 불가 so, 새로운 로직이 필요할 때 기존 모듈 존재 x (아직 미완성) but 모듈 수정 불가 so, 새로운 로직이 필요할 때 *여기서 새로운 로직이란? 확장이 필요 (할 수도) 할 때-> new 함수 생성 기존 모듈의 기능이 전.. 2023. 3. 10.
반응형