전체 글

5%라도 남기자
스프링/JPA

[Spring] JPA란 무엇인가

현 시대는 객체를 관계형 DB에 저장해서 관리를 합니다 그렇다면 관계형 DB안에 객체를 저장하려면 SQL을 이용하여 저장해야 합니다 SQL 중심의 개발이죠 Insert, Update, Select, Delete , Create..등등 1. 무한 반복, 지루한 코드 public class Member { private String memberId; private String name; ... } INSERT INTO MEMBER(MEMBER_ID, NAME) VALUES SELECT MEMBER_ID, NAME FROM MEMBER M UPDATE MEMBER SET ... 위 객체를 RDB(Relational Database, 관계형 데이터베이스) SQL을 이용하여 저장한 코드입니다 그런데 만약 DB구성..

Flutter

[Flutter] 20시간만에 Flutter 이해하기

백엔드를 계속 공부하다가 프론트랑 백엔드를 연결해서 공부하면 더 재밌겠는데라는 생각으로 그냥 바로 Dart 언어 & Flutter강의를 들으면서 시작했다 . 따라하고 조금의 이해를 하기까지 한 5일 정도 걸린 거 같다 https://github.com/sleeg00/toonflix GitHub - sleeg00/toonflix Contribute to sleeg00/toonflix development by creating an account on GitHub. github.com 나름 재밌었다 솔직히 말하면 프론트엔드를 거의 처음 접해보는 것인데 물론 HTML, CSS ,JS등 한번 씩은 다 보았다 이런 프레임워크를 내가 사용할 줄은 몰랐다 그래서 많은 고민을 했다 Vue를 사용할까 React를 사용할..

Go

[Go] struct를 생성하고 error코드 작성하기

오늘은 Go에 있는 strcut 키워드를 사용해보겠습니다 구조체를 만드는데 C랑 크게 다르지 않습니다 package main import "fmt" type person struct { name string age int food []string } func main() { food := []string{"burger", "king"} sleeg := person{"sleeg", 15, food} sleeg = person{name: "sleeg", age: 18, food: food} //sleeg := person{name: "nico", age: 18, food: food} 불가! //이런식으로 코딩할 경우 person{name : "nico", 18, food}는 불가 name: ,age: ,fo..

Go

[Go] append와 가비지 컬렉터의 관계 & if, switch문 알아보기

오늘은 Go의 배열, if문, Switch문을 알아봅시다! 배열 package main import "fmt" func main() { names := []string{"nico", "lyn", "dal"} names = append(names, "flynn") fmt.Println(names[2]) } 배열 선언 방식은 다음과 같습니다 names := []string{~}을 통해 문자열 배열을 만들어 줬습니다 그리고 ppend를 통해 "flynn"을 배열에 추가해주었구요 그런데 여기서 append("flynn)만 적는다면 오류가 됩니다 names = append(어디에 append(추가)할 것인가, "무엇을 추가할 것인가?") (참고 append는 맨 뒤에 값을 넣어준다) 또 여기서 중요한 점은 app..

Go

[Go] $GOPATH/go.mod exists but should not 오류

Go언어 공부를 하다가 이런 오류를 만났다.. 분명 직전 코드까지 잘 실행되다가 어찌저찌 검색하다 go mode tidy라고 입력하면 된다고해서 했는데 계속 저런다. 이유는 GOPATH (터미널에 "go env" 라고 타이핑할시 GOPATHE등 많은 정보가 나옵니다) 로 지정한 곳에 go.mod 파일이 있으면 안되는다는 것! 해결한 방법은 GOPATH로 등록된 폴더에 go.mod가 있길래 rm go.mod로 go.mod파일을 지우고 src안에 현재 작업할 or 분기하지 않은 폴더 즉 main 폴더에 go mod init으로 go.mod를 만들어줬더니 해결이 됐다 나는 이렇게 넣어다. 다행이 참고할 자료가 하나 있어서 금방해결했다.. 참고한 자료 https://velog.io/@artelee/%EC%98%..

Go

[Go] Go의 특별한 인자값 전달

오늘은 Go의 인자값 전달과 어떤 형식으로 인자의 값들을 받고 형식을 지정하는지 그리고 중요한 키워드 defer에 대해 알아보겠습니다 인자값 전달 & 받기 코드부터 먼저 보겠습니다 package main import "fmt" func multply(a int, b int) int { return a + b } func multply2(a , b int) int { return a + b } func main() { fmt.Println(multply(1, 9)) } 위 처럼 두가지 형식이 가능합니다 원래 알고 있던 언어들에 type 지정과 다르게 변수 뒤에 type을 지정해줍니다 보이듯이 func앞에 type을 지정하는 게 아닌 func에도 뒤에 type을 지정해줍니다 multply2처럼 묶을수도 있구..

Go

[Go] Main Package와 접근 제한자 & 변수

오늘은 Go의 Main Package에 대해 다뤄보도록 하겠습니다 이 글은 NomadCoders의 영상을 보고 정리한 글입니다. 우리가 원래 알고있던 언어들의 main의 역할은 시작점이라는 것입니다. 모든 언어가 그렇듯이 Go도 특별하지는 않습니다 main이 시작점이죠 C에서 헤더의 를 사용하듯이 Go에서는 아래처럼 사용할 뿐입니다 Main package main import ( "fmt" ) func main() { fmt.Println("Hello Wrold") } 하지만 오픈소스를 만든다면 컴파일을 하지 않고 다른사람들과 같이 쓰기 때문에 main.go는 필요가 없겠죠? main는 이렇듯 컴파일을 위해서 필요한 것입니다! 그리고 출력문을 작성하기 위해서는 fmt.Println("~"을 타이핑하는데 ..

CS/네트워크

[네트워크] JWT(Token)를 위주로 Cookie & Session 파헤치기

진행하던 토이 프로젝트에 Spring Security + JWT를 이용해서 로그인을 구현했었는데 이번에는 단순 구현뿐 아니라 JWT에 대하여 좀더 공부해보고 하는 생각으로 글을 씁니다. 먼저 가장 중요한 JWT의 정의에 대하여 알아보아야 겠죠? JWT란 JWT(Json Web Token)의 약자로 Json 기반의 Web Token입니다. 발급된 토큰값을 Json 객체로 변환 그 후 Clien에게 전송해주는 것을 말하는데요 음 그런데 Jwt가 무엇인지는 대충 알겠는데 왜 JWT를 쓰는 걸까요? 그 전에 Token을 발급해주는 이유는 무엇일까요? 그냥 DB에 ID/PW만 저장하고 Login할 때마다 확인해주면 안될까? 그러면 DB가 해킹당하면.. 큰 문제가 발생하고 또 로그인을 유지하려면 사용자가 API를 ..

Sleeg
5% 남기기