Spring4.3入门 快速上手Spring

Spring

Spring 框架是一个集合了很多东西的框架, 最核心最底层的就是IoC/DI. 在这个基础之上, 有很多诸如 AOC, ORM, WebMVC, DAO, Context 之类的功能(容器).

IoC/DI 控制反转, 依赖注入. 就是你的类对应的对象不用你来 new, 框架帮你 new, 帮你 new 完了再放到你指定的变量里面, 你直接用就行. 他还帮你管理他什么时候 new 什么时候 delete. 这样搞的好处是解耦.

AOC, 面向切面编程. 类似于在一个方法的外面套一层壳子, 壳子的功能是: 先(后)执行壳子里面某一段语句再执行该方法, 或者当该方法抛出异常的时候执行壳子里面的某段语句.

ORM 对象关系映射. 你只需要操纵对象, ORM会帮你对应地操作关系型数据库.
我觉得 Spring 里面很多的功能, 以及很多基于 Spring 的插件, 都是基于 Spring 的控制反转以及面向切面编程来实现的. 所以初学只要学好 IoC 和 AOP, 就可以打好基础.

创建一个裸的 Spring 项目

  • 在 src/main/java 目录下创建一个包 com.jecvay.springhello
  • 在包里创建一个 HelloWorld 类, 这个类就是一会儿用框架new, 用框架注入到 main 方法里面的对象的类.
package com.jecvay.springhello;

public class HelloWorld {
    private String msg;
    public void setMsg(String x) {
        msg = x;
    }
    public void getMsg() {
        System.out.println("Hello, " + msg);
    }
}
package com.jecvay.springhello;

public class HelloWorld {
    private String msg;
    public void setMsg(String x) {
        msg = x;
    }
    public void getMsg() {
        System.out.println("Hello, " + msg);
    }
}
  • 在 src/main/resources 下面创建一个 Beans.xml 文件, 内容如下. 这个文件主要就是声明了一个spring bean, 给出了id号, 以及对应的 class. 这个 class 里面还有 msg 这个属性, 可以直接在 bean 里面给出他的初始化值. 这里让 msg = “Jecvay”.
<?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">

    <bean id="helloWorld" class="com.jecvay.springhello">
        <property name="msg" value="Jecvay"/>
    </bean>
</beans>
  • 在包里创建一个 MainApp 类, 这是我们的程序入口
package com.tutorialspoint;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class MainApp {
    public static void main(String[] args) {
        ApplicationContext context =
                new ClassPathXmlApplicationContext("Beans.xml");
        HelloWorld obj = (HelloWorld) context.getBean("helloWorld"); // bean id
        obj.getMsg();
    }
}

这里 HelloWorld obj = (HelloWorld)context.getBean("helloWorld");这一句就是让Spring在运行的时候帮我们 new 一个HelloWorld对象出来并将其引用注入到 obj 这个变量中.

运行结果:

Hello, Jecvay

Process finished with exit code 0

这样就OK了.

注意
Intellij 要求我们把 resources 文件夹在 Project Structure 中设置为 Resources 类型, 否则运行的时候可能报错找不到 Beans.xml 配置文件.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值