โปรเจคมีสองโปรเจค โปรเจคแรกคือคนทำเห็น โปรเจคที่สองคนใช้งานเห็น ให้ทั้งสองสามารถทำงานร่วมกัน สื่อสารกันได้
เริ่มต้น Start Docker เช็คสถานะ Database
docker ps -a
การ pull MS SQL มาติดตั้งใน Docker
docker pull microsoft/mssql-server-linux
การสร้าง Database MS SQL
sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=กำหนดเอง" -p 1433:1433 --name ชื่อDatabase -d microsoft/mssql-server-linux
เช็คสถานะ Database และใช้งาน Database ที่ต้องการ
docker ps -a
docker start "id" //กรณีที่ยังไม่ได้เข้าใช้งาน เพราะถ้าสร้างครั้งแรกจะเข้าใช้งานให้เราเลย
เปิด DBeaver แล้วเข้าใช้ Database ที่สร้างกรอก User name :, Password: ให้ตรงตามไว้บน Docker และกดไปที่ Test Connection > OK > Finish
สร้าง Database ชื่อ dogdb ด้วยคำสั่ง
CREATE DATABASE dogdb COLLATE Thai_CI_AS;
สร้างตารางชื่อ owner
CREATE TABLE owner (
id int IDENTITY(1,1) PRIMARY KEY,
name varchar(30),
lastName varchar(40)
)
สร้างตารางชื่อ dog
CREATE TABLE dog (
id int IDENTITY(1,1) PRIMARY KEY,
name varchar(30),
color varchar(10),
age int
);
สร้างตารางชื่อ registerDog
CREATE TABLE registerDog (
id int IDENTITY(1,1) PRIMARY KEY,
ownerId int,
dogId int
);
การ Execute เพิ่ม Table และ Column พร้อมกับกำหนด Primary Key
ใช้ SpringBoot ติดต่อกับ Database ใช้ SpringIO Generate | Link:https://start.spring.io/
จะได้ไฟล์ ที่ Generate คลิกขวาเลือก Show in Finder > Double Click เพื่อแตกไฟล์
ใช้ IntelliJ IDEA CE มาเปิด
ServiceSystemApplication.java ไฟล์ Main ที่เอาไว้สำหรับ Run
เปลี่ยนนามสกุลไฟล์ application.properties ให้เป็น .yml และกรอกติดต่อกับ Database ที่เราสร้างกับ localhost ที่ใช้คือ 3030
เมื่อรันที่ไฟล์ Main แล้วที่ Browser จะได้หน้าตาแบบนี้
เราจะสร้าง controller มาหนึ่งตัว โดยการคลิกขวา com.easyjung.servicesystem >New > Package > ต่อด้วย controller
สร้างไฟล์ ชื่อ RegisterDogController.java โดยการคลิกขวาที่ controller > New > Java/Class
ภายในไฟล์ใช้ @GetMapping เพื่อ MappingPath
ที่ Browser จะได้แบบนี้
จะใช้@PostMapping เพื่อใช้งานเรียกดูและกำหนดค่า แต่ที่ตัวแปร Request จะแดง เพราะยังไม่คลาสนี้
สร้างคลาสชื่อ Request ตัวแปร RegisterEwalletHeader จะแดง เพราะเขายังไม่มีคลาส
จะสร้างคลาสชื่อว่า RegisterEwalletHeader ที่มีตัวแปรชื่อ chanelId มีค่าเป็น String
**การสร้าง getter and setter สามารถกด command + n แล้วเลือก Genaret ได้เลย
เราจะใช้ Postman ในการยิงหา Data ตาม URL ที่เรากำหนด
จากที่ Error เราจะกรอกที่ Request คือ registerDogHeader ที่ประกาศเอาไว้ และ chanelId ที่เป็น String ที่ Body แล้ว Send ใหม่
{
"registerDogHeader": {
"idDog":"30"
}
}
เราทำได้แล้ว 555+ ต่อกัน Part หน้า