2017-07-18 46 views
0

我剛剛開始實習生職位,對所有我需要做的工作感到有點不知所措。我從來沒有使用過數據庫,也不知道如何開始。我的主管要求我將Spring數據與內存數據庫連接起來,寫入和刪除對象(真的是任何東西)。我使用eclipse並安裝了Spring(我認爲),但是我堅持不了,並且不知道從哪裏開始並且簡化。我以前從未在數據庫工作過,而且我的主管似乎一直很忙。SpringBoot/Spring Data入門/休眠

我遇到了這個例子,但是不知道在哪裏寫哪個代碼,因爲它似乎是經驗豐富的程序員來解釋:

http://projects.spring.io/spring-data/#quick-start

下面是一些從引導代碼:

@Entity 
public class Employee { 

    private @Id @GeneratedValue Long id; 
    private String firstName, lastName, description; 

    private Employee() {} 

    public Employee(String firstName, String lastName, String description) { 
     this.firstName = firstName; 
     this.lastName = lastName; 
     this.description = description; 
     } 
    } 

這是在Spring Data的首頁,它是關於入門。但我不確定這意味着什麼,也不知道如何運行代碼或構建什麼類。如果我嘗試在pam文件中編寫它們的代碼,它只是顯示錯誤,而實體不起作用...

+0

你是什麼意思,「我想我已經安裝了春天」?你有沒有添加依賴到你的pom或複製罐子?如果是這樣,你應該查看一些很好的春季教程。 – Christian

+0

我在eclipse市場上發現了spring,並安裝了擴展。我做了一個可以工作的項目,但不知道如何訪問數據庫,以及我所做的項目,我只是閱讀和複製,試圖瞭解零碎。 – Asker

+0

不要忘記接受/ upvote幫助你的答案... – Cepr0

回答

1
  1. 首先,設置Maven在Eclipse(你可以找到說明在谷歌,here爲例)。

  2. 然後轉到start.spring.io並生成您的項目模板。你需要選擇只是JPAH2H2 - 在內存數據庫)的相關性,將您集團(「com。示例」默認)和名稱(默認爲「示範」)。然後點擊'生成項目'。將文件保存並解壓縮到計算機上的某個目錄後,在IDE中打開該項目。

  3. 你會發現一個應用程序類 - DemoApplication。在它旁邊創建您的實體類,例如 - Employee。您將保存並從數據庫加載其數據。在此類中自動生成getters, setterstoString

@Entity 
public class Employee { 

    @Id 
    @GeneratedValue 
    private Long id; 

    private String firstName, lastName, description; 

    private Employee() {} 

    public Employee(String firstName, String lastName, String description) { 
     this.firstName = firstName; 
     this.lastName = lastName; 
     this.description = description; 
    } 

    // Autogenerate here getters, setters and toString() 
} 
  • 然後創建一個 '存儲庫' 類到數據庫提供的訪問:
  • public interface EmployeeRepository extends JpaRepository<Employee, Long> {} 
    
  • 在您的項目中找到DemoApplicationTests類,編輯它,然後運行:
  • @RunWith(SpringRunner.class) 
    @SpringBootTest 
    public class DemoApplicationTests { 
    
        // Injecting your repository 
        @Autoware 
        private EmployeeRepository repo; 
    
        @Test 
        public void dbTest() { 
    
         // Create two employees 
         Employee gandalf = new Employee("Gandalf", "Grey", "Wizard"); 
         Employee frodo = new Employee("Frodo", "Baggins", "Hobbit"); 
    
         // Save them to DB 
         repo.save(Arrays.asList(gandalf, frodo)); 
    
         // Read them from DB 
         List<Employee> employees = repo.findAll(); 
    
         // Print them 
         employees.forEach(System.out::println); 
        } 
    } 
    

    就這樣!

    更多信息

    Spring Data JPA Project

    Spring Data JPA Reference

    Getting started guide

    +0

    所以我完成了第4步。我在eclipse中的Employee.java所在的同一個位置創建了一個接口類。它似乎還沒有看到Entity,Id和GeneratedValue存在。我添加了get/set廣告toString,但是當我運行pom文件時它仍然崩潰。 – Asker

    +0

    @Asker第一:**'謝謝'**等於**接受/提高答案**在這裏,不要忘記這個!其次,如果你不知道如何在Eclipse中創建項目和Java類,你應該在另一個問題上提出這個問題。或者在Google上找到答案,例如(https://www.google.com.ua/search?q=my+first+maven+project+in+eclipse)。關於你最後的問題 - 只需解壓你在** start.spring.io **中創建的項目,然後在Eclipse中將其作爲**新項目**打開。然後在應用程序類的相同包(文件夾)中創建實體類和回購類。 – Cepr0

    +0

    @Asker你不需要'運行pom文件'。你不能'運行'pom文件。您可以運行應用程序或一些測試。在我的回答中,我建議你只是運行測試課程。 – Cepr0

    0

    如果您之前沒有使用過Spring,那麼您可以享受一段時間。很多新開發Spring的開發人員會因控制容器和依賴注入的倒置而拋出。在XML配置文件中有許多歷史教程材料,而大多數開發人員都希望以編程方式工作。而最糟糕的是,Spring在做代碼時往往會做很多魔術,這並不總是顯而易見的。

    首先要做的是確保您的IDE包含正確的插件。當你可以像注入類來定義它們時,對Spring的一些困惑可以減少,這是正確的插件可以爲你做的。

    就你在前面的代碼而言,這聽起來像你的設置是你遇到問題的地方,也許你應該看看Spring Boot的教程或類似的工具來獲取工作應用程序/容器。這個Spring Data starter假設你已經有了一個工作中的應用程序,並且將它集成到應用程序中。試試類似Sprint Boot quickstart,也可以查看Actuators以獲得更好的現成功能。

    至於從未使用過數據庫,這是一個很大的課題。從某些方面來說,Spring Data可以爲您節省一些成本,因爲對象關係映射(簡稱ORM)有助於將類實例自動轉換爲數據庫行。但是當你使用@Id之類的註釋時,你也可能會發現自己開始與諸如​​索引和引用完整性之類的概念鬥爭,這些概念代表您自動完成。

    我會和你的主管一起談談你在該地區的弱點,而不是沉默地掙扎。積極主動並且找到一些數據庫101的資料,並在可能的時候仔細閱讀相關主題,特別是如果你閒着,並且尊重你的主管可能不得不處理其他一些優先事項。一個優秀的開發人員永遠不會無事可做,因爲個人的改進是一個不變的後臺任務,數據庫是一項非常核心的技能。

    +0

    謝謝你的評論,我在一個實習生不常見的公司工作,並始終把我的雙手充分,試圖找出這一切意味着什麼......我認爲隨着時間的推移,我會變得更好,因爲我們現在都經歷了同樣的事情。這只是我認爲這個社區可能提供一些閱讀:)再次感謝你! – Asker