App下載

怎么創(chuàng)建一個小型web項目?——flask介紹

猿友 2021-06-15 15:10:57 瀏覽數 (2984)
反饋

對于一個后端的初學者而言,小編覺得其實學習什么語言什么框架對初學者來說應該是一種負擔。為什么這么說呢,因為初學者往往不知道什么是請求什么是響應,更不必說session和cookie了。所以對于后端的初學者而言,先學習一種簡單的功能完備的框架可以讓初學者對整個web應用的開發(fā)有個簡單而全面的了解。而今天小編要介紹的,是一款輕量級的python web開發(fā)框架,他就是Flask。

介紹

Flask是一個輕量級的web應用框架,它擁有高度的可定制性。相較于其他同類型的框架,它的使用更加靈活輕便。而且由于它高度封裝了python的服務器網關接口,使得它的代碼更加簡潔易懂,新手也可以很容易進行上手。

應用

python廣受詬病的一點就是其性能并不如java等編譯型語言,flask作為一個輕量型的web框架在性能優(yōu)化上面也不如同為python框架的Django和Tornado。但是因為它輕量且開發(fā)快速,所以用來構建小型的web應用程序綽綽有余,利用flask來進行原型開發(fā)也是一個不錯的選擇(苦惱于畢業(yè)設計的計算機專業(yè)學生終于有了更輕松的選擇)。

比較

這是Flask的一個簡單的返回helloworld的頁面,只有一個 ?app.py? 文件,直接解釋執(zhí)行這個python文件就能使用這個web應用。

from flask import Flask

app = Flask(__name__)  # 初始化一flask應用


@app.route('/hello') # 這個注解表示如果傳入路徑是/hello的話執(zhí)行hello_world函數
def hello_world():
    return 'Hello World!' # 返回helloworld,也可以返回一個頁面


if __name__ == '__main__':
    app.run()  # 運行這個flask應用

這是java的一個簡單的返回helloworld的頁面,不僅代碼復雜了許多,而且這些代碼只是整個項目中最關鍵的部分,這個代碼還需要web.xml的支持,需要部署在Tomcat上才能運行,部署之前還需要先進行編譯...

package com.example.demo1;

import java.io.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;

@WebServlet(name = "helloServlet", value = "/hello-servlet")  //這個注解表示該servlet關聯(lián)到/hello-servlet這個路徑
public class HelloServlet extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
        response.setContentType("text/html");//設置響應的類型為html
        PrintWriter out = response.getWriter(); //使用printWriter進行響應流的輸出
        out.println("hello world!"); //在響應流中寫入helloworld
    }
}

java的servlet在使用注解后已經簡便了很多,但還是比不上Flask。

小結

在開發(fā)的輕便程度上,python的Flask可謂是一騎絕塵,正因如此它也是很多 python 學習人員的首選python web框架。所以python后端的初學者(其實java后端初學者也可以先從Flask入門再轉java后端)最好先對Flask框架進行學習。網上也不乏有優(yōu)秀的Flask課程,W3Cschool也提供了優(yōu)質的Flask手冊,小伙伴們可以前往進行學習。

以上就是怎么創(chuàng)建一個小型web項目的全部內容,更多精彩內容盡請關注W3C技術頭條。


0 人點贊