Spring使用注解方式實(shí)現(xiàn)創(chuàng)建對象
首先 我們要搞清楚一個基礎(chǔ)概念
什么是注解?
注解
可以說是代碼里的一些特殊標(biāo)記。
格式是 @() 里面可以有 屬性=屬性的值 可以有多個屬性值 多屬性值之間 用逗號隔開
注解 可以加載很多東西上面 例如 方法上面 屬性上面 還可以在類上面
而 注解方式的目的 或者好處 在于簡化xml的配置操作
然后 我們來代碼走一下
我們創(chuàng)建一個java項(xiàng)目 引入spring 的幾個基礎(chǔ)包
然后 需要做注解方式的話 你需要多引入一個 JAR包

aop包中有一些封裝 為注解做了一些功能
然后我們在src下創(chuàng)建 一個包 叫 Bean 在 Bean包下再創(chuàng)建一個包 叫 UserData
然后 在src下創(chuàng)建配置文件 bean.xml 參考代碼如下
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd">
<context:component-scan base-package="Bean.UserData"></context:component-scan>
</beans>
這里 我們利用了 context:component-scan開啟掃描 spring 如果你想用注解 一定要把包的 項(xiàng)目掃描打開
不然他是找不到注解的
那么 這里 我們指定掃描的包就是 Bean下的UserData 由base-package屬性指定
然后 我們了解一下 創(chuàng)立類對象的注解 有四個
- @Component
- @Service
- @Controller
- @Repository
他們都能實(shí)現(xiàn)創(chuàng)建對象這個功能
然后 我們在UserData包下創(chuàng)建一個user類
參考代碼如下
package Bean.UserData;
import org.springframework.stereotype.Component;
//最上面這個注解 就相當(dāng)于之前xml中的bean聲明 value就是當(dāng)時的id class 就是當(dāng)前類的路徑
//類上的注解 value可以不寫 不寫用默認(rèn)值 默認(rèn)值就是類的名字
//但如果你的類名名首個字母是大寫 默認(rèn)值會將首字母變成小寫
@Component(value = "userService")
public class user {
public String toString(){
return "我是user對象";
}
}
注解上面的注釋我寫的還是比較認(rèn)真的 大家可以好好看一下
然后我們創(chuàng)建測試類來試一下效果
在src下編寫測試類 我這里直接叫text 參考代碼如下
import Bean.UserData.User;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class text {
public static void main(String args[]) {
ApplicationContext context = new ClassPathXmlApplicationContext("bean.xml");
User user = context.getBean("userService", User.class);
System.out.println(user);
}
}
運(yùn)行結(jié)果如下

也是成功輸出了user 帶出了他的toString
指定xml 去掃描 Bean下的UserData包 讀取了 所有有注解的文件 讀到了user 通過注解聲明的userService bean對象
到此這篇關(guān)于Spring使用注解方式實(shí)現(xiàn)創(chuàng)建對象的文章就介紹到這了,更多相關(guān)Spring創(chuàng)建對象內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
在Spring Boot中實(shí)現(xiàn)多環(huán)境配置的方法
在SpringBoot中,實(shí)現(xiàn)多環(huán)境配置是一項(xiàng)重要且常用的功能,它允許開發(fā)者為不同的運(yùn)行環(huán)境,這種方式簡化了環(huán)境切換的復(fù)雜度,提高了項(xiàng)目的可維護(hù)性和靈活性,本文給大家介紹在Spring Boot中實(shí)現(xiàn)多環(huán)境配置的方法,感興趣的朋友跟隨小編一起看看吧2024-09-09
打開IDEA配置Spring項(xiàng)目時發(fā)現(xiàn)沒有選擇java?1.8的選項(xiàng)解決方案
這篇文章主要介紹了打開IDEA配置Spring項(xiàng)目時發(fā)現(xiàn)沒有選擇java?1.8的選項(xiàng)的解決方案,文中通過代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者idea具有一定的參考借鑒價值,需要的朋友可以參考下2025-03-03
詳解SpringBoot中的參數(shù)校驗(yàn)(項(xiàng)目實(shí)戰(zhàn))
這篇文章主要介紹了SpringBoot中的參數(shù)校驗(yàn),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-07-07
使用Vue+Spring Boot實(shí)現(xiàn)Excel上傳功能
這篇文章主要介紹了使用Vue+Spring Boot實(shí)現(xiàn)Excel上傳,需要的朋友可以參考下2018-11-11
SpringCloud Config分布式配置中心使用教程介紹
springcloud config是一個解決分布式系統(tǒng)的配置管理方案。它包含了 client和server兩個部分,server端提供配置文件的存儲、以接口的形式將配置文件的內(nèi)容提供出去,client端通過接口獲取數(shù)據(jù)、并依據(jù)此數(shù)據(jù)初始化自己的應(yīng)用2022-12-12
Spring boot 總結(jié)之跨域處理cors的方法
本篇文章主要介紹了Spring boot 總結(jié)之跨域處理cors的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-02-02
jdbc鏈接遠(yuǎn)程數(shù)據(jù)庫進(jìn)行修改url操作
這篇文章主要為大家詳細(xì)介紹了jdbc鏈接遠(yuǎn)程數(shù)據(jù)庫進(jìn)行修改url操作,感興趣的小伙伴們可以參考一下2016-06-06
SpringBoot2.0+阿里巴巴Sentinel動態(tài)限流實(shí)戰(zhàn)(附源碼)
這篇文章主要介紹了SpringBoot2.0+阿里巴巴Sentinel動態(tài)限流實(shí)戰(zhàn)(附源碼),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
淺談java中為什么重寫equals后需要重寫hashCode
今天帶各位學(xué)習(xí)一下java中為什么重寫equals后需要重寫hashCode,文中有非常詳細(xì)的圖文介紹及代碼示例,對正在學(xué)習(xí)java的小伙伴們有很好的幫助,需要的朋友可以參考下2021-05-05

