PythonはWeb開発で最も人気のある言語になりました。
今まで難しかったWeb開発をPythonは一挙に簡単にしてみせました。
Web開発はPythonの最も得意とする分野のひとつです。
with ibm_db2.connected() as conn:
# ブラウザからの入力値を受け取る。
params = bottle2.request.query.decode()
# SQL を組み立てる。
sql = '''
SELECT T01.SHCODE
, VARCHAR(T01.SHNAME, 72) SHNAME
, T01.SHTANK
, VARCHAR(T01.SHSCOD, 12) SHSCOD
, VARCHAR(T02.HNSNAM, 42) HNSNAM
FROM QTRFIL.SHOHIN T01
LEFT JOIN QTRFIL.HINSHU T02
ON T01.SHSCOD = T02.HNSCOD
WHERE SHCODE >= ?
ORDER BY SHCODE
'''
stmt = ibm_db2.prepare(conn, sql);
ibm_db2.bind_param(stmt, 1, params['SHCODE']) # SHCODE を SQL にセットする。
# SQL を実行する。
ibm_db2.execute(stmt)
# 結果のレコードを取得する。
values = []
row = ibm_db2.fetch_assoc(stmt)
while row != False:
values.append(row)
row = ibm_db2.fetch_assoc(stmt)
# 明細画面の HTM を表示する。
return bottle2.template('LISTDEF.HTM', {
'values': values,
})
SELECT T01.SHCODE
, VARCHAR(T01.SHNAME, 72) SHNAME
, T01.SHTANK
, VARCHAR(T01.SHSCOD, 12) SHSCOD
, VARCHAR(T02.HNSNAM, 42) HNSNAM
FROM QTRFIL.SHOHIN T01
LEFT JOIN QTRFIL.HINSHU T02
ON T01.SHSCOD = T02.HNSCOD
WHERE SHCODE >= ?
ORDER BY SHCODE
# SQL を実行する。
ibm_db2.execute(stmt)
# 明細画面の HTM を表示する。
return bottle2.template('LISTDEF.HTM', {
'values': values,
})
従来のWebアプリケーションは例えばApacheやTomcatのようなHTTPサーバーを
実際にあった話ですがある初老のRPG IIIだけの経験のプログラマーが
この話は(株)オフィスクアトロがPythonフレーム・ワークの開発を
このようにPythonによるWeb開発は初心者を問わず
PHPやJSP&Servlet(=Java)ではHTMLの内部に
複雑なHTMLインターフェースでは
また複雑なPHPやJSPを開発する場合は
これではPHPやJSPが伸び悩むのも無理はありません。
PythonソースとHTMLテンプレートは完全に分離されており
複雑なデザイン変更もHTMLをWebデザイナーに渡して
それでいて必要あればHTMLにも条件分岐を定義することが
この実用性がPythonがWebアプリケーションとして
このようにPythonによるWeb開発は急速に普及しています。
Python.400でも PythonによるWeb開発の事例を