Spring学习(一)-基本入门

一、spring简介

1.1、spring是什么

1)Spring 是一个开源框架.
2)Spring 为简化企业级应用开发而生. 使用 Spring 可以使简单的 JavaBean 实现以前只有 EJB 才能实现的功能.
3)Spring 是一个 IOC(DI) 和 AOP 容器框架

1.2、具体描述

1)轻量级:Spring 是非侵入性的 - 基于 Spring 开发的应用中的对象可以不依赖于 Spring 的 API
2)依赖注入(DI --- dependency injection、IOC)
3)面向切面编程(AOP --- aspect oriented programming)
4)容器: Spring 是一个容器, 因为它包含并且管理应用对象的生命周期
5)框架: Spring 实现了使用简单的组件配置组合成一个复杂的应用. 在 Spring 中可以使用 XML 和 Java 注解组合这些对象
6)一站式:在 IOC 和 AOP 的基础上可以整合各种企业应用的开源框架和优秀的第三方类库 (实际上 Spring 自身也提供了展现层的 SpringMVC 和 持久层的 Spring JDBC)

1.3、相关模块

Spring5模块

二、spring入门案例

2.1、下载spring5

下载地址:https://repo.spring.io/release/org/springframework/spring/

image

2.2、idea创建java工程

创建lib文件夹,并导入相关jar包

image

将jar添加到类路径下:

image

image

image

2.3、创建普通java类

package com.dianchou.spring;

/**
 * @author lawrence
 * @create 2020-07-07 10:31
 */
public class User {
    private String username;

    public User() {
    }

    public User(String username) {
        this.username = username;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public void hello(){
        System.out.println("Hello: " + username);
    }
}

2.4、创建spring配置文件

<?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/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!--配置User对象-->
    <bean id="user" class="com.dianchou.spring.User">
        <property name="username" value="Jerry"></property>
    </bean>
</beans>

2.5.创建测试代码

@Test
    public void testUser(){
        //1. 创建 Spring 的 IOC 容器
        ApplicationContext ctx = new ClassPathXmlApplicationContext("bean1.xml");

        //2. 从 IOC 容器中获取 bean 的实例
        User user = (User) ctx.getBean("user");

        //根据类型来获取 bean 的实例: 要求在  IOC 容器中只有一个与之类型匹配的 bean, 若有多个则会抛出异常.
        //一般情况下, 该方法可用, 因为一般情况下, 在一个 IOC 容器中一个类型对应的 bean 也只有一个.
//        User user = ctx.getBean(User.class);

        //3. 使用 bean
        user.hello();
    }
posted @ 2020-07-07 10:03  运维人在路上  阅读(254)  评论(0编辑  收藏  举报