, 一、前言
各位大佬應該知道,在大型項目中都需要有數據傳輸層,一般項目都采用的是MVC結構,如果有10個表,則會創建10個實體類,在各個層之間應該使用實體類傳遞數據;
在微服架構中,也許有很多個客戶端,有的客戶端可能會有數據訪問層;有的客戶端沒有數據訪問層;
假設現在有ABC三個客戶端,A客戶端負責提供數據,可能會寫實體類;
B客戶端調用A客戶端controller的數據,傳遞到頁面;因此不需要寫數據訪問層代碼和業務層代碼,但是這個時候如果你接受的A客戶端數據返回的是一個對象,這個時候B在接受A數據的時候最好拿對象去接受,但是B沒有數據訪問層就沒有寫實體類,這個時候就比較難受了,你是創建實體類呢 還是不創建呢 ?因為是2個不同的項目,你創建了也不一定是和A一樣的?怎么辦呢?等會說?
同樣的道理,C去調用B控制層的方法出數據給頁面,也需要拿對象接受,又遇到不寫數據訪問層,不寫傳輸層,不知道拿啥接值的問題?咋辦嘞?
我們寫個公共組件類,里面把整個大系統項目中所有的數據庫表 都寫一個映射的實體類,然后使用mvc命令或idea工具把整個項目 以打包為war包或jar包的形式 ,打入我們的maven倉庫中,然后其他項目使用 的時候用 直接在pom中引用我們打好的依賴就ok了,強調一下大型系統項目中的這么干,如果你覺的麻煩,Holly稍后會介紹 不用對象傳參的用法哦!技能多多,大家持續關注哈!
二、使用idea工具或mysql數據庫客戶端工具SQLyog 連接虛擬機上docker下mysql容器中數據庫,並創建表數據
注意:要啟虛擬機docker下的mysql容器才能使用哦,docker上安裝mysql參照我的帖子哦,有圖有真相!
1. 開啟虛擬機centos 7,然后使用xshell 查看docker上全部的容器
注意,要使用mysql,則需要啟動docker上mysql所在的容器
2.查看已經啟動的容器,發現我們mysql所在的容器並未啟動,
3.啟動mysql所在的容器
4.使用SQLyog鏈接數據或idea鏈接數據
5.創建數據庫腳本
create table classes ( cid int(10) not null AUTO_INCREMENT PRIMARY KEY , cname VARCHAR(20) NOT NULL ); insert into classes(cname) VALUES ('KD59'),('KD66'),('KD67'); create table student ( sid int(10) not null AUTO_INCREMENT primary KEY, sname VARCHAR(20) NOT NULL , password VARCHAR(20) NOT NULL , subject VARCHAR(20) NOT NULL , result DOUBLE(10,2), cid INT(10) not null REFERENCES classes(cid) ); INSERT INTO student(sname, password, subject, result, cid) VALUES ('張三','123','java',89.8,1), ('李四','123','html',99.8,2), ('王五','123','mysql',99.8,3);
三、創建公共組件案例項目
1.創建項目
2、選擇創建項目方式,因為只是數據傳輸層的公共組件即數據表的映射類,因此只需要創建普通的maven項目即可
3、group命名,給模塊起名字
4、選擇我們的maven依賴地址
5.再次確定工程名和模塊名
6.項目結構如下
7.創建Classes類
package cn.kgc.vo; import java.io.Serializable; public class Classes implements Serializable{ private Integer cid; private String cname; public Classes() { } public Classes(Integer cid, String cname) { this.cid = cid; this.cname = cname; } public Integer getCid() { return cid; } public void setCid(Integer cid) { this.cid = cid; } @Override public String toString() { return "Classes{" + "cid=" + cid + ", cname='" + cname + '\'' + '}'; } }
8.創建Student類
package cn.kgc.vo; import java.io.Serializable; public class Student implements Serializable{ private Integer sid; private String sname; private String password; private String subject; private Double result; //外鍵列 private Classes classes; public Student() { } public Student(Integer sid, String sname, String password, String subject, Double result, Classes classes) { this.sid = sid; this.sname = sname; this.password = password; this.subject = subject; this.result = result; this.classes = classes; } public Integer getSid() { return sid; } public void setSid(Integer sid) { this.sid = sid; } @Override public String toString() { return "Student{" + "sid=" + sid + ", sname='" + sname + '\'' + ", password='" + password + '\'' + ", subject='" + subject + '\'' + ", result=" + result + ", classes=" + classes + '}'; } }
9.使用idea工具進行打包到我們自己的maven倉庫,
10.查看構建結構
到此公共組件構建完成,后面可以在pom中引入該依賴使用
此帖子為原創
作者:紅酒人生
轉載請注明出處:https://www.cnblogs.com/holly8/p/11011301.html