[관리자 페이지] 암호화 유틸리티 만들기 // https://mvnrepository.com/artifact/org.mindrot/jbcrypt implementation group: 'org.mindrot', name: 'jbcrypt', version: '0.4'Bcrypt 를 사용하기 위한 dependency 추가 !package com.hiio.adminserver.utils;import org.mindrot.jbcrypt.BCrypt;import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.Bean;import org.springframework.stereo..
DTO (Data Transfer Object)계층간 데이터 교환에 쓰이는 객체이다.Controller Service DAO DBpackage com.hiio.adminserver.dto.user;import com.hiio.adminserver.entity.user.UserEntity;import jakarta.validation.constraints.*;import lombok.AllArgsConstructor;import lombok.Builder;import lombok.Data;import lombok.NoArgsConstructor;@AllArgsConstructor@NoArgsConstructor@Data@Builderpublic class UserDTO { private Stri..
먼저 UserEntity를 정의 합니다.package com.hiio.adminserver.entity.user;import jakarta.persistence.Column;import jakarta.persistence.Entity;import jakarta.persistence.Id;import jakarta.persistence.Table;import lombok.*;@Entity@Table(name = "T_USER")@Getter@Setter@Builder@NoArgsConstructor@AllArgsConstructorpublic class UserEntity { @Id @Column(name = "USER_EMAIL", length = 512) private String em..

요구사항? 요청사항?진행중인 프로젝트에 투입되거나 시작되는 프로젝트에 투입되었을 때 아무래도 가장 먼저 하는게 분석이지 않을까 한다.코드 분석이든 업무 분석이든기능을 만들거나 테이블을 만들때 요구사항정의서를 참고하게 되는 경우가 대부분이다.이전에 진행했던 프로젝트들의 요구사항정의서를 만들어 본적이 없이 그냥 보기만 했다.그 요구사항 정의서들은 각 프로젝트마다 거의 제각각으로 보이기도 했다.요구사항 또는 요청사항을 만들어 보는 연습도 해볼겸 작성해보면 어떨까 싶었다.완벽하진 않아도 일단 해보는 것이 좋을 듯 싶다.소프트웨어 방법론은 여러가지이다.폭포수라던가 애자일이라던가어쨌든 두 방법론 모두 요구사항을 어떻게 정의해 나가는지가 중요하다고 생각이 들었다.대부분의 프로젝트는 폭포수 방법론을 따르는 경우가 많았..
필요한 유틸리티 기능은 무엇이 있을까?프로젝트를 진행하다보면 기존의 코드를 사용하던 처음 부터 구축하여 진행을 하던간에 공통 유틸리티 성의 코드를 가져다 쓰거나 만들어서 쓰는 일들이 많은 것 같다.대부분의 요구사항에는 파일이나 엑셀, 암호화 등의 기능을 요구하는 곳이 많기도 하고 접근에 관한 이력을 DB에 저장해야하는 경우도 많았다.파일 유틸암호화 유틸엑셀 유틸request 유틸session 유틸등이 기본적으로 필요했고, 많이 쓰였다. 더 많은 프로젝트를 접해 보면 더 좋겠지만, 위와 관련된 코드들을 구현해 보면 좋겠다는 생각이 들었다. 유틸리티 class보통 이전의 유틸리티 class들을 static으로 불러와 많이 사용하였다. 요즘은 new 또는 @Component로 DI 를 통해 사용한다고 하는데 ..
1. Dependency 추가// build.gradleimplementation group: 'org.springframework.boot', name: 'spring-boot-starter-data-jpa', version: '3.2.5'runtimeOnly group: 'com.h2database', name: 'h2', version: '2.2.224'compileOnly group: 'org.projectlombok', name: 'lombok', version: '1.18.30'annotationProcessor group: 'org.projectlombok', name: 'lombok', version: '1.18.30'2.property 추가// application.ymlspring: ..

[관리자페이지] Admin Page - Admin - SiginIn 페이지 #7 Token 체크 리다이렉트 관리자 페이지 화면 구현은 Nextjs를 사용합니다. Nextjs를 사용하기 위해서는 node.js를 설치해야합니다. https://nodejs.org/en/download 설치 후에는 npx create-next-app@latest 를 이용해서 nextjs 프로젝트를 생성해 줍니다. npx create-next-app@latest app router를 사용합니다. 프로 젝트 생성 후에는 app 디렉토리에 admin과 signin 디렉토리를 각각 생성해 줍니다. . ┗src ┗app ┗ admin ┗ page.tsx ┗ signin ┗ page.tsx 각 디렉토리에 page.tsx를 생성해 주고 간..

[관리자 페이지] Admin Page - 회원가입 구현하기 #6 JWT 토큰 발행 https://jwt.io/ [JWT.IO JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties. jwt.io](https://jwt.io/) 아이디 / 패스워드로 사용자 로그인을 성공하면 jwt 를 발급합니다. accessToken, refreshToken 2개를 발급합니다. import jwt from datetime import datetime, timedelta from dotenv import load_dotenv import os load_dotenv(os.pa..
[관리자 페이지] Admin Page - 회원가입 구현하기 #5 비밀번호 체크 유저의 id와 암호환 된 password를 DB에 저장했습니다. 이제 유저가 로그인하기 위해 id와 password를 post로 넘기면 해당 id와 password를 가진 user를 찾아 반환합니다. db model 인 User classdp validate_password를 정의해 줍니다. class User(Base): __tablename__ = "USER" __table_args__ = { 'comment': 'USER TABLE' } id = Column("USER_ID", String(20), primary_key=True, comment="USER ID") password = Colum..
- Total
- Today
- Yesterday
- 백엔드
- LangChain
- Next.js
- REACT
- 관리자
- Project
- github
- 로컬LLM
- rag
- 백엔드개발
- Python
- kotlin
- 웹개발
- 개발블로그
- Webpack
- Docker
- 프론트엔드
- Ktor
- Page
- fastapi
- PostgreSQL
- nodejs
- babel
- llm
- AI챗봇
- 페이지
- til
- 리액트
- nextJS
- 챗봇개발
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |