300x250
반응형

Back-End 99

[C] C 비트연산자(연산자 &, |, ^, ~, <<, >>, and, or, xor, 비트 반전, 비트 이동)

C 언어는 비트끼리 연산을 할 수 있는 연산자가 있습니다. 그 종류는 다음과 같습니다. 연산자 연산자의 기능 & 비트단위로 AND 연산을 한다. | 비트단위로 OR 연산을 한다. ^ 비트단위로 XOR 연산을 한다. ~ 단항 연산자로서 피연자의 모든 비트를 반전시킨다. 피연산자의 비트 열을 오른쪽으로 이동시킨다. 1. & 연산자 ​ & 연산은 두 개의 비트가 모두 1일 때 1을 반환하는 AND 연산을 합니다. 따라서 & 연산자의 비트단위 연산의 결과는 다음과 같습니다. 연산 결과 0 & 0 0 0 & 1 0 1 & 0 0 1 & 1 1 코드 출처 : 윤성우, 「열혈 C프로그래밍」, 93p 위 연산의 결과 4의 비트는 다음과 같습니다. 00000000 00000000 00000000 00000100 ​ 즉 ..

Back-End/그 외 2023.02.16

[Java] RSA 방식을 이용한 전자 서명

1. RSA 방식이란 공개키와 개인키를 이용한 대표적인 암호화 방식이다. 전자 서명이 가능한 최초의 알고리즘이다. AES와 DES와 같은 대칭키 암호화 방식의 문제점인 키의 노출 문제를 해결한다. Kerckhoff가 만든 암호화 알고리즘이다. 2. 공개키와 비밀키 공개키 (Public Key) : 누구에게나 공개될 수 있으며 메시지를 보내는 발신자는 공개키를 통해 정보를 암호화한다. 비밀키 (Private Key) : 수신자는 비밀키를 암호화된 메시지를 복호화하는데 사용한다. 외부에 노출되지 않도록 안전하게 보관해야 한다. 3. 구현방식 구현 방식은 Client가 (로그인 시도자)가 평문을 비밀키를 가지고 암호화한 후 공개키를 DB에 저장하고 있는 서버는 사용자 정보 중 공개키를 조회할 수 있는 값으로 ..

Back-End/Java 2023.02.15

[Spring Cloud] Spring Cloud Config 에서 Github Private Repository 접근하기

지난 포스팅에서 Spring Cloud Config 를 통해 설정 외부화를 하는 과정을 알아보았다. 설정 외부화의 수단은 Github이었고 public repository에 있는 설정 파일에 대해 알아보았다. 이번에는 Github의 private repository에 접근하여 설정값을 가져오는 방법에 대해 알아보겠다. [MSA 시작 #4] Spring Cloud Config + Github 을 이용한 설정 변경 동적으로 반영하기 MSA를 하면 당연히 어플리케이션 개수가 많아지고 그에 따라 어플리케이션마다 있는 설정 파일도 많아진다. 이렇게 되면 관리의 어려움이 생기고 이번에도 이런 관리의 어려움을 해결해주기 위 oingdaddy.tistory.com git private repository Github에..

Back-End/Spring 2023.02.10

[Spring Cloud] Application의 설정 정보 (application.yml) 를 중앙에서 관리하기

해당 글은 원글 작성자분의 Spring Cloud Netflix Eureka 와 Spring Cloud Gateway 의 Built-in Route로 Predicates와 Filter 조작하기)에 의존하는 글입니다. 실습 환경을 따라하시려면 Eureka와 Gateway 글에 나온 실습을 따라하시길 권고드립니다. 목차 Gartner 에서 정의된 MSA 표준 구성 요소인 Config Store Server 자주 변경되는 설정 정보는 설정 정보만 담고 있는 서버에서 관리하고 이를 필요로 하는 서버에게 각각 뿌려주는 방식 우리가 구성한 서비스 구조 각각의 application.yml 서비스 구조의 문제점 Spring Cloud Config 란? 실습 Spring Cloud Config 프로젝트 생성하기 @Ena..

Back-End/Spring 2023.02.10

[Spring Boot] JPA를 활용하여 간단한 CRUD 게시판 만들기 ( 블로그 추천 )

아래 블로그는 JPA를 활용한 게시판에 대한 정보가 잘 정리되어있습니다. 들어가셔서 참고하시면 좋겠습니다. https://ldevlog.tistory.com/8 [Spring-Boot] JPA를 활용하여 간단한 CRUD 게시판 만들기(1) 시작하기 전에 간단하게 JPA를 알아보자면 Java Persistence API의 약자로 자바 진영의 ORM 기술 표준이다. 여기서 ORM 도 간단하게 알고 넘어가자면 Object Relational Mapping의 약자로 객체-관계 매핑 이란 뜻 ldevlog.tistory.com https://ldevlog.tistory.com/9 [Spring-Boot] JPA를 활용하여 간단한 CRUD 게시판 만들기(2) 저번 포스팅에서 화면 뼈대를 만들어 놨기 때문에 이번 포..

