Spring
springframework
Spring-web
先說一下Request瞭解一下請求參數是什麼
在訪問各種各樣網站時,經常會發現網站的URL的最後一部分會像是:?xxxx=yyyy&zzzz=wwww。這就是 HTTP 協議中的 Request 參數,它有什麼用呢?先來看一個例子:
在 google 搜尋 hackmd
瀏覽器的 URL 就會變成:
https://www.google.com/search?q=hackmd&oq=hackmd&aqs=chrome..69i57j0l3j69i60l4.7956j0j7&sourceid=chrome&ie=UTF-8
我們可以看到 ?q=hackmd
,就是搜尋時請求的參數,不同參數之間用&
分隔,且每個參數以name=value
的方式表示,在這個例子中輸入不同關鍵字,在搜尋結果的頁面 URL 中 q 的參數就會不同。
http://localhost:8080/springmvc/hello/101?param1=10¶m2=20
@RequestMapping("/hello/{id}")
public String getDetails(@PathVariable(value="id") String id,
@RequestParam(value="param1", required=true) String param1,
@RequestParam(value="param2", required=false) String param2){
.......
}
相信大家可能注意到了, @RequestParam 和 @PathVariable 都能夠完成類似的功能,因為本質上,它們都是使用者的輸入,只不過輸入的部分不同,一個在URL路徑部分,另一個在參數部分,簡單的說就是 URL 寫法不同,如下:
使用 @RequestParam 時,URL 是這樣的:http://host:port/path?參數名=參數值
使用 @PathVariable時,URL是這樣的:http://host:port/path/參數值
@JoinTable Specifies the mapping of associations. It is applied to the owning side of an association. Join table 通常應用於映射: 多對多 單向的一對多 雙向的多對一/一對多 單向的多對一 單向及雙向的一對一 單向
Apr 29, 2020一般情況的情境描述 假設本來有10個 items,依序排列如下。 idPK labelUNIQUE ordinalUNIQUE 1 甲 1
Mar 7, 2020DAO (data access object): 用於ORM將資料從資料庫提取的邏輯物件,其中邏輯主要包含如何提取資料庫的資料並且將資料包裝成PO。 用來封裝對資料庫的訪問,通過它可以把 POJO 持久化為 PO,用PO去組裝成 DTO、VO。 是一個物件導向的 interface,負責持久層的操作,主要用來封裝對數據庫的訪問,常見操作不外乎 CRUD。 DAO管理著所有的資料訪問細節,所有的實現細節相關的程式碼(比如SQL 語句)都包含在DAO而不在商業物件中. 這樣使得程式碼變的更加健壯而且大大提高了開發效率. PO (persistent object): 因為ORM框架的誕生所以才有PO的概念,可以簡單地將它視為資料庫table對應的java物件,通常PO的名詞都會與使用hibernate相關
Feb 21, 2020將重複的 import 以 * 號縮排 在@Entity 下面一排加入@SuppressWarnings({"PersistenceUnitPresent", "ValidPrimaryTableName"}) @NamedQueries 整段拿掉 public class ... implements Serializable 的 Serializable 改為 java.io.Serializable -> 改完後 ctrl + shift + i A→Z排序 @size、length 移除 刪除 private static .... = 1L,按 ALT + Insert 插入隨機亂數(選 Add generated serialVersionUID) @table 的 name="這個 entity 的檔案名(須小寫)" 的屬性移到第三個位置,若沒name屬性則新增 將每個欄位都加入name(@Column 內新增) 單一欄位為 unique,須在 @Column 設定unique=ture
Feb 21, 2020or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up