当前位置: 首页 > news >正文

网站怎么做访问量统计广西住建局

网站怎么做访问量统计,广西住建局,佛山移动网站建设公司,在线网站搭建系统以及Spring中为什么会出现IOC容器#xff1f;Autowired和Resource注解#xff1f; IOC容器发展史 没有IOC容器之前 首先说一下在Spring之前#xff0c;我们的程序里面是没有IOC容器的#xff0c;这个时候我们如果想要得到一个事先已经定义的对象该怎么得到呢#xff1f;…以及Spring中为什么会出现IOC容器Autowired和Resource注解 IOC容器发展史 没有IOC容器之前 首先说一下在Spring之前我们的程序里面是没有IOC容器的这个时候我们如果想要得到一个事先已经定义的对象该怎么得到呢比如我们在想要得到一个事先定义的Person对象。 首先我们需要先在person.xml文件里面提前配置生成我们的Person对象如下 bean idperson classcom.example.Personproperty namename valueJohn/property nameage value25/ /bean然后在程序代码里面需要用到Person对象的时候我们需要从xml文件里面取出来需要写一段繁琐的代码如下图 public class Main {public static void main(String[] args) {ApplicationContext context new ClassPathXmlApplicationContext(person.xml);Person person (Person) context.getBean(person);System.out.println(Name: person.getName());System.out.println(Age: person.getAge());} }这样当我们获取一个已经提前生成的对象的时候可以发现代码非常的多非常冗余。 有IOC容器之后 当有了IOC容器之后我们就把类似于person.xml的xml文件取消了配置文件底层还是有的但是我们程序员不用写xml配置文件了我们只需要写一个注解就可以了Spring底层会帮助我们把带有注解的类转换成对应的xml配置文件或者配置文件里面的一部分的。 如果你想要把Person对象之前提前定义好那么不直接给Person对象加上一个Component注解就可以了然后Person对象就可以自动的加入到对应的person.xml文件了。在Spring中内部是一个IOC容器你可以理解成加了Component注解的对象都被自动的加入到了IOC容器里面了。 如果你想要从IOC容器里面取出已经定义好的Person对象也不用像之前那样了需要写好多的代码现在你只需要写一个Autowire注解或者Resource注解就可以了。可以直接加在某个类的Person对象属性的上头。 发现没有有了IOC容器之后可以极大的简化我们的程序代码。能我们的程序代码变得更简单易读了。 把不同的类注入到IOC容器中使用的注解不同 Component注解 如果你的类只是一个简单的类没有任何逻辑比如说Person类那么我们把这个类注入到IOC容器使用的注解是Component注解。 Controller注解 如果你的类是Controller控制器需要定义前端的访问接口的那么我们给这个类使用Controller把其注入到IOC容器中。 Service注解 如果你的类是业务类如果你想要把这个类注入到IOC容器中需要用到Service注解。 Repository注解 如果你的类是与数据库交互的类那么需要使用Repository注解。 同时把一个类中的多个属性类加入到IOC容器中该怎样操作 上面我们使用ComponentControllerServiceRepository这些注解的时候都是把一个对象类加入到IOC容器里面那假如我现在想要同时把多个类加入到IOC容器里面该怎么办 可以使用Configuration和Bean的组合代码如下 Configuration public class AppConfig {Beanpublic ClassA classA() {return new ClassA();}Beanpublic ClassB classB() {return new ClassB();}Beanpublic ClassC classC() {return new ClassC();} }AppConfig配置类里面的多个类ClassAClassBClassC都会被加入到IOC容器里面对应到xml文件的id名字就是方法的名字class对象类型就是return的返回类型property就是对象里面的各个属性。 不过不要忘记我们的配置类一定要被Spring扫描一下这样才能够加入到IOC容器里面扫描的注解是ComponentScan参数加上配置类所在的包的路径即可。但是有时候我们可以给主启动类省略ComponentScan这个注解为什么呢因为程序默认就会扫描主启动类所在的包下面的所有类然后把对应的类注入到IOC容器中。如下图 因为主类OrderMain80在springcloud包下面因此这个包下面的所有的类都会被自动扫描。但Myrule包下面的类不能被自动扫描。 Autowired和Resource注解的区别 class MyTest {Autowiredprivate Person person; }Aturowired是通过类型注入它会把IOC容器里面类型是Person的对象注入到MyTest的person属性中。但是有个问题就是如果IOC容器里面只有一个Person对象的类型那么我们直接可以把IOC容器里面的这个对象注入给MyTest的person属性不会有任何问题。但是如果IOC容器里面有多个Person对象的类型呢这个时候我们注入那个Person对象给MyTest的person属性呢答案是不知道因此现在仅仅通过Autowired注解肯定不行了我们需要加上个Qualifier(“person”)注解这样可以通过IOC容器里面的对象的名字进行注入其实底层就是通过person.xml文件的id为person的bean来找到一个唯一相关的对象进行注入的。 Resource是通过bean的id名字进行注入的Resource就相当于是Autowired和Qualifier的组合但是又不完全是为什么呢 Resource注解要求IOC容器中必须有相关对象否则会出异常。如果IOC容器中这个类型的对象只有一个那么Resource注解是按照类型注入但是如果IOC容器中这个类型的对象有多个那么Resource注解是按照名称注入而Autowired注解可以允许IOC容器里面没有相关的对象默认Autowired注解的required属性的值为true就是必须需要对象如果IOC容器没有相关对象会报错但是当我们把这个属性值设置为false的时候既便IOC容器中没有相关对象也不会报错了此时会返回一个null值。
http://www.hkea.cn/news/14479705/

相关文章:

  • 网站访问量统计代码怎么做wordpress 主题 开发
  • 用360云盘做网站张家口市建设局网站
  • 实业有限公司网站怎么做怎么给公司做简单网站
  • 高端企业网站建设规定企业管理咨询公司怎么样
  • 做网站是做广告吗辽宁高端网站建设
  • 工程建设部网站北京做建筑信息的网站
  • 深圳市手机网站建设哪家好柳州免费做网站的公司
  • 网站开发浏览器不支持flash房屋竣工验收备案表网上查询
  • 每月网站流量企业网站设计的要求
  • 网站开发 图片库网站最好服务器
  • 用群晖做网站服务器网站托管内容
  • 网站开发人员任职资格广州建设官方网站
  • wordpress 网页制作搜索推广账户优化
  • wordpress设置登录背景图片网络优化师
  • 东莞网站seo优化托管怎么开网站平台挣钱
  • asp做的网站数据库在哪里东营市建设网站
  • 建设一个小说网站的步骤动画制作app推荐
  • 婚庆公司网站建设总结报告免费网站是如何盈利的
  • 公司网站如何上传视频互联网的推广
  • 哪个素材网站做美工最好做301跳转会影响之前网站排名吗
  • 西安建设网站首页2个女人做暧暧网站
  • 济南建设银行公积金网站优化关键词的步骤
  • seo网站设计外包wordpress多语种
  • 网站开发 职位网站维护建设招标
  • 用专业的网络技术制作网站网站优化方案书
  • 网站建设优化网站排名wordpress4.9下载
  • 申请一个网站得多钱制作图片的软件加图免费
  • 网站发布与推广怎么写php中网站搜索功能实现
  • 网站禁止火车头采集怎么看网站被降权
  • wordpress网站建设教程视频住建蓉e办官网