spring boot 註解整理,用過的
阿新 • • 發佈:2018-12-18
1、@Repository
(1)@Repository(value="userDao")
該註解是告訴Spring,讓Spring建立一個名字叫“userDao”的UserDaoImpl例項。
當Service需要使用Spring建立的名字叫“userDao”的UserDaoImpl例項時,就可以使用@Resource(name = "userDao")註解告訴Spring,Spring把建立好的userDao注入給Service即可。
(2)@Repository
dao檔案使用@Repository註解,標註這是一個持久化操作物件.
/** * 使用@Repository註解,標註這是一個持久化操作物件. */ @Repository public class CatDao { @Resource JdbcTemplate jdbcTemplate; public Cat selectCatName(String catName) { /** * 1、定義一個Sql語句; * 2、定義一個RowMapper. * 3、執行查詢方法. */ String sql = "select * from cat where cat_name=:catName"; RowMapper<Cat> rowMapper = new BeanPropertyRowMapper<>(Cat.class); Cat cat = jdbcTemplate.queryForObject(sql, new Object[] {catName}, rowMapper); return cat; } }
如果 Web 應用程式採用了經典的三層分層結構的話,最好在持久層、業務層和控制層分別採用 @Repository、@Service 和@Controller 對分層中的類進行註釋,而用 @Component 對那些比較中立的類進行註釋。
2、@Entity
使用@Entity進行實體類的持久化操作,當JPA檢測到我們的實體類當中有@Entity 註解的時候,會在資料庫中生成對應的表結構資訊。
/** * 建立了一個實體類。 * * 如何持久化呢? * * 1、使用@Entity進行實體類的持久化操作,當JPA檢測到我們的實體類當中有 * * @Entity 註解的時候,會在資料庫中生成對應的表結構資訊。 * * * 如何指定主鍵以及主鍵的生成策略? * * 2、使用@Id指定主鍵. * */ @Entity public class Cat { @Id @GeneratedValue(strategy=GenerationType.AUTO) private int id; private String catAge; private String catName; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getCatAge() { return catAge; } public void setCatAge(String catAge) { this.catAge = catAge; } public String getCatName() { return catName; } public void setCatName(String catName) { this.catName = catName; } }