Spring环境搭建及三种创建管理对象的方式

1、Spring环境搭建
1.1、环境搭建所需核心包

在这里插入图片描述
可通过在pom.xml文件中配置导入相关包

 <!--以下四个包是Spring框架环境搭建所需包-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-beans</artifactId>
      <version>4.3.8.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-core</artifactId>
      <version>4.3.8.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
      <version>4.3.8.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-expression</artifactId>
      <version>4.3.8.RELEASE</version>
    </dependency>

1.2、Spring配置文件,配置配置文件ApplicationContext.xml(此文件名称可以随意命名,但是经常使用ApplicationContext,ApplicationContext是Spring解析配置文件后使用的容器)文件;
ApplicationContext.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:aop="http://www.springframework.org/schema/aop"

       xsi:schemaLocation="
    http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsd
    http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd">

        <!--
            Spring创建对象的三种方法:构造方法创建对象:1、无参构造方法创建对象;2、有参构造方法创建对象
            一、
            无参构造方法创建对象:
            id属性:可以获取创建对象的唯一标识
            class属性:需要创建的对象所在的位置
        -->
    <bean id="people" class="Demo01.Model.People">
    </bean>

    <!--
        有参构造方法创建对象:对象需要有 有参构造
    -->
    <bean id="people2" class="Demo01.Model.People">
        <!--constructor-arg:构造方法 参数
            属性介绍:index:参数索引;
                    name: 参数名称
                    ref :  引用其他对象作为参数
                    type: 参数类型
                    value:参数赋值
                以上属性不必须同事存在,可自由组合,例如:index&value、name&value。。。

             需要注意的是在Spring中type类型要与类中类型保持一致,例如:Integer不能自动拆箱为int类型
        -->

        <constructor-arg index="0" name="id" type="int" value="10"></constructor-arg>
        <constructor-arg index="1" name="name" type="java.lang.String" value="张丹"></constructor-arg>
        <constructor-arg index="2" name="sex" type="char" value="女"></constructor-arg>
    </bean>

    <!--二、实例工厂 : 创建工厂 》》》 创建对象-->
    <bean id="factory" class="Demo01.Factory.PeopleFactory"></bean>
    <bean id="people3" factory-bean="factory" factory-method="getTarget">
    </bean>

    <!--三、静态工厂创建对象-->
    <bean id="people4" class="Demo01.Factory.PeopleFactory" factory-method="getStaticTarget"></bean>
</beans>

在此示例文件中,展示了Spring三种创建对象的方式;
新建spring配置文件是要特别注意配置文件中的头信息要正确并完整,不然在进行文件配置时会出现错误提示。

1.3、实体类
在这里插入图片描述
People.java
用户Spring配置中第一种创建的对象的方式进行对象创建:

package Demo01.Model;
/**
 * 人员实体类封装
 */
public class People {
    private Integer id;
    private String name;
    private char sex;
    public People(){
        super();
        System.out.println("这是测试Spring创建对象的People无参构造方法");
    }
    public People(int id,String name,char sex){
        super();
        this.id = id;
        this.name = name;
        this.sex = sex;
        System.out.println("id:"+id+" -- name:"+name+" -- sex:"+sex);
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public char getSex() {
        return sex;
    }
    public void setSex(char sex) {
        this.sex = sex;
    }
    @Override
    public String toString() {
        return "People{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", sex=" + sex +
                '}';
    }
}

PeopleFactory.java
用于Spring配置文件中的实例工厂、静态工厂创建管理对象的实现

package Demo01.Factory;

import Demo01.Model.People;

public class PeopleFactory {
    /**
     * 实例工厂:需要先创建工厂,在创建对象,具体配置见Spring配置文件中
     * @return
     */
    public People getTarget(){
        return new People();
    }

    /***
     * 静态工厂:不需要创建工厂 即可获取对象
     */
    public static People getStaticTarget(){
        return new People();
    }
}

2、上述Spring框架配置文件解析及对象创建的测试方法:

import Demo01.Model.People;
import com.sun.scenario.effect.impl.prism.ps.PPSEffectPeer;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class TestDemo01 {
    @Test
    public void TestSpringCreatePeople(){
        //读取Spring配置文件ApplicationContext.xml将内容放到ApplicationContext容器中
        /**
         * 扩展 IDEA中查询接口的实现类的快捷方法 : ctrl + alt +B
         */
        ApplicationContext ac = new ClassPathXmlApplicationContext("ApplicationContext.xml");
        //getBean:第一个参数是Spring配置文件中所管理的对象的唯一标识;
        //第二个参数是对象返回值类型,如果第二个参数不写,则返回值类型为Object,然后可以使用强制转换来转换对象的类型
        People p = ac.getBean("people2", People.class);
        System.out.println("构造方法创建对象:"+p);

        /**
         * 实例工厂
         */
        People p3 = ac.getBean("people3",People.class);
        System.out.println("实例工厂创建对象:"+p3);

        /**
         * 静态工厂
         */
        People p4 = ac.getBean("people4", People.class);
        System.out.println("静态工厂创建对象:"+p4);

        //获取Spring配置文件中管理的所有对象标识
        String[] str = ac.getBeanDefinitionNames();
        for (String s: str
             ) {
            System.out.println(s);
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
抱歉,我之前的回答有误。SpringJava开发框架,无法在Python使用。以下是正确的回答: Spring是一个Java开发框架,不能在Python使用。如果你想在Python实现类似于Spring的功能,可以考虑使用Python的其他框架,如Django或Flask。 对于Django和Flask,它们都有自己的开发环境搭建和开发流程。你可以按照官方文档来搭建环境并学习开发流程。以下是简单的介绍: 1. Django开发环境搭建 Django的开发环境搭建很简单,只需要安装Python和Django即可。推荐使用pip安装Django。安装完成后,你可以使用Django的命令行工具来创建项目、应用和运行开发服务器。 2. Django开发流程 在Django,你需要创建一个项目,然后在项目创建应用。每个应用都有自己的模型、视图和模板。你可以使用Django的ORM来定义模型,使用视图来处理请求并渲染模板。Django还提供了许多内置的应用程序,如管理后台、认证和会话管理等。 3. Flask开发环境搭建 Flask的开发环境搭建也很简单,只需要安装Python和Flask即可。推荐使用pip安装Flask。安装完成后,你可以使用Flask库来创建应用。 4. Flask开发流程 在Flask,你需要创建一个应用程序对象,并定义路由和视图函数。Flask还提供了模板引擎和ORM,你可以使用它们来渲染模板和管理数据库。 总的来说,Python的Web开发框架有很多,每个框架都有自己的特点和适用场景。你可以根据自己的需求选择适合的框架。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值