中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

微信開發(fā)者中心aso優(yōu)化貼吧

微信開發(fā)者中心,aso優(yōu)化貼吧,網頁制作與設計用什么軟件,昆明hph網站建設1.關于Spring中的注解裝配的作用 Spring中的注解裝配簡化了xml中bean的配置,大大提高了開發(fā)效率。 原本我們想在spring容器中使用某個類需要先在xml中配置該類的bean。使用注解后可以直接通過包掃描的方式自動在我們調用類時自動裝配。 例如: 當我們想…

1.關于Spring中的注解裝配的作用

Spring中的注解裝配簡化了xml中bean的配置,大大提高了開發(fā)效率。

原本我們想在spring容器中使用某個類需要先在xml中配置該類的bean。使用注解后可以直接通過包掃描的方式自動在我們調用類時自動裝配。

例如:

當我們想要使用UserDaO實現(xiàn)類時需要再Xml配置文件上添加如下配置

<bean id="userDao" class="com.yc.dao.impl.UserDaoImpl" />

?但是到我們在類上添加注解:@complicate一樣可以到達上述xml的效果

@Repository("userDao")
public class UserDaoImpl implements UserDao {@Overridepublic void getUser() {System.out.println("注解測試==>、、、");return ;}
}

xml中的

<bean class="com.xxxx" />就相當于===》@Repository()

<bean id="userDao"? /> 就箱單于==》@Repository("userDao")

但為了可以識別到我們的注解需要再xml中配置包掃描:

    <context:component-scan base-package="com.yc"/>//此處的包要寫成自己對應的項目包

如此一來bean的配置也就大大簡化,提高了開發(fā)效率。

2.Ioc中的注解:

注解說明
@Component使用在類上用于實例化Bean 相當于 <bean></bean>
@Controller使用在web層類上用于實例化Bean
@Service使用在service層類上用于實例化Bean
@Repository使用在dao層類上用于實例化Bean

需要注意的是:使用注解時,當類級別注解不指定具體的 bean 名稱時,Spring 會使用類的名稱(byname)作為 bean 的名稱,比如UserDaoImpl的類加上注解@Repository,而不設置注解參數(shù)時,spring會默認以userDaoImpl作為該bean的 id。所以在使用過程中應該注意。

例如:

你會發(fā)現(xiàn)注解不設置參數(shù)時

@Repository 
public class UserDaoImpl implements UserDao { private User user; public void setUser(User user){ this.user=user; }@Override public void getUser() { System.out.println("注解測試==>、、、"); return ; } 
}

?當我通過測試類去調用時,控制臺就會報錯,顯示找不到bean。

測試類如下:

    @Testpublic void Springtest2(){ClassPathXmlApplicationContext cac=new ClassPathXmlApplicationContext("springConfig.xml");UserDao userDao=cac.getBean(UserDaoImpl.class);userDao.getUser();System.out.println("````");}

而加上(“userDao”)便可以找到

@Repository("userDao") 
public class UserDaoImpl implements UserDao { private User user; public void setUser(User user){ this.user=user; }@Override public void getUser() { System.out.println("注解測試==>、、、"); return ; } 
}

原因:

在 Spring 框架中,@Repository 注解用于標識一個類屬于數(shù)據訪問層(DAO)的組件。默認情況下,Spring 會按照類型來查找并創(chuàng)建相應的 bean 實例。

在示例中,當類級別注解 @Repository 不指定具體的 bean 名稱時,Spring 使用類的名稱(byname)作為 bean 的名稱此處的例子即以userDaoImpl作為其名稱而不是以userDao為名稱,所以在容器掃描識別時才會顯示找不到userDao的bean,容器只掃描到userDaoImpl的bean。因此,如果你的類名為 UserDaoImpl,那么根據默認的查找規(guī)則,Spring 將會尋找一個名為 "userDaoImpl" 的 bean。

對于第一個示例中的類:

@Repository
public class UserDaoImpl implements UserDao {// ...
}

如果未在 @Repository 注解中指定 bean 的名稱,Spring 默認會使用類名小寫(camelCase)。因此,它將在上下文中查找名為 "userDaoImpl" 的 bean。如果找不到與該名稱匹配的 bean,就會出現(xiàn)找不到 bean 的錯誤。

而對于第二個示例中的類:

java

@Repository("userDao")
public class UserDaoImpl implements UserDao {// ...
}

@Repository 注解指定了具體的 bean 名稱為 "userDao",這意味著 Spring 在上下文中查找名為 "userDao" 的 bean,并成功創(chuàng)建了實例。

綜上所述,注解 @Repository 的查找方式實際上是基于 bean 的名稱(byname)進行查找的。你可以通過顯式指定 @Repository 注解的值,來定制 bean 名稱并避免找不到 bean 的錯誤。

3.DI注解

注解說明
@Autowired使用在字段上用于根據類型依賴注入,相當于 <property></property> ,根據類型注入。底層使用反射
@Qualifier結合@Autowired一起使用,不能單獨使用。根據id查找同類型下的實例
@Resource相當于@Autowired+@Qualifier,按照名稱進行注入

http://www.risenshineclean.com/news/56641.html

相關文章:

  • 部隊網站建設多少錢東莞網站seo公司哪家大
  • 網站建設合作流程搜索app下載
  • 網站日常推廣怎么做整合營銷傳播方法包括
  • 域名購買網站網絡銷售是干嘛的
  • 珠海百度推廣優(yōu)化seo排名優(yōu)化資源
  • 網站懸浮代碼成都網站推廣
  • 網站建設費用推薦網絡專業(yè)網絡服務商電話
  • 網站建設改版升級seo雙標題軟件
  • 網站開發(fā)哪里關鍵詞搜索技巧
  • wordpress 導入 附件seo系統(tǒng)源碼
  • 做網站前臺需要什么技能模板網站建設
  • 網站設計制作費用google網頁版
  • 外包推廣服務搜索引擎優(yōu)化專員
  • 做網站用那一種語言最好推廣營銷
  • 百度廣告平臺河北seo推廣
  • 教做面包的網站seo營銷方案
  • 旅行社建網站如何自己做網站
  • wordpress香港主機推薦北京seo排名廠家
  • nat123做網站廈門百度快速優(yōu)化排名
  • 做的網站手機打不開怎么回事啊徐州網站建設
  • 貿易公司如何做英文網站保定seo網絡推廣
  • 網站文字超鏈接怎么做seo 360
  • 網站建設設計設計公司哪家好軟文推廣是什么意思?
  • 百度seo培訓課程廈門seo服務
  • 做網站要買數(shù)據庫安卓優(yōu)化大師hd
  • 個人博客系統(tǒng)wordpress電腦優(yōu)化軟件推薦
  • 做網站的技術關鍵網站如何注冊
  • wordpress多站點子網站css錯誤手機百度賬號登錄入口
  • 好點得手機網站托管一套完整的運營方案
  • 南陽網站建設seo品牌網站建設方案