コンポーネント@の春の注釈、コントローラ@、サービス@、@リポジトリ

@
コンポーネント@春の注釈、コントローラ@、サービス@ 、@リポジトリので、非常に単純な理由で一緒に話して、実際にはこれらの4つの音そこには本質的な違いはありませんが、後わずか3いくつかは、4の、それを命名関与ご注意効果は確かに一貫しています。Appleのようについてこの命名規則を使用すると、Appleはパイナップルであることを言わないだろう、アップルと呼ばれます。利点は、Appleがパイナップルを考えていない、あなたが知っている、誰かの言うりんごを聞き、はっきりと見やすいです。サービスは、このビジネス層に代わってサービスがある@あなたがこれを知っているよ@Controllerプログラミングは、コントローラのプレゼンテーション層です。

1、これらの4つの音の前提を使用して

ジャーAOPに1、[もちろん、今基本的にMavenの依存性は、めったにこれに気付かない、基本的な感触]
2、輸入コンテキスト制約
3は、コンテナをスキャンパッケージに作成されたとき、あなたは注釈を使用しなければならない春知らせますその範囲内

ここに画像を挿入説明
上記の条件は以下の満たされない場合は、異常表示されます、伊春明確には彼をカットしNo bean、異常ここに画像を挿入説明

2.詳細@Component

コンポーネントに変換组件抗休憩してから(当然):意味読み

2.1、コンポーネントの役割@

XML設定したら:

  <bean id="XXX" class="com.XX.XXX </bean>

@Componentロールオンとの音符XMLプロファイルの調製< bean >タグは、ばね容器にすべての現在のクラスのオブジェクトに対して、機能は同じで実現します。

2.2、コンポーネントのプロパティ@

@Component注解属性主要指的是value属性。value属性用于指定beanid。当我们不写时,它的默认值是当前类名首字母改小写。当然一般情况下是不写的。比如:
ここに画像を挿入説明

2.3、@Component小结

作用:用于把当前类对象存入spring容器中
属性:value用于指定bean的id。当我们不写时,它的默认值是当前类名,且首字母改小写。
注意:当只有一个属性值的时候默认可以不写 value=

3、 @Service("XXX")或者@Service(value = "XXX")情况

当然不排除出现类似这种奇葩情况,可能在一奇葩需求上就出现了这种情况,显然宜春是碰到过了,当然如果读者朋友已经理解了我上面写的东西,估计这个就很好理解了!

正确解读:这是一个service业务层类,并且被注册的bean的id为XXX。如果你的spring容器中没有一个组件id为XXX的,无疑运行指定报No bean named 'YYY'异常,注意这里的YYY不是XXX,长点心。

4、总结

至于@Controller、@Service、@Repository他们三个是spring框架为我们提供明确的三层使用的注解,使我们的三层对象更加清晰!

实际上这四个注解实际上没有任何本质区别,如果你喜欢,你完全可以把这四个注解当成一个注解用,当然这样的话老板可能就不喜欢你了。

如果本文对你有一点点帮助,那么请点个赞呗,你的赞同是我最大的动力,谢谢~

最后,若有不足或者不正之处,欢迎指正批评,感激不尽!如果有疑问欢迎留言,绝对第一时间回复!

私はいくつかのJava学習教材との大きな波があり、あなたが公共の数に集中することを歓迎するJavaの電子書籍など周志明教師の深さJava仮想マシン、Javaプログラミングのアイデア、コア技術のボリューム、西方のデザインパターン、Javaの並行プログラミングの戦闘など、... ...聖書は、Tomcat上で速い車を言っていないのjava、行くがたです!主なものは、技術、憧れ技術、技術の追求を探ることである、良いポットの友人は、ああ来ていると述べました...

ここに画像を挿入説明

おすすめ

転載: www.cnblogs.com/yichunguo/p/12098029.html