{"rsdb":{"rid":"372609","subhead":"","postdate":"0","aid":"261540","fid":"76","uid":"1","topic":"1","content":"
\n

@Component\u548c@Bean\u7684\u76ee\u7684\u662f\u4e00\u6837\u7684\uff0c\u90fd\u662f\u6ce8\u518cbean\u5230Spring\u5bb9\u5668\u4e2d\u3002<\/p> \n

 <\/p> \n

@Component  VS  @Bean<\/strong><\/p> \n

\u3000\u3000@Component \u548c \u5b83\u7684\u5b50\u7c7b\u578b\uff08@Controller, @Service and @Repository\uff09\u6ce8\u91ca\u5728\u7c7b\u4e0a\u3002\u544a\u8bc9Spring\uff0c\u6211\u662f\u4e00\u4e2abean\uff0c\u901a\u8fc7\u7c7b\u8def\u5f84\u626b\u63cf\u81ea\u52a8\u68c0\u6d4b\u5e76\u6ce8\u5165\u5230Spring\u5bb9\u5668\u4e2d\u3002<\/p> \n

\u3000\u3000@Bean\u4e0d\u80fd\u6ce8\u91ca\u5728\u7c7b\u4e0a\uff0c\u53ea\u80fd\u7528\u4e8e\u5728\u914d\u7f6e\u7c7b\u4e2d\u663e\u5f0f\u58f0\u660e\u5355\u4e2abean\u3002\u610f\u601d\u5c31\u662f\uff0c\u6211\u8981\u83b7\u53d6\u8fd9\u4e2abean\u7684\u65f6\u5019\uff0cspring\u8981\u6309\u7167\u8fd9\u79cd\u65b9\u5f0f\u53bb\u83b7\u53d6\u8fd9\u4e2abean\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b@Bean\u6ce8\u91ca\u7684\u65b9\u6cd5\u540d\u4f5c\u4e3a\u5bf9\u8c61\u7684\u540d\u5b57\uff0c\u4e5f\u53ef\u4ee5\u7528name\u5c5e\u6027\u5b9a\u4e49\u5bf9\u8c61\u7684\u540d\u5b57\u3002<\/p> \n

 <\/p> \n

\u6240\u6709\u7ec4\u4ef6\u7c7b\u578b\u53ca\u5176\u7528\u9014<\/strong><\/p> \n \n \n \n \n \n \n \n
\u7ec4\u4ef6\u6ce8\u89e3<\/td> \n \u7528\u9014<\/td> \n <\/tr> \n
@Component<\/a><\/td> \n \u6807\u6ce8\u6700\u666e\u901a\u7684\u7ec4\u4ef6<\/td> \n <\/tr> \n
@Controller<\/a><\/td> \n \u6807\u6ce8\u63a7\u5236\u5c42\uff08spring-mvc\u7684\u6ce8\u89e3\uff09\uff08\u5982\uff1a*Controller\uff09<\/td> \n <\/tr> \n
@Service<\/a><\/td> \n \u6807\u6ce8\u4e1a\u52a1\u5c42(\u5982\uff1a*Service)<\/td> \n <\/tr> \n
@Repository<\/a><\/td> \n \u6807\u6ce8\u6301\u4e45\u5c42\uff08\u5982\uff1a*Dao\uff09<\/td> \n <\/tr> \n <\/tbody> \n <\/table> \n

\u6240\u6709\u7ec4\u4ef6\u7c7b\u578b\u90fd\u4ee5\u76f8\u540c\u7684\u65b9\u5f0f\u5904\u7406\u3002\u5b50\u7c7b\u578b\u4ec5\u4ec5\u662f\u6807\u8bb0\uff0c\u6709\u5229\u4e8e\u4ee3\u7801\u53ef\u8bfb\u6027\u800c\u4e0d\u662f\u7279\u6027\u3002<\/p> \n

 \u9a8c\u8bc1\u4ee3\u7801\u5982\u4e0b\uff1a<\/span><\/p> \n

\n
1<\/span> @Controller\r\n<\/span>2<\/span> @RequestMapping("\/web")\r\n<\/span>3<\/span> public<\/span> class<\/span> WebController {\r\n<\/span>4<\/span>     @ResponseBody\r\n<\/span>5<\/span>     @RequestMapping("\/msg")\r\n<\/span>6<\/span>     public<\/span> String message(){\r\n<\/span>7<\/span>         return<\/span> "msg";\r\n<\/span>8<\/span>     }\r\n<\/span>9<\/span> }<\/pre> \n <\/div> \n 
\n
1<\/span> @Component
<\/span>2<\/span> @RequestMapping("\/web")\r\n<\/span>3<\/span> public<\/span> class<\/span> WebController {\r\n<\/span>4<\/span> @ResponseBody\r\n<\/span>5<\/span> @RequestMapping("\/msg")\r\n<\/span>6<\/span> public<\/span> String message(){\r\n<\/span>7<\/span> return<\/span> "msg";\r\n<\/span>8<\/span> }\r\n<\/span>9<\/span> }<\/pre> \n <\/div> \n
\n
1<\/span> @Service\r\n<\/span>2<\/span> @RequestMapping("\/web")\r\n<\/span>3<\/span> public<\/span> class<\/span> WebController {\r\n<\/span>4<\/span>     @ResponseBody\r\n<\/span>5<\/span>     @RequestMapping("\/msg")\r\n<\/span>6<\/span>     public<\/span> String message(){\r\n<\/span>7<\/span>         return<\/span> "msg";\r\n<\/span>8<\/span>     }\r\n<\/span>9<\/span> }<\/pre> \n <\/div> \n 

\u8bbf\u95eeurl=locahost:8080\/web\/msg\uff0c\u4e09\u6bb5\u4ee3\u7801\u5747\u8fd4\u56de\u5b57\u7b26\u4e32msg\u3002\uff08\u6b64web\u9879\u76ee\u6211\u81ea\u5df1\u7528\u7684\u7aef\u53e38080\uff09<\/p> \n

 <\/p> \n

@Bean\u7684\u4f7f\u7528<\/strong><\/p> \n

\n
1<\/span> \/\/<\/span> Just a POJO<\/span>\r\n2<\/span> public<\/span> class<\/span> MessageBuilder {\r\n<\/span>3<\/span>     public<\/span> String getMsg(){\r\n<\/span>4<\/span>         return<\/span> "msgBuilder";\r\n<\/span>5<\/span>     }\r\n<\/span>6<\/span> }<\/pre> \n <\/div> \n 
\n
 1<\/span> import<\/span> org.springframework.context.annotation.Bean;\r\n<\/span> 2<\/span> import<\/span> org.springframework.context.annotation.Configuration;\r\n<\/span> 3<\/span> \/\/<\/span> Let's turn the POJO into a bean<\/span>\r\n 4<\/span> @Configuration\r\n<\/span> 5<\/span> public<\/span> class<\/span> AppConfig {\r\n<\/span> 6<\/span>     @Bean\r\n<\/span> 7<\/span>     public<\/span> MessageBuilder messageBuilder(){\r\n<\/span> 8<\/span>         return<\/span> new<\/span> MessageBuilder();\r\n<\/span> 9<\/span>     }\r\n<\/span>10<\/span> }<\/pre> \n <\/div> \n 
\n
 1<\/span> @Controller\r\n<\/span> 2<\/span> @RequestMapping("\/web")\r\n<\/span> 3<\/span> public<\/span> class<\/span> WebController {\r\n<\/span> 4<\/span>     \/\/<\/span> Finally, hook it up<\/span>\r\n 5<\/span>     @Autowired\r\n<\/span> 6<\/span>     private<\/span> MessageBuilder messageBuilder;\r\n<\/span> 7<\/span> \r\n 8<\/span>     @ResponseBody\r\n<\/span> 9<\/span>     @RequestMapping("\/msg")\r\n<\/span>10<\/span>     public<\/span> String message(){\r\n<\/span>11<\/span>         return<\/span> messageBuilder.getMsg();\r\n<\/span>12<\/span>     }\r\n<\/span>13<\/span> \r\n14<\/span> }<\/pre> \n <\/div> \n 

 <\/p> \n

\u53c2\u8003\u6587\u7ae0\uff1a<\/strong><\/p> \n

http:\/\/www.tomaszezula.com\/2014\/02\/09\/spring-series-part-5-component-vs-bean\/<\/a><\/p> \n

 <\/p> \n<\/div>","orderid":"0","title":"Spring\u4e2d@Component\u4e0e@Bean\u7684\u533a\u522b","smalltitle":"","mid":"0","fname":"JAVA","special_id":"0","bak_id":"0","info":"0","hits":"30","pages":"1","comments":"0","posttime":"2019-09-19 11:11:57","list":"1568862717","username":"admin","author":"","copyfrom":"","copyfromurl":"","titlecolor":"","fonttype":"0","titleicon":"0","picurl":"https:\/\/www.cppentry.com\/upload_files\/","ispic":"0","yz":"1","yzer":"","yztime":"0","levels":"0","levelstime":"0","keywords":"Spring<\/A> @Component<\/A> @Bean<\/A> \u533a\u522b<\/A>","jumpurl":"","iframeurl":"","style":"","template":"a:3:{s:4:\"head\";s:0:\"\";s:4:\"foot\";s:0:\"\";s:8:\"bencandy\";s:0:\"\";}","target":"0","ip":"14.17.22.32","lastfid":"0","money":"0","buyuser":"","passwd":"","allowdown":"","allowview":"","editer":"","edittime":"0","begintime":"0","endtime":"0","description":"Spring\u4e2d@Component\u4e0e@Bean\u7684\u533a\u522b","lastview":"1711628551","digg_num":"0","digg_time":"0","forbidcomment":"0","ifvote":"0","heart":"","htmlname":"","city_id":"0"},"page":"1"}