2019年8月30日 星期五
2019年8月15日 星期四
Spring Data Jpa - Hibernate 一對一 單向 跟一對多 單向
一對一 單向
package com.example.demo.dto; import com.example.demo.model.Student; public class PersonDTO2 { private Long id; private String author; private int price; private String title; private Student student ; public Student getStudent() { return student; } public void setStudent(Student student) { this.student = student; } public void setId(Long id) { this.id = id; } public void setAuthor(String author) { this.author = author; } public void setPrice(int price) { this.price = price; } public void setTitle(String title) { this.title = title; } public PersonDTO2() { } public Long getId() { return id; } public String getAuthor() { return author; } public int getPrice() { return price; } public String getTitle() { return title; } @Override public String toString() { return "PersonDTO2 [id=" + id + ", author=" + author + ", price=" + price + ", title=" +
title + ", student " + student + "]"; } }
2019年8月13日 星期二
JAVA面試題
1.物件導向有哪些,並說說這些特性?
Ans:
。物件導向有 : 抽象 、繼承 、多型、封裝。
。 抽象 一個類中沒有包含足夠的信息來描述一個具體的對象就是抽象類 。
。 繼承 類別物件的資源可以延伸和重複使用,在程式中可以利用extends 來實作繼承關係。
。 多型 多個相同名稱的方法,傳入不同的參數,會執行不同的敘述。
。 封裝 封裝是把數據和操作的方法封裝起來,對數據的訪問只能通過已定義的接口進行訪問。
2.作用域 public , private , protected, 以及不寫時的區別
Ans:
不寫時 默認為 friendly
Ans:
。物件導向有 : 抽象 、繼承 、多型、封裝。
。 抽象 一個類中沒有包含足夠的信息來描述一個具體的對象就是抽象類 。
。 繼承 類別物件的資源可以延伸和重複使用,在程式中可以利用extends 來實作繼承關係。
。 多型 多個相同名稱的方法,傳入不同的參數,會執行不同的敘述。
。 封裝 封裝是把數據和操作的方法封裝起來,對數據的訪問只能通過已定義的接口進行訪問。
2.作用域 public , private , protected, 以及不寫時的區別
Ans:
作用域
|
當前類
|
同一package
|
子孫類
|
其他package
|
public
| ● | ● | ● | ● |
protected
| ● | ● | ● | |
friendly
| ● | ● | ||
private
| ● |
3.甚麼是 jira 、 jen kins
Hibernate 關係設定
A. 關系種類
1.
一對一: 一對一單向(主鍵,外鍵),
一對一雙向(主鍵,外鍵)
例:部門對於職位
2.
一對多: 一對多單向,多對一單向,多對一雙向
例:老闆對於員工 主控權是在多 效能會比較好 會減少很多查詢!
3.
多對多: 多對多單向,多對多雙向
例:餐廳位置,一個人有一個位置,多人有多人的位置
B.簡單 建立 H2 資料庫 的方法
因為我們要先走資料庫可以比對所以要先建立資料庫來設定關係
1.先開啟資料檔創建 JAVA
創建 Book , Student 兩個資料夾
2.資料庫
BOOK的 Java 設定
package com.example.demo.model; import lombok.Data; import javax.persistence.*; /** * An entity class which contains the information of a single person. * * @author Petri Kainulainen */@Entity@Table(name = "Book") @Data //提醒這邊要加上Data 才會幫忙建置public class Book { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; //屬性 private String author; private int price; private String title; /** * 一對一單向 * @OneToOne 設定主要關係 * @JoinColumn 對於有關聯進行設定 * 因為我們只有屬性 沒有get跟set的設置 * 本來要加在get 上面只要 加入在 * 屬性設定上面就可以了 */ @OneToOne @JoinColumn(name="StudentId") private Student student; @Version private long version = 0; }
Student的 Java 設定
package com.example.demo.model; import lombok.Data; import javax.persistence.*; @Entity@Table(name = "Student") @Data //提醒這邊要加上Data 才會幫忙建置public class Student { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; private String Name; private int Book; @Version private long version = 0; }
3.接下來就可以進行連線設定
訂閱:
文章 (Atom)