iT邦幫忙

2025 iThome 鐵人賽

DAY 21
0
自我挑戰組

基於 Oracle 資料庫的醫院電子病歷系統設計與建置系列 第 21

Day21:前端簡易電子病歷頁面+Express API 串接Oracle

  • 分享至 

  • xImage
  •  

由於昨天就將整個Oracle資料庫的系統設計與建置處理好了,還剩下10天的時間,我就決定藉此機會來把我這個醫院電子病歷系統做得更完整,因此就要來寫前端頁面並且使用API來串接後端資料庫啦!(很緊張10天能不能如我所願完成><!)(但我覺得肯定可以啦!)


首先!先講後端資料庫系統設計與建置的結論
這次的鐵人賽是以Oracle資料庫為基礎,去建構一套具有與臨床邏輯相應的電子病歷系統,透過自己一步步去實作每個部份,像是應用情境、資料表設計、繪製ERD圖、CRUD測試等等的,都讓我有非常非常踏實的感覺!
就如Day01的動機所述,我當初會選擇這個題目作為我的鐵人賽挑戰時,就是認為自己先前沒有學到太多關於後續系統建置、測試的部分,而現在我終於透過自己慢慢地去摸索、學習,也如願有了一個實作,同時也掌握了我想學的東西!


(以下為正題)

前端簡易頁面初擬

Login / Register頁面:
https://ithelp.ithome.com.tw/upload/images/20251003/20167787FZ1QRcUUCD.jpg
Patients頁面:
https://ithelp.ithome.com.tw/upload/images/20251001/201677877fF5WV5cYS.jpg
Records頁面:
https://ithelp.ithome.com.tw/upload/images/20251002/20167787mbBavjDkvI.jpg
Schedules頁面:
https://ithelp.ithome.com.tw/upload/images/20251002/201677870fNNBQSdTR.jpg
MedicalResourceUsage頁面:
https://ithelp.ithome.com.tw/upload/images/20251002/20167787ROBg3hhomZ.jpg

Express API 串接Oracle

需安裝的程式:

  1. Node.js
    至官網 https://nodejs.org/zh-tw 下載LTS版本安裝
    安裝後在cmd或PowerShell中輸入,輸入後顯示版本號即為成功:
    node -v
    npm -v
    
  2. Oracle Instant Client(必要!)
    至官網 https://www.oracle.com/database/technologies/instant-client.html 下載Basic
    解壓縮後將資料夾路徑加入至環境變數PATH
    (1) 在搜尋中打"環境變數"會出現"編輯系統環境變數"
    (2) 點擊右下的"環境變數"
    https://ithelp.ithome.com.tw/upload/images/20250930/20167787azYklIzczb.png
    (3) 在"系統變數"中點擊"Path"後再按"編輯"
    https://ithelp.ithome.com.tw/upload/images/20250930/201677874nYkI2En6q.png
    (4) 後點擊"新增",將資料夾的路徑新增後持續點擊"確認"
    https://ithelp.ithome.com.tw/upload/images/20250930/20167787tjU5UoTwgd.png
    (5) 在PowerShell中打"echo %PATH%"或"sqlplus",如成功則代表Oracle驅動程式已可以使用
    https://ithelp.ithome.com.tw/upload/images/20250930/20167787MX9jvTdc4v.png
    (6) 在PowerShell運行以下指令:
    npm install oracledb
    
    https://ithelp.ithome.com.tw/upload/images/20250930/20167787GeoTZuEwGZ.png
    (7) 在VSCode中創建test.js文件後,輸入以下程式碼:
    // test.js
    const oracledb = require('oracledb');
    console.log('OracleDB 版本:', oracledb.version);
    console.log('安裝成功!');
    
    https://ithelp.ithome.com.tw/upload/images/20250930/20167787pcHXHIGXBa.png
    (8) 在VSCode中打開內部終端機後,輸入以下指令:
    node test.js
    
    https://ithelp.ithome.com.tw/upload/images/20250930/20167787eiTwPb2bxI.png
  3. npm套件
    (1) 在當前的專案資料夾中輸入以下指令:
    npm init -y
    npm install express oracledb
    
    npm init -y → 創建package.json文件
    npm install express oracledb → 安裝兩個套件(Express/oracledb)
    https://ithelp.ithome.com.tw/upload/images/20251001/20167787aiDZR9aRSq.png
    https://ithelp.ithome.com.tw/upload/images/20251001/20167787VcvGkY0Mx0.png
    (2) 測試
    // server.js
    const express = require('express');
    const app = express();
    const port = 3000;
    app.get('/', (req, res) => {
      res.send('Hello World! 我的 Express 伺服器運作中!');
    });
    app.listen(port, () => {
      console.log(`伺服器運行在 http://localhost:3000`);
    });
    
    終端機顯示:
    https://ithelp.ithome.com.tw/upload/images/20251001/20167787E1DFwvG40R.png
    網頁顯示:
    https://ithelp.ithome.com.tw/upload/images/20251001/20167787KHO8KxFEz9.png

以上是我今天的分享 ~ 謝謝大家!


上一篇
Day20:查詢測試(2/2)
下一篇
Day22:使用者權限測試+前端介面設計
系列文
基於 Oracle 資料庫的醫院電子病歷系統設計與建置22
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言