Back-End/Spring 2023.02.10

[JPA] Spring JPA Batch Insert 과연 생각대로 동작할까?

들어가며 Spring JPA를 사용하며 대량으로 insert 시, 1건씩 insert 되기에 성능이 너무 안나온다고 생각을 하고 있었습니다. 그래서 초반에는 bulk insert와 같은 키워드로 검색을 해보니 Hibernate Batch Insert라는 내용이 있어 그대로 설정을 해보았으나 1건씩 insert 되기는 마찬가지였습니다. 다른 사람들이 작성한 블로그를 읽어보면 뭔가 되는듯 한데, 나만 안되는 건가? 라는 생각이 들었고 끝내 원하던 방법을 찾아 그 내용을 공유하는 글을 작성하게 되었습니다.. 예제 코드는 아래 원글 작성자의 github에 있습니다. https://github.com/jaehun2841/spring-jpa-batch-insert-test GitHub - jaehun2841/spr..

Back-End/Spring 2023.02.10

[JPA] Spring Data JPA LIKE Query 예제

Spring Data JPA LIKE Query 예제 1. 소개 이 빠른 자습서에서는 Spring JPA 저장소 에서 LIKE 쿼리를 작성하는 다양한 방법을 다룰 것 입니다. 쿼리 방법을 만드는 동안 사용할 수있는 다양한 키워드를 살펴 보는 것부터 시작하겠습니다. 그런 다음 @Query 어노테이션을 명명 된 순서화 된 매개 변수로 다룰 것 입니다. 2. 기본 세팅 이 예에서는 영화 테이블을 쿼리 합니다. Movie 엔터티를 정의 해 봅시다 : @Entity public class Movie { @Id @GeneratedValue(strategy = GenerationType.SEQUENCE) private Long id; private String title; private String director;..

Back-End/Spring 2023.02.10

[JPA] 엔티티와 매핑. @Entity, @Table, @Id, @Column..

| 엔티티와 매핑 객체와 테이블 매핑 : @Entity, @Table 기본 키 매핑 : @Id 필드와 컬럼 매핑 : @Column 연관관계 매핑 : @ManyToOne, @JoinColumn @Entity // name과 age Column에 unique 제약조건 추가 @Table(name="MEMBER", uniqueConstraints = {@UniqueConstraint( name = "NAME_AGE_UNIQUE", columnNames = {"NAME", "AGE"} )}) public class Member { // 기본키 매핑 @Id @Column(name = "ID") private String id; // not null, varchar(10) @Column(name = "NAME", n..

Back-End/Spring 2023.02.10

[Java] 자바 byte 단위로 문자열 자르기

자바에서 문자열 길이를 byte 단위로 가져오는 방법은 다음과 같다. UTF-8 기준 한글은 3바이트, 알파벳 대소문자나 숫자 및 띄어쓰기는 1바이트로 계산된다. String str = “테스트”; int bytesLen = str.getBytes().length; 문자열을 byte 단위로 자르기 위해서는 String 생성자를 이용하는 방법이 있다. 알파벳 대소문자와 숫자만으로 이뤄진 문자열을 자르기 위해서는 가장 좋은 방법이다. 아래는 6바이트까지 문자열을 자르는 예제다. String str = “테스트”; int endBytes = 6; String result = new String(str.getBytes(), 0, endBytes); 그런데 new String(str.getBytes(), 0, e..

Back-End/Java 2023.02.10

[Spring Boot] Spring Boot 배포하기(스프링부트 프로젝트 jar / war 파일로 빌드)

Spring Boot(스프링부트)를 이용하여 구축한 프로젝트를 jar 또는 war 파일로 배포할 수 있다. 스프링부트 애플리케이션을 개발해 보았다면, 기본적으로 톰캣 서버가 내장되어 있는 것을 알 수 있다. 이를 그대로 가져다 서버를 내장하여 배포할 것이라면 jar 파일로, WAS(tomcat 등) 환경이 이미 존재하여 스프링부트 애플리케이션만을 배포할 것이라면 war 파일로 배포할 수 있다. * 이 글은 전자책의 일부 내용입니다. Spring Boot REST API에 관한 보다 자세한 내용이 필요하시다면 다음 링크에서 확인하실 수 있습니다. https://kmong.com/gig/306406 REST API 구축 참고서 PDF 드립니다. | 10000원부터 시작 가능한 총 평점 0점의 취업·투잡, 전..

Back-End/Spring 2023.02.10
300x250
반응형