Backend
-
django 입문 (7) 템플릿 파일Backend/Django 2023. 8. 2. 23:54
자주 사용되는 페이지 형식(html)을 템플릿으로 만들어 여러 앱에서 재사용할 수 있음. = 장고의 템플릿 render() 파이썬 데이터를 템플릿에 적용하여 HTML로 반환하는 함수 render(request, {templat파일경로}, 데이터) from .django.shorcuts import render from .models import Question def index(request): question_list = Question.objects.order_by("-create_date") context = {"question_list": question_list} return render(request, "pybo/question_list.html", context) {Model}.objects..
-
django 입문(6) 장고관리자 adminBackend/Django 2023. 7. 12. 23:39
장고관리자화면에 접속할 슈퍼유저 생성: python3 manage.py createsuperuser 장고관리자 페이지 주소: http://{자신의 페이지 주소}/admin/ 장고관리자에 모델 등록 from django.contrib import admin from .models import Question admin.site.register(Question) 장고관리자에 모델을 등록하면 자동으로 장고관리자페이지에 모델이 나타난다. 장고관리자를통해 모델을 사용(=모델 형식대로 데이터 등록, 삭제, 수정 등)할 수 있다. 모델 검색 기능 추가 구조 class {ClassName}(admin.ModelAdmin): search_fields = [{member_var}] 위 클래스는 미리 구현한 모델 클래스(e..
-
django 입문(5) Model 1) 기본 사용법Backend/Django 2023. 7. 10. 22:50
Model 데이터베이스 처리를 하기 위해 사용되는 개념. 쿼리문 대신 데이터를 처리할 수 있게 해줌. 장고는 ORM을 사용한다. ORM: Object Relational Mapping. DB의 테이블을 모델화(=객체화)하여 사용하는 방식. DB 종류를 변경하는데 수월함. (쿼리문이 아닌 모델 객체를 사용하기 때문에 - 쿼리문은 개발자마다 그 내용이 다를 수 있어 통일성 확보가 어려움. MySQL과 오라클 간 호환에도 쿼리문 차이가 발생하여 번거로움.) {app}/models.py models.py 에 구현되는 클래스(=모델)는 django.db의 models.Model을 상속 받아야만 한다. 왜냐하면 models.Model에 ORM을 사용할 수 있는 기능들이 구현되어 있기 때문이다. from django..
-
django 입문(4) CRUD 기본 작업Backend/Django 2023. 7. 7. 00:00
브라우저가 서버로 Data를 전달할 때 2가지 method : GET, POST 1) Read (GET) Tag: 기본적으로 Data를 특정 페이지(href가 가리키는 URL) 로 이동하는 동작을 수행. = GET 방식(=Server에서 Data를 가져오면서)으로 Server에 접속함. HTML Code를 return 하는 함수 구현: HtmlTemplate HttpResponse에 출력하려는 Html code(HtmlTemplate의 반환값) 를 parameter로 넘겨줌. from django.shortcuts import render, HttpResponse topics = [ {'id': 1, 'title': 'routing', 'body': 'routing is...'}, {'id': 2, 't..
-
django 입문(3) RoutingBackend/Django 2023. 7. 3. 22:40
urls.py project(보통 config) - urls.py: 가장 큰 틀의 Routing 작업 수행. 들어온 요청을 적당한 App으로 위임. 프로젝트 성격의 URL 매핑만 추가되는 것이 좋다. from django.contrib import admin from django.urls import path from pybo import views urlpatterns = [ path('admin/', admin.site.urls), path('pybo/'. views.index), # 'pybo/' URL이 요청되면 views.index 를 호출하라는 매핑을 추가 ] URL 뒤에 ‘/’ 를 붙이는 이유는 URL을 정규화하는 장고의 기능 때문. 따라서 웬만하면 URL 매핑 시 항상 끝에 슬래시(’/’)..
-
JAVA BE(4) Response와 RequestBackend/Java 2023. 6. 8. 23:22
Client가 요청할 때 요청 Request 에 필요한 정보(ex.Client의 정보-Header 정보, 파라미터, 쿠키, URI, URL 등)를 담아서 Server로 보냄. HttpServletRequest (객체) 목적: http protocol의 정보를 Servlet으로 전달 헤더정보, 쿠키, URL, URI 등의 정보를 읽을 수 있는 메소드를 제공함 Body의 Stream(Http 요청 바디를 의미?)을 읽어들이는 메소드(ex. getHeader(), getHeaderNames() 등)도 있음. WAS는 Client로 응답을 하기위해 HttpServletResquest 객체를 생성하여 Servlet에 인수로 전달함. (응답할 Client 정보를 미리 알고있음. = 응답할 URL-Path를 알고 있..
-
JAVA BE(3) ServletBackend/Java 2023. 6. 6. 22:26
Servlet Servlet이란? JAVA Web Application 의 구성요소 중 동적인 처리를 하는 프로그램 역할. WAS에서 동작하는 일종의 JAVA Class Servlet은 HttpServlet Class를 상속받아야 한다. Servlet과 JSP를 조화롭게 사용 가능. 생성 New - Servlet 선택 - JAVA Packages에 ‘examples’ 입력 - Class name 입력 ⇒ eclipse는 App이 Runtime으로 설정된 WAS에 배포될 때 다음의 규칙대로 URL을 자동 생성함: http://localhost:{port}/{contextRoot=project명}/{URL Mapping값} ContextRoot: 보통은 Project 명으로 자동 설정됨. URL Mappin..
-
JAVA BE (2) Web Project 생성 ~ JAVA Web ApplicationBackend/Java 2023. 6. 6. 22:24
eclipse 프로젝트 생성 Project와 Package 이름으로 첫 글자는 소문자로 작성하는 것이 관습. Class 파일의 첫 글자는 대문자로 작성하는 것이 관습. Project 생성 시 구성: . 으로 시작하는 파일들(.classpath, .project 등…)은 중요한 파일. 임의로 수정 매우 지양 src: 작성한 Code 들이 위치함. bin: src의 Code 들은 저장되면 자동으로 Compile되어 bin 디렉터리에 class file로 저장된다. 단, 문접적 오류가 발생하거나 컴파일에 실패했다면 class file은 bin에 자동 생성되지 않는다. WAS 설치 Apache Tomcat: 세계에서 가장 많이 사용되는 WAS. 홈페이지: https://tomcat.apache.org/ Apac..