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

Spring Bean

Spring的配置方式

1、xml配置文件

2、基于注解的方式

3、基于Java的方式

Spring Bean的生命周期

1、通过构造器或工厂方法创建bean实例

2、为bean的属性赋值

3、调用bean的初始化方法

4、使用bean

5、当容器关闭时,调用bean的销毁方法

Spring inner beans

Spring内部bean

        在Spring框架中,无论何时bean被使用时,当且仅当被调用一个属性。可以将这个bean声明为内部bean

Spring Bean的自动装配

Spring支持IOC,自动装配不用类实例化,直接从bean容器中取。

1、配置在xml中

        <bean id="employeeDAO" class="com.guor.EmployeeDAOImpl" autowire="byName" />
2、@Autowired自动装配

开启基于注解的自动装配

        要使用 @Autowired,需要注册 AutowiredAnnotationBeanPostProcessor,可以有以下两种方式来实现:

        引入配置文件中的<bean>下引入 <context:annotation-config>

<beans><context:annotation-config />
</beans>

        

        在bean配置文件中直接引入AutowiredAnnotationBeanPostProcessor

<beans><bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor"/>
</beans>

spring mvc和struts2的区别

1、拦截机制的不同

        Struts2是类级别的拦截

        SpringMVC是方法级别的拦截

2、底层框架的不同

        Struts2采用Filter实现,容器启动之后即初始化,服务停止以后坠毁

        SpringMVC则采用Servlet实现,在调用时初始化,先于Filter调用

3、性能方面

        SpringMVC开发效率和性能高于Struts2

4、配置方面

        spring MVC和Spring是无缝的。从这个项目的管理和安全上也比Struts2高

相关文章:

  • 【web | CTF】攻防世界 Web_php_unserialize
  • 【C进阶】顺序表详解
  • Web JavaScript
  • 网络设备和网络软件
  • Spring Cloud学习
  • Vim 模式切换 | 命令集
  • 洛谷C++简单题小练习day21—梦境数数小程序
  • 第四章 Day4
  • ChatGPT Plus遇到订阅被拒原因与解决方案
  • 软件压力测试:测试方法与步骤详解
  • 【自然语言处理】:实验5,司法阅读理解
  • Linux调用可执行程序:system()函数和execl函数
  • Python世界之运算符
  • GO-ICP的使用(一)
  • 300分钟吃透分布式缓存-15讲:如何深入理解、应用及扩展 Twemproxy?
  • 【译】理解JavaScript:new 关键字
  • 4. 路由到控制器 - Laravel从零开始教程
  • co模块的前端实现
  • Date型的使用
  • java B2B2C 源码多租户电子商城系统-Kafka基本使用介绍
  • LeetCode18.四数之和 JavaScript
  • PHP 使用 Swoole - TaskWorker 实现异步操作 Mysql
  • ReactNativeweexDeviceOne对比
  • Synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比...
  • ------- 计算机网络基础
  • 精益 React 学习指南 (Lean React)- 1.5 React 与 DOM
  • 蓝海存储开关机注意事项总结
  • 免费小说阅读小程序
  • 如何将自己的网站分享到QQ空间,微信,微博等等
  • 移动端解决方案学习记录
  • 找一份好的前端工作,起点很重要
  • raise 与 raise ... from 的区别
  • ​如何在iOS手机上查看应用日志
  • #HarmonyOS:软件安装window和mac预览Hello World
  • #我与Java虚拟机的故事#连载16:打开Java世界大门的钥匙
  • (3)选择元素——(17)练习(Exercises)
  • (9)STL算法之逆转旋转
  • (Arcgis)Python编程批量将HDF5文件转换为TIFF格式并应用地理转换和投影信息
  • (Redis使用系列) Springboot 实现Redis 同数据源动态切换db 八
  • (ZT)薛涌:谈贫说富
  • (ZT)一个美国文科博士的YardLife
  • (一)kafka实战——kafka源码编译启动
  • (一)u-boot-nand.bin的下载
  • (转)PlayerPrefs在Windows下存到哪里去了?
  • (转)淘淘商城系列——使用Spring来管理Redis单机版和集群版
  • (轉貼) VS2005 快捷键 (初級) (.NET) (Visual Studio)
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • * 论文笔记 【Wide Deep Learning for Recommender Systems】
  • ./mysql.server: 没有那个文件或目录_Linux下安装MySQL出现“ls: /var/lib/mysql/*.pid: 没有那个文件或目录”...
  • .java 指数平滑_转载:二次指数平滑法求预测值的Java代码
  • .NET Core6.0 MVC+layui+SqlSugar 简单增删改查
  • .net core开源商城系统源码,支持可视化布局小程序
  • .NET Framework 的 bug?try-catch-when 中如果 when 语句抛出异常,程序将彻底崩溃
  • .net framwork4.6操作MySQL报错Character set ‘utf8mb3‘ is not supported 解决方法
  • .Net MVC4 上传大文件,并保存表单