怎样才能建立自已的网站wordpress级简主题
2026/6/11 3:24:30 网站建设 项目流程
怎样才能建立自已的网站,wordpress级简主题,特色专业建设验收网站,网站开发三端指哪三端一、Autowired报黄#xff0c;原来不是报错是“提醒”二、解决Autowired报黄#xff0c;我试了3种方法1. 最靠谱的#xff1a;改用构造函数注入2. 图省事的#xff1a;关掉IDEA的提示3. 折中办法#xff1a;用setter注入三、为啥网上都推构造函数#xff0c;实际大家都用…一、Autowired报黄原来不是报错是“提醒”二、解决Autowired报黄我试了3种方法1. 最靠谱的改用构造函数注入2. 图省事的关掉IDEA的提示3. 折中办法用setter注入三、为啥网上都推构造函数实际大家都用Resource1. 构造函数的毛病写起来费劲2. Resource是真灵活3. 大家都觉得“能用就行”四、Resource没黄线不是它更牛只是IDEA没检查总结一下最近用IDEA写Spring项目发现个特烦人的事儿——用Autowired注入Bean的时候字段上总飘着一条黄线看着就难受。但换成Resource吧黄线立马没了。更懵的是网上都说构造函数注入好可我问了身边几个同事大家平时都爱用Resource。琢磨了好几天踩了几个坑总算把这事儿捋明白了分享给跟我一样困惑的朋友。一、Autowired报黄原来不是报错是“提醒”首先得说清楚Autowired的黄线真不是代码写错了项目能正常跑就是IDEA在那儿“多管闲事”——提醒你这种写法不太规范。后来查了下才知道Spring官方早就不推荐这么用了他们更建议用构造函数注入。IDEA跟Spring是一伙的自然就跟着官方的规矩来用黄线告诉你“这么写有坑赶紧改”。这坑到底在哪儿呢我自己踩过两次一次是同事接手我代码看了半天不知道那个注入的Bean是哪儿来的问我半天还有一次是写单元测试脱离了Spring容器直接new对象的时候注入的Bean是null直接报空指针了。后来才明白字段注入的依赖关系藏得太深维护起来麻烦而且脱离容器就不好使确实不太行。二、解决Autowired报黄我试了3种方法黄线看着闹心我琢磨了几个解决办法分享给大家1. 最靠谱的改用构造函数注入这是官方推荐的虽然写起来麻烦点但确实没毛病。而且Spring 4.3以后要是类里只有一个构造函数连Autowired注解都能省了还算简洁ServicepublicclassOrderService{// 加个final这样依赖就不能随便改了放心privatefinalOrderDaoorderDao;privatefinalUserServiceuserService;// 直接把依赖写在构造函数里一眼就能看清依赖啥publicOrderService(OrderDaoorderDao,UserServiceuserService){this.orderDaoorderDao;this.userServiceuserService;}}我现在写新代码都用这方式依赖关系明明白白单元测试的时候直接new就行不用费劲启动Spring容器还能提前发现依赖少没少配置挺好使。2. 图省事的关掉IDEA的提示要是暂时不想改代码也能把黄线关掉。鼠标挪到黄线上按AltEnter然后选关闭这个检查就行。不过这招就是“自欺欺人”问题还在那儿长期用肯定不行我就临时用了一次后来还是改代码了。3. 折中办法用setter注入还有个办法是用setter注入比字段注入规范点也能消黄线就是写起来比构造函数简单点比字段注入麻烦点ServicepublicclassOrderService{privateOrderDaoorderDao;AutowiredpublicvoidsetOrderDao(OrderDaoorderDao){this.orderDaoorderDao;}}我没怎么用这个感觉不上不下的不如直接用构造函数来得彻底。三、为啥网上都推构造函数实际大家都用Resource这事儿我也纠结好久后来跟同事聊了聊总算懂了——主要是构造函数有时候太麻烦Resource太好用了1. 构造函数的毛病写起来费劲要是一个类要依赖三四个Bean构造函数就得写一长串参数还得一个个赋值看着就头疼。而Resource呢就一行注解的事儿复制粘贴都省时间开发起来贼快。我们项目迭代挺急的大家都想省点事自然就选Resource了。2. Resource是真灵活Resource比Autowired好用的地方在于遇到多个同类型的Bean时直接指定个名字就行。比如有两个UserDao的实现类Resource(name userDaoImpl1)一句话就搞定了。但Autowired还得再配个Qualifier注解多写一行代码麻烦得很。而且Resource是Java自带的注解不是Spring专属的万一以后项目换框架也不用大改这也是大家愿意用的原因。3. 大家都觉得“能用就行”其实很多人都知道构造函数注入规范但觉得Resource用着没出啥问题项目能跑就行没必要非得纠结规范。尤其是小项目怎么快怎么来Resource的便捷性确实让人没法拒绝。四、Resource没黄线不是它更牛只是IDEA没检查刚开始我还以为Resource没黄线是因为它比Autowired厉害后来才知道想多了。其实就是IDEA的检查规则不一样——Autowired是Spring专属的IDEA专门盯着它的字段注入方式一用就提示而Resource是Java标准注解IDEA没给它开这个检查所以就没黄线。但说实话Resource的字段注入跟Autowired的字段注入毛病一样依赖关系藏得深脱离容器容易报空指针单元测试也麻烦。它俩就是各有各的用处没有谁更牛只是适用场景不一样。总结一下折腾了这么久我也算搞明白了Autowired报黄就是提醒你别用字段注入改用构造函数才规范大家爱用Resource就是图省事、够灵活没黄线不代表它更优秀只是没被IDEA检查而已。现在我写代码是这么选的新项目或者需要长期维护的代码就老老实实用构造函数注入虽然麻烦点但后期维护省心要是赶进度的小需求偶尔用用Resource也没啥但会尽量备注清楚依赖关系。希望我踩的这些坑能帮到大家不用再跟我一样纠结黄线的事儿啦

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询