전체 글 133

[JPA] 데이터 암/복호화를 위한 @Converter

이전 프로젝트 들에서는 JPA를 통해 사용자 데이터를 추가/수정/조회 시 @Query를 통해 SQL문을 작성해야만 했다. 전화번호 같은 개인정보 등을 DB에 저장 시 암호화된 데이터로 저장해야 하기 때문이었다. 이를 위해서는 Service 단에서 암/복호화를 수행 후 DB에 작업을 하는 방법이나 mysql AES_ENCRYPT를 통해 명령을 수행하는 방법을 사용했다. 이번에 Converter를 통해 Annotation만으로 손쉽게 암/복호화를 수행하는 방법을 찾게 되어 글을 작성하게 되었다. @Converter 란? 엔티티의 데이터를 변환하여 데이터에 저장할 수 있는 기능 주로 개인정보나 암/복호화 해야하는 정보, 날짜를 원하는 방식으로 저장하기 위해 사용한다. 위 글에서는 전화번호의 암/복호화 수행을 ..

[Vuetify] v-data-table

데이터(객체)를 table 형태로 보여주는 컴포넌트이다. 코드를 보면서 설명하는 것이 이해하는데 더 좋을 것 같다. 코드 tempate: ` `, data() { return { table: { selected: [], loading: true, headers: [ {text: '번호', value: 'seq'}, {text: '이름', value: 'name'}, {text: '사용여부', value: 'useYn'}, {text: '등록일', value: 'regDt'}, {text: '수정일', value: 'uptDt'}, ], }, data: [], } }, created() { // data 가져오기 this.data = this.getData() }, computed: { // 테이블 set..

META, AI챗봇 이르면 이번주 공개

이르면 27일 콘퍼런스 통해 공개 인스타, 페북 등 '틱톡'에 밀리자 반등 위해 개성강한 AI 챗봇 준비 페이스북 인스타그램 등의 모회사 메타플랫폼(메타)이 독특한 개성의 생성형 인공지능(AI) 챗봇을 이르면 이번주 출시한다고 윌스트리트저널이 24일(현지 시간) 보도했다. 숏폼 동영상 플랫폼 '틱톡' 등 경쟁 소셜미디어가 메타 서비스의 점유율을 잠식하자, 젊은 층 사용자들을 공략할 방편으로 AI 챗봇을 꺼내들었다는 설명이다.

IT 소식 2023.09.25

MS, AI탑재된 윈도우 11 출시

마이크로소프트(MS)의 인공지능(AI) 기능들이 ‘마이크로소프트 코파일럿’이라는 명칭으로 통합된다. MS는 21일(현지 시간) 미국 뉴욕에서 행사를 열고 이 같은 내용의 계획을 발표했다. MS는 코파일럿 초기 버전을 26일 출시한다. AI 비서로 챗봇, 빙 기능 등을 수행한다. 작업표시줄의 앱을 선택하면 사이드바에 코파일럿이 나타나게 되는데, 화면 밝기조정 등의 윈도우 환경설정 기능들을 일일이 검색하지 않고 입력을 통해 수행할 수 있다. 또한 이번 업데이트에는 새로운 윈도우용 아웃룩, AI로 강화된 그림판, 자연스러운 음성을 지원하는 내레이터 등도 포함된다.

IT 소식 2023.09.22

SPRING 파헤치기 #2 - SOLID

★ 이 글은 김영한 님의 스프링 핵심 원리 - 기본편을 학습하면서 작성하였습니다. SOLID란? 로버트 마틴의 좋은 객체 지향 설계의 5가지 원칙을 정리한 것 SRP - 단일 책임 원칙(Single Responsibility Principle) OCP - 개방-폐쇄 원칙(Open/Closed Principle) LSP - 리스코프 치환 원칙(Liskov Substitution Principle) ISP - 인터페이스 분리 원칙(Interface Segregation Principle) DIP - 의존관계 역전 원칙(Dependency Inversion Principle) SRP 단일 책임 원칙(Single Responsibility Principle) 한 클래스는 하나의 책임만 가져야 한다. 변경이 있을..

SPRING 파헤치기 #1 - SPRING FRAMEWORK

★ 이 글은 김영한 님의 스프링 핵심 원리 - 기본편을 학습하면서 작성하였습니다. SPRING FRAMEWORK 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크로서 엔터프라이즈급 애플리케이션을 개발하기 위한 모든 기능을 종합적으로 제공하는 경량화된 솔루션 핵심 기술 : 스프링 DI 컨테이너, AOP, 이벤트, 기타 웹 기술 : 스프링 MVC, 스프링 WebFlux 데이터 접근 기술 : 트랜잭션, JDBC, ORM 지원, XML 지원 기술통합 : 캐시, 이메일, 원격접근, 스케줄링 테스트 : 스프링 기반 테스트 지원 언어 : 코틀린, 그루비 핵심 컨셉 자바 언어(객체 지향 언어) 기반의 프레임워크 좋은 객체 지향 어플리케이션을 개발할 수 있도록 도와주는 프레임워크 스프링은 다형성을 극대화해서 이용할 수..

AWS 구축 - EC2

EC2(Elastic Compute Cloud)란? EC2는 AWS에서 제공하는 클라우드 컴퓨팅 서비스다. 아마존이 각 지역에 구축한 데이터 센터의 컴퓨터들의 자원을 원격으로 사용할 수 있다. EC2의 장점 - 용량을 늘리거나 줄일 수 있다. - 사용한만큼 지불하므로 저렴하다. - 사용자가 인스턴스를 완전히 제어할 수 있다. - 보안 및 네트워크 구성, 스토리지 관리 효과적이다. EC2 구축 1. REGION 설정 현재 내 위치와 가까운 REGION을 설정하여 트래픽 속도를 최대한으로 조정할 수 있다. ✓ 서울이라면 서울 REGION을 선택하면 되지만 데이터 센터가 없는 지역일 경우 https://cloudping.info/ 를 통해 가장 가까운 데이터 센터를 찾을 수 있다. AWS 로그인 후 우측 상단..

Etc/AWS 2023.09.20

[백준] 4948번 : 베르트랑 공준 - JAVA

문제 베르트랑 공준은 임의의 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다는 내용을 담고 있다. 이 명제는 조제프 베르트랑이 1845년에 추측했고, 파프누티 체비쇼프가 1850년에 증명했다. 예를 들어, 10보다 크고, 20보다 작거나 같은 소수는 4개가 있다. (11, 13, 17, 19) 또, 14보다 크고, 28보다 작거나 같은 소수는 3개가 있다. (17,19, 23) 자연수 n이 주어졌을 때, n보다 크고, 2n보다 작거나 같은 소수의 개수를 구하는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 케이스는 n을 포함하는 한 줄로 이루어져 있다. 입력의 마지막에는 0이 주어진다. 출력 각 테스트 케이스에 대해서, n보다 크고..

백준 2023.09.12

[백준] 1929번 : 소수 구하기 - JAVA

문제 M이상 N이하의 소수를 모두 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. 출력 한 줄에 하나씩, 증가하는 순서대로 소수를 출력한다. 풀이 이전 글에서 사용했던 제곱근을 이용한 풀이는 시간 초과가 발생했다. 따라서 수학 공식인 에라토스테네스의 체를 이용한 풀이를 작성했다. 에라토스테네스의 체 가장 먼저 소수를 판별할 범위만큼 배열을 할당하여, 해당하는 값을 넣어주고, 이후에 하나씩 지워나가는 방법이다. 2부터 시작해서 특정 수의 배수를 모두 지운다.(자기자신은 지우지 않고, 이미 지워진 수는 건너뛴다.) import java.io.BufferedRe..

백준 2023.09.12