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

免费的自建视频网站网站程序源码下载

免费的自建视频网站,网站程序源码下载,宁波网站设计公司有几家,厦门做网站需要多少钱目录 前言 第一种#xff1a;静态工厂方式实例化对象 静态工厂的特点 demo(案例#xff09; 第二种#xff1a;实例工厂的方式 实例工厂和静态工厂的区别 demo(案例#xff09; 第三种#xff1a;实现FactoryBean规范的方式 demo(案例#xff09; 前言 spring 实…目录 前言 第一种静态工厂方式实例化对象 静态工厂的特点 demo(案例 第二种实例工厂的方式 实例工厂和静态工厂的区别 demo(案例 第三种实现FactoryBean规范的方式 demo(案例 前言 spring 实例化对象的几种方式 使用 构造方法实例化对象  spring学习(spring-bean实例化(无参构造与有参构造方法实现)详解)-CSDN博客 工厂方式创建对象。 工厂方式实例化对象又可以分为三种情况 一种是静态工厂另一种是实例工厂还有一种实现FactoryBean方式下面我们就这三种方式分别实现一下。 准备工作 导入 spring-context 依赖 !-- https://mvnrepository.com/artifact/org.springframework/spring-context --dependencygroupIdorg.springframework/groupIdartifactIdspring-context/artifactIdversion5.3.23/version/dependency第一种静态工厂方式实例化对象 静态工厂的特点 通过属性factory-method来指定一个静态方法在该静态方法中达到创建对象的目标并返回交给spring容器管理。 demo(案例 在 IDEA 新建两个类 学生 类老师类当前使用 静态工厂方式 创建 学生类对象 根据是否提前在 目标类 写静态方法 有两者写法 先在目标类中 写好 静态方法 spring 配置文件 中 Test 测试类 运行结果 注意factory -method 属性值 是 你添加的静态方法名。如果你事先没有确定好静态方法可以根据提示自定义方法名创建在目标类中 先不在目标类中添加静态方法而是在配置文件中 自定义 静态方法名之后再目标类中完善方法 根据提示自定义方法名自动创建在目标类中 重新运行结果是一样的 现在有一个问题 使用 学生类的静态方法创建老师类对象 是否可行呢 在 Test 测试类中 运行结果 发现确实可以 创建 老师类对象。 在测试类我想要获得是 学生类对象但因为我在 学生类的添加的静态方法中返回老师对象最终结果打印的也是老师对象的地址。这个情况我们常常戏称为 狸猫换太子 具体的底层代码细节如下 通过这个现象 思考几个问题 1 学生类对象 创建了没有 观察 1 spring 配置文件是否有表示学生信息的bean 标签 2 静态方法中是否有通过new 关键字创建对象 2 老师 类对象 有没有交给 spring 容器 管理 我认为 老师类 对象有spring 容器的参与但实际上创建还是 new 出来的。 看下一个知识点 实例化工厂 创建 总结 静态工厂 实例化对象 总结采用静态工厂的方式去实例化对象只需要在bean标签中指定一个静态方法即可用factory-method属性来指定方法名自已取反正由idea自动帮我们创建好。然后我们只需要在创建好的静态方法中返回一个对象就搞定了。 第二种实例工厂的方式 实例工厂和静态工厂的区别 实例工厂的方式是在静态工厂的基础上在sping 配置文件 中 添加一个 factory-bean 属性并实现真正目标类的方法 实例工厂创建对象 需要非静态方法并且该方法是存在真正的创建对象的类中 demo(案例 当前有 Ball Fruit 类 使用实例化工厂方式 创建 Ball 类对象 spring 配置文件 ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd !--使用静态工厂创建对象--bean idstudent classfs.exerise01.Student factory-methodgetObject/ !-- 实例工厂创建对象--bean idball classfs.exerise02.Ball /beanbean idfruit classfs.exerise02.Fruit factory-methodgetObject factory-beanball/bean/beans 发现 factory-bean 的属性值 和 把目标对象交给 容器生产的 唯一标识符 id 的值是息息相关 从上面的图片可以知道 是spring 容器通过构造方法创建 Ball 类对象后对象调用在Ball 类的getObject 方法来创建真正需要的目标对象 Ball 类代码 package fs.exerise02;public class Ball {public Ball getObject() {return new Ball();} }Test测试类代码 package fs.exerise02;import org.springframework.context.support.ClassPathXmlApplicationContext;public class Test {public static void main(String[] args) {ClassPathXmlApplicationContext context new ClassPathXmlApplicationContext(spring.xml);Object bean context.getBean(fruit);System.out.println(bean);} }运行结果 发现 表面上通过 getbean方法 获得 fruit 类对象方法但实际是通过 实例化工厂方式创建ball类对象。真正做到了 移花接木的效果。 同样的道理我们只需要修改Ball 类中的方法可以任意创建目标对象 如 之前在Ball 类中创建ball类对象。现在创建 fruit 类对象 其他的地方一律不变 运行结果 实例化工厂创建对象总结 1 使用实例化工厂创建对象factory-bean 的属性值 表示真正调用本类的factory-method 属性值表示的方法 2 在本类方法中我们可以修改方法来实现任意对象的创建 第三种实现FactoryBean规范的方式 demo(案例 了解 Demo3 是 FactoryBean 接口的实现类并重写  getObject 返回目标对象getObjectType  返回 目标类的字节码文件最终实现 Ball 类对象的创建 Demo3 类代码 package fs.exerise03;import fs.exerise02.Ball; import org.springframework.beans.factory.FactoryBean;public class User implements FactoryBeanBall {// 返回一个Ball对象Overridepublic Ball getObject() throws Exception {return new Ball();} /// 返回Ball.classOverridepublic Class? getObjectType() {return Ball.class;} }Test 测试类 package fs.exerise03;import fs.exerise02.Ball; import org.springframework.context.support.ClassPathXmlApplicationContext;public class Test {public static void main(String[] args) throws Exception {ClassPathXmlApplicationContext context new ClassPathXmlApplicationContext(spring.xml);Ball demo3 (Ball)context.getBean(user);System.out.println(demo3.getObject());}} 运行结果
http://www.dnsts.com.cn/news/170587.html

