분류 전체보기 166

4. DB만들기

전편까지 DB 설계와 연결까지 하였다면, 이번에는 DB를 만들어볼 시간입니다. 일단 DB연결 프로그램을 엽니다. 일반적으로 php는 phpMyAdmin을 사용하지만, 저는 sql을 직접 날리기 위해 sequel연결툴을 씁니다.(윈도우는 hiedisql이 좋습니다.) 1. 테이블 만들기 저번편까지 외부에서 접근이 가능한 유저와 DB를 만들었으므로, 저번에 만든 유저와 DB로 접근하여 테이블을 만듭니다. 꼭 SQL을 사용하여 테이블을 안 만들고, heidisql을 사용하여 테이블을 생성하여도 됩니다. (이 방법이 더 쉽고 간편하므로 이 방법을 선호합니다.) 1) User table CREATE TABLE User ( idx int primary key, Id varchar(255) NOT NULL, Pass..

AWS EC2 ubuntu20.04 서버 설정

aws ec2에 APM서버를 열기 위해서는 다음 과정이 필요합니다. 1. aws 가입 및 인스턴스 생성 2. 보안그룹추가로 필요한 보안 허용 3. apache2, php, mysql 설치 4. 서버 상태 확인 그럼 처음부터 시작해 봅시다. 설치순서는 apache, mysql, php 순서입니다. 이 순서를 꼭 지켜주세요. 1. aws 가입 및 인스턴스 생성 구글에 aws를 치면 아마존 웹 서비스가 나옵니다. 거기로 들어갑니다. 회원가입을 하시고, 인스턴스를 생성합니다. 이제 서비스 검색창에 ec2를 치시면 아래화면이 나옵니다. '인스턴스 시작'을 눌러주세요(만약 서버 시간을 서울로 바꾸고 싶다면 '버지니아 북부'를 클릭하여 서울로 바꿉니다.) 클릭 후 ubuntu20.04버전을 클릭하고 다음을 누릅니다...

SERVER/linux 2022.02.27

3. 앱에 필요한 DB설계

내가 만들고자 하는 앱은 회원가입, 로그인, 글 작성, 댓글 관리, 글 읽기 등의 활동을 할 수 있는 앱입니다. 회원가입, 로그인을 위해 유저 테이블 생성 글 목록을 위해 글 목록 테이블 생성 댓글 관리를 위한 댓글 테이블 생성 여기서 설계가 들어갑니다. 글 목록을 만들기 전에 글 테이블 3개를 한번에 묶어 사용할지,테이블 3개로 나누어 사용할지 생각해보아야 합니다. 한번에 묶어 사용하면 sql을 날리기 편하고, 관리할 테이블의 수가 줄어듭니다. 하지만 sql의 속도가 늦어지고, 테이블 내부의 관리가 힘듭니다. 3개로 나누어 설계하면 속도가 빠르고, 테이블 내부 관리는 쉬워집니다. 하지만 sql을 날리기 어려워지고, 관리할 테이블의 수가 늘어납니다. 저는 처음에 앱을 들어왔을 경우, 글 목록이 빠르게 떠..

fileZilla 상태:서버가 알 수 없는 주소와 수동형 응답을 보냈습니다. 대신 서버 주소를 사용합니다.(윈도우 서버)

이 문제는 페시브 모드로 ftp를 연결하면 클라이언트에게 넘겨줍니다. 하지만 주소가 공유기 안쪽에 있는 사설아이피를 넘겨주는 문제가 발생합니다. 이를 해결하기 위해 fileZilla server측에서 설정을 해주어야 합니다. 서버측 filezilla에 들어가 Administer FileZilla Server앱에 들어가 서버에 연결합니다. 연결된 서버에서 왼쪽 위에 server 및에 configure을 누르면 아래 화면이 나옵니다. 위 사진처럼 설정하세요(서버주소는 가려진 곳에 넣어주세요.) 이제 서버 방화벽 설정에서 port5000-5009까지 열어줍니다. 클라우드 서버를 사용하면 5000-5009까지 port를 열어주세요 이제 설정이 끝났습니다. user에 설정한 디렉토리로 들어가집니다. 만약 클라이언..

2. AWS EC2 윈도우 서버 설정

서버는 aws의 ec2를 사용하여 간단히 구성할 것입니다. 서버는 리눅스, 윈도우 서버가 대표적입니다. 리눅스는 서버 세팅이 복잡하지만, 서버를 운영하는데 필요한 여러 가지 요소들을 제공해줍니다. 윈도우 서버는 평소에 쓰던 윈도우와 비슷하여 사용에 편리하지만, 서버 세팅 도구를 찾아서 다운로드하여야 합니다. 지금은 간단히 윈도우 서버를 사용하여 만들고, 나중에 리눅스(우분투)서버 세팅법도 올려보겠습니다. (평소에 사용하던 우분투와 너무 달라 centOS는 더 공부를 하고 사용할 겁니다.) 혹시 우분투로 만든 서버에 관심이 있으시면 아래 내용도 도움이 됩니다. 2022.02.27 - [개발일지/서버] - AWS EC2 ubuntu20.04 서버 설정 AWS EC2 ubuntu20.04 서버 설정 aws e..

안드로이드 volly사용

안드로이드에서 JSON으로 외부 데이터를 가져오고 싶으면 간단히 volly를 사용하면 된다. Volley를 사용하면 다음과 같은 이점이 있습니다. 네트워크 요청의 자동 예약. 여러 개의 동시 네트워크 연결 표준 HTTP 캐시 일관성을 갖춘 투명한 디스크 및 메모리 응답 캐싱 요청 우선순위 지정 지원 취소 요청 API. 단일 요청을 취소하거나 취소할 요청의 블록 또는 범위를 설정할 수 있습니다. 용이한 맞춤설정(예: 재시도, 백오프) 강력한 정렬 기능을 이용하여 네트워크에서 비동기식으로 가져온 데이터로 UI를 올바로 채우는 작업을 쉽게 실행할 수 있음. 디버깅 및 추적 도구. https://developer.android.com/training/volley?hl=ko volly를 사용하려면 요청 객체(Re..

APP/안드로이드 2022.02.16

mvp 디자인 패턴

mvp디자인 패턴은 model, view, presenter 의 줄임말입니다. 기존의 mvc패턴은 간단하다는 장점이 있지만, model과 view의 종속성이 높아 프로그램이 커질수록 관리가 힘든 단점이 있습니다. 이 문제를 보완하고자 만든 디자인이 mvp 패턴입니다. 이 두 패턴의 차이점은 데이터를 view에 데이터를 뿌려주는 존재의 차이입니다. mvc패턴에서 controller가 view를 선택하면 model에서 필요한 데이터를 view에 직접 뿌리는 과정을 사용했습니다. 그 과정에서 model과 view의 종속성이 커지게 됩니다. 이는 유지보수가 힘든 원인이 됩니다. 하지만 mvp패턴은 presenter가 model에서 데이터를 받아 view에 직접 뿌려줍니다. 이 과정에서 model과 view의 종..

jquery 태그 추가

.prepend() - 원하는 곳의 맨 앞에 태그를 추가한다. Greetings Hello Goodbye input .append() - 원하는 곳의 맨 마지막에 태그를 추가한다. Greetings Hello Goodbye input 이 방법을 이용하면 사용자가 이벤트를 주면 그 이벤트에 맞는 페이지를 만들어 줄 수 있다. 예를 들어, 사용자가 물건들의 목록을 원하면 그 목록을 ajax를 사용하여 빠르게 가지고 올 수 있다. DOCTYPE html> Shoping List :root { --ion-safe-area-top: 20px; --ion-safe-area-bottom: 22px; } List function outPut() { // console.log("a"); var param = {}; $...

FRONT END/jquery 2022.02.10

mvc디자인 패턴

mvc패턴은 Model, View, Controller의 약자이다. 이 패턴이 필요한 예시로 만약 spring mybatis을 사용하여 back을 만들었고, front를 jsp로 만든 웹이 있다. 하지만 어느 순간 웹을 앱으로 만들어야 할 순간이 왔다. (하이브리드 앱으로 만들 수 있기도 하다.) 이러한 경우 이 디자인 패턴이 도움이 된다. jsp로 만든 view를 java안드로이드, 플러터, 리엑트 네이티브 등으로 바꿀 수 있다. 그 이유는 model(back)과 view(front)를 controller로 분리하였기 때문이다. 또 간단한 이미지 처리 같은 작업은 model까지 갈 필요 없이 controller에서 처리하여 더 빠른 처리 속도를 보여준다. Model은 데이터를 직접 받아오는 back의 ..