吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1984|回复: 3
收起左侧

[Java 转载] 初学Spring

[复制链接]
猫颜 发表于 2020-3-7 10:20
初学Spring4Spring 之父Rod Johnsonspring核心功能
  • IoC/DI(控制反转)功能:原先由程序员主动通过new来实例化对象,转交给Spring负责。作用:解除了对象管理和程序员之间的耦合,解耦
  • AOP
  • 声明式事务
  • 环境搭建
    • 导入jar包四个核心包(Beans,Core,Context,Spel)必须要有 image.png
    • 在src下创建applicationContext.xml(文件名和路径可以自定义)spring 的配置信息基于schema(DTD的升级版),配置文件中只需要引入基本的schema<?xml version="1.0" encoding="UTF-8"?>
      <beans xmlns="http://www.springframework.org/schema/beans"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.springframework.org/sc hema/beans
      http://www.springframework.org/schema/beans/spring-be ans.xsd">
      <!-- id 表示获取到对象标识
      class 创建哪个类的对象
      -->
      <bean id="peo" class="com.bjsxt.pojo.People"/>
      </beans>
    • 编写测试方法ApplicationContext ac = new
      &#8203;
      ClassPathXmlApplicationContext("applicationContext.xm l");
      People people = ac.getBean("peo",People.class);
      &#8203;
      System.out.println(people);

spring的三种创建对象的方式
  • 通过构造方法创建
    • 无参创建:默认情况是无参构建    public People() {
              System.out.println("无参构造方法");
          }
    • 有参创建:
      • 需要在类中提供有参构造方法public People(int years, String name, boolean sex) {
                super();
                this.years = years;
                this.name = name;
                this.sex = sex;
            }
      • 在配置文件(我的是applicationContext.xml )中进行配置  <bean id="people1" class="com.catjava.pojo.People">
                <constructor-arg index="0" name="years" type="int" value="18"></constructor-arg>
                <constructor-arg index="1" name="name" type="String" value="maoyan"></constructor-arg>
                <constructor-arg index="2" name="sex" type="boolean" value="1"></constructor-arg>
            </bean>
        说明:index:参数的索引,从0开始name:参数名type:参数类型
        如果有多个构造方法都匹配,则执行最后一个


  • 实例工厂创建
    • 先创建工厂public class PeopleFactory {
          public People newInstance(){
              return new People(19,"maoyan2",true);
          }
      }
    • 在配置文件中配置工厂和所需要的对象    <!-- 创建工厂对象 -->
          <bean id="factory" class="com.catjava.pojo.PeopleFactory">
          </bean>
          <bean id="people2" factory-bean="factory" factory-method="newInstance"></bean>
      factory-bean:指定工厂factory-method:指定方法
      在工厂中可以创建不同的方法去实例化不同的对象,这里只有一个方法,所以只指定了那一个方法

  • 静态工厂创建
    • 不需要创建工厂,快速创建对象
    • 在实例工厂中添加一个静态方法public static People newInstance2() {
              return new People(20,"maoyan3",false);
          }
    • 配置配置文件 <bean id="people3" class="com.catjava.pojo.PeopleFactory" factory-method="newInstance2"    ></bean>
    • 调用方法People people2=PeopleFactory.newInstance2();


免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
阿隆 + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| 猫颜 发表于 2020-3-7 10:22
话说为啥我发帖的时候使用了md,发出来咋不一样???
ljhtoljh 发表于 2020-3-7 11:06
猫颜 发表于 2020-3-7 10:22
话说为啥我发帖的时候使用了md,发出来咋不一样???

这种就别发论坛了,简直是文字垃圾。。。去csdn/博客园吧
头像被屏蔽
KamiMao 发表于 2020-3-7 12:29
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-17 00:22

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表