相关文章:

  • 成都网站设计公司价格品牌建设 网站
  • 漳州网站建设哪家最正规美客多电商平台入驻链接
  • 佛山网站推广seo网站设计布局
  • 网站建设一般用哪种语言开发购物网站的建设时间
  • 安徽网站设计平台龙之向导的发展前景
  • 网站 多语国内10大搜索引擎
  • 中山品牌网站建设推广网站建设策划书百度文库
  • 河南省建设教育中心的网站亦庄网站建设
  • 第三方做网站电子商务综合实训报告网站建设
  • 做配资网站多少钱开发app需要哪些审批
  • 简约个人博客html代码德州做网站优化
  • 爱奇艺做视频网站的湘潭平台公司
  • 网站推广必做维影企业网站管理系统
  • 网站cms管理后台电话号码电子商务网站建设核心是
  • 兰州网站建设兼职女性广告
  • 网站建设技术入股合同上海文化传媒公司排名
  • 网站建站在线制作手机制作价格表的软件
  • 网站怎么样被百度收录365建站网
  • 山东专业网站建设公司随州网络优化网站建设公司
  • 嘉兴型网站系统总部文章管理系统网站模板
  • 做网站就用建站之星工业产品设计的基本特征
  • 最低价网站建设台州网站的优化
  • 合肥建设网网站网络会议网站
  • 厦门网站seo东莞网站建设招聘
  • 怎么做淘宝客采集网站自动seo系统
  • 兰州有制作网站深圳开发小程序公司
  • 替别人做网站管理员房产经纪人获客神器
  • 网站开发主管岗位职责说明书广告公司简介模板免费
  • 青岛网站设计定制移动应用开发心得体会
  • 重庆推广网站排名价格网站建立的流程