일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- JPA
- 스프링 부트 기능
- JPA주의사항
- git
- spring서버
- jpa에러
- json
- Q 클래스
- 복합키
- Error creating bean with name
- 빈생성안됨
- @IdClass
- Filter
- uncheck Exception
- jwt메서드
- REST API 규칙
- 스프링 부트 공식 문서
- ERD 작성
- Spring Spring boot 차이
- Unsatisfied dependency
- REST란
- github
- 최종 프로젝트
- 스프링부트오류
- 1차캐시
- json gson 차이
- 인텔리제이
- jpa회원가입
- JoinColumn
- queryDSL
- Today
- Total
목록2023/10 (12)
Everyday Dev System
코드를 작성한 후에 코드를 줄이거나 더욱 빠르게 할 수 있는 방법을 생각해보았다. 문제점 : 코드를 짜는데 시간이 많이 걸린다.. 많이 풀다보면 익숙해지지 않을까? 1. 개선 전의 코드 class Solution { public int[] solution(int numer1, int denom1, int numer2, int denom2) { int[] answer = {0,0}; int denom, numer = 0; if(denom1==denom2){ denom = denom1; numer = numer1 + numer2; }else { denom = (denom1*denom2); numer = (denom1*numer2) + (denom2*numer1); } int denom_result = den..
30분 고민해서 나온 코드와 이에 따른 개선 후의 코드이다. 해당 문제 풀 때의 나의 문제점 : 시간이 많이 소요됨. 코드가 길다 1. 개선 전 코드 class Solution { public String solution(String my_string, String overwrite_string, int s) { String answer = my_string.substring(0,s); int arr1_length = my_string.length(); int arr2_length = overwrite_string.length(); for(int j=0; j0){ for(int i=s+arr2_length; i0){ for(int i=s+arr2_length; i
요약 concat() 메서드는 새로운 인스턴스를 생성하기 때문에 성능, 속도 면에서 떨어지므로, 간단한 문자열 추가의 경우에는 '+' 연산자를 사용하는 것이 좋다. 복잡하거나 반복적인 문자열 수정 시 StringBuilder 혹은 StringBuffer를 사용하는 것이 좋다. 그러나, 멀티스레드를 이용하여 하나의 문자열을 수정할 필요가 있다면 StringBuffer 클래스를, 그렇지 않다면 StringBuilder 클래스를 사용하여 동작 속도를 빠르게 하는 것이 좋다. 1. concat() String 클래스에서 제공하는 기본 메서드. 합친 문자열을 String으로 생성한다. concat() 메서드를 활용하면 새로운 인스턴스를 생성하기 때문에 성능, 속도 면에서 떨어진다. import java.util...
class Solution { public int solution(int[] arr1, int[] arr2) { // arr1이 크면 1, arr2가 크면 -1 , 같다면 0 int arr1_length = arr1.length; int arr2_length = arr2.length; if(arr1_length == arr2_length){ int arr1_sum =0; int arr2_sum =0; for(int i=0; i arr2_length ? 1 : -1; } } }
배열에서 문자열 대소문자 변환하기 Stream 함수를 모르는 사람들이 있을 수 있고, 라이브러리를 임포트하여 사용해야 하기 때문에, 가독성과 짧은 코드를 위해 삼항 연산자를 활용한 코드가 가장 적절한 것 같다. 1. if ~ else()문 활용 class Solution { public String[] solution(String[] strArr) { int length = strArr.length; String[] answer = new String[length]; for(int i=0; i
1~n 까지의 숫자 중 k의 배수를 배열로 저장하여 오름차순으로 반환하라. 코드 틀: class Solution { public int[] solution(int n, int k) { int[] answer = {}; return answer; } } 정답을 못 풀어서 그냥 풀이를 보았다. 타인의 풀이: 더보기 class Solution { public int[] solution(int n, int k) { int length = n / k; int[] answer = new int[length]; for (int i = 1; i
XSS (Cross-Site Scripting) XSS이란? 부적절한 의도를 갖고 공격하려는 사이트에 악성 스크립트를 삽입할 수 있는 보안 취약점이다. 사용자의 쿠키를 탈취하여 세션 하이재킹 공격이 가능합니다. (사용자를 대신하여 악의적인 활동을 수행할 수 있습니다.) 세션 하이재킹? - 공격자가 인증 작업이 완료되어 정상 통신을 하고 있는 다른 사용자의 세션을 가로채어 별도의 인증 작업 없이 해당 세션을 통해 통신을 계속하는 행위 Stored XSS Reflected XSS
출처(Origin)란? 출처(Origin)는 다음과 같은 3가지를 합친 것을 의미합니다. 프로토콜 : http과 https는 다른 프로토콜 입니다. 도메인 : naver.com과 google.com 은 다릅니다. 포트 번호 : 8080과 22 포트는 다릅니다. ex) https://www.google.com:8080 Cross-Origin이란? 프로토콜, 도메인, 포트 번호 중 한가지라도 상이한 경우를 말합니다. CORS (Cross-Origin Resource Sharing) 다른 출처에서도 리소스를 안전하게 공유할 수 있도록 하는 것이 CORS 정책입니다. 이와 반대로 같은 출처에서만 리소스를 공유할 수 있는 규칙을 가진 정책은 SOP(Same-Origin Policy) 입니다. 보통 브라우저에서는 ..
JNI에 대한 설명을 다음 글을 참고 하면 된다. 2023.09.30 - [나의 호기심] - JNI란? 아래는 JNI를 이용하는 자바 프로그램 코드이다. public class JNIExample { static { System.loadLibrary("MyJNILibrary"); } private native int getNumber(); private native void printHelloWorld(); public static void main(String[] args){ JNIExample jni = new JNIExample(); jni.printHelloWorld(); System.out.println(jni.getNumber()); } } System.loadLibrary("MyJNILibr..