본문 바로가기
반응형

전체 글373

Flask강좌4 - Flask_SQLAlchemy MySQL연동 이번 강좌에서는 ORM 방식으로 Database와 연동하는 방법에 대해 포스팅하겠습니다. ORM은 Object-Relational Mapping 이라고 하여, Database 객체를 객체지향 프로그래밍 언어로 변환하는 기법입니다. (자세한 내용은 다른 포스팅들을 참조하시기 바랍니다.) 그 중에서도 Flask에서 ORM을 구현할 수 있게 해주는 라이브러리가 Flask-SQLAlchemy 입니다. 이 Flask-SQLAlchemy를 이용하여 MySql과 연동해보도록 하겠습니다. 1. Database 자료 생성 아래와 같이 id, name, email, phone, start(datetime), end(datetime)을 필드로 하는 자료를 생성해놓습니다. 2. 라이브러리 설치 먼저 말했듯이 이번 강좌의 메인.. 2020. 12. 2.
Flask강좌3 - Request 1. Request Event Handler 주요 Request Event Handler(Web Filter)는 아래와 같습니다. @app.before_first_requst : 첫번째 요청을 부를 때 @app.before_request : 매 요청에 대해 router가 받아서 모델이 처리하기 전에 @app.after_request : 응답이 나가기 직전에 (DB Close와 같은 작업 처리) @app.teardown_request : 응답이 나가고 나서 @app.teardown_appcontext : application Context가 끝났을 때 2. Request Parameter # GET request.args.get('q') .....> q파라미터를 GET으로 받음 # POST request... 2020. 12. 1.
Flask강좌2 - Global Object: g, Response객체 1. __init__.py 수정 from flask import Flask, g, Response, make_response app = Flask(__name__) app.debug = True #use only debug!! @app.before_request def before_request(); print("before_request!!!") g.str = "한글" @app.route("/gg") def helloworld(): return "Hello World!" +getattr(g, 'str', '111') @app.route("/") def helloworld(): return "Hello Flask World!!!!!!!" @app.route("/res1") def res1(): custo.. 2020. 12. 1.
Flask강좌1 - hello flask! 설치 pip install flask 셋업 webapp (Web application) /helloflask(Web context영역, blog 등) - /static -/css -/images -/js -/templates -application.html -__init__.py (임포트 하는 순간 자동 실행 됨) start_helloflask.py __init__.py from flask import Flask app = Flask(__name__) @app.route("/") def helloworld(): return "Hello Flask!" start_helloflask.py #../start_flask.py from helloflask import app app.run(host='localho.. 2020. 12. 1.
Spring boot 시작하기 - 14강(스프링데이터JPA) 1. SpringDataJpaMemberRepository 인터페이스 작성 이번엔 클래스가 아닌 인터페이스를 만들어줍니다. 인터페이스만 만들면 객체는 JPA 템플릿이 자동으로 생성해준다고 합니다. package hello.hellospring.repository; import hello.hellospring.domain.Member; import org.springframework.data.jpa.repository.JpaRepository; import java.util.Optional; public interface SpringDataJpaMemberRepository extends JpaRepository, MemberRepository { @Override Optional findByName(St.. 2020. 11. 30.
Spring boot 시작하기 - 13강(JPA) 1. build.gradle dependencies 설정 기존 jdbc 라이브러리 대신 jpa라이브러리를 설정합니다. 설정 뒤에는 코끼리 아이콘을 클릭하여 라이브러리를 끌어와 설치해줍니다. 2. application.properties 설정 spring.jpa,.show-sql=true 는 jpa가 수행하는 sql을 볼 수 있도록 하는 옵션이고, spring.jpa.hibernate.ddl-auto=none 은 회원 객체를 확인할 때 테이블을 자동 생성하는 기능은 끄고 시작하는 것입니다. 이번 예제에서는 테이블을 생성해 놓았으므로 none으로 합니다. none대신 create로 할 경우 테이블 생성까지도 자동으로 해 줍니다. 3. Member 클래스 코드 수정 @Entity : JPA가 관리하는 Enti.. 2020. 11. 30.
Spring boot 시작하기 - 12강(테스트) 1. 기존 MemberServiceTest크래스를 복사하여 MemberServiceIntegrationTest 클래스를 생성 후 아래와 같이 코드를 작성합니다. package hello.hellospring.service; import hello.hellospring.domain.Member; import hello.hellospring.repository.MemberRepository; import hello.hellospring.repository.MemoryMemberRepository; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; imp.. 2020. 11. 30.
Spring boot 시작하기 - 11강(H2 Database연결-jdbc template방식) 1. build.gradle 설정파일로 가서 아래와 같이 코드를 추가해줍니다. 2. application.properties 파일에 가서 아래와 같이 수정해줍니다. 3. JdbcTemplateMemberRepository 클래스를 추가해줍니다. package hello.hellospring.repository; import hello.hellospring.domain.Member; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.RowMapper; import org.springfram.. 2020. 11. 30.
Spring boot 시작하기 - 10강(H2 Database생성) 테스트용으로 사용할 DB를 만들기 위해 H2라는 database를 설치하도록 하겠습니다. H2 database 사이트에서 본인의 OS에 맞는 버전을 다운받아 설치합니다. 다운받은(설치한) 경로에서 실행파일을 실행해줍니다. linux/Mac은 h2.sh를 실행하면 되고, windows는 h2.bat를 실행하면 자동으로 H2 콘솔이 브라우저로 열립니다. 잘 안나오면 뒷부분은 그대로 두고, IP 부분을 아래와 같이 localhost로 바꾸어줍니다. localhost:8082/login.do?jsessionid=f5e0be78c8ea2e025e1340946eb405a6 연결되면 JDBC URL 부분이 최초에는 아래와 같이 설정되어 있는데, 이는 폴더를 직접 접근하는 것입니다. 이를 소켓을 이용하여 접근하도록 아.. 2020. 11. 29.
Spring boot 시작하기 - 9강(조회) 1. @GetMapping("/members") 구현 MemberController에 @GetMapping("/members")를 구현합니다. package hello.hellospring.controler; import hello.hellospring.domain.Member; import hello.hellospring.service.MemberService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotat.. 2020. 11. 27.
반응형