Spring学习之开发环境搭建的详细步骤

所属分类: 软件编程 / java 阅读数: 39
收藏 0 赞 0 分享

最近搞定了项目,工作终于松了下来,顺便有时间学习Spring框架,记录于此,不足之处,希望大家不吝赐教

Spring的介绍

Spring是一个轻量级的Java框架,由于Spring基本提供了全套的开发服务,所以Spring基本上可以应用在Java开发中的很多方面,从本周开始学习Spring框架,顺便将自己的学习笔记整理出来,以巩固自己的学习,增进自己的表达能力,加深对Spring的了解

Spring体系结构

Spring的体系结构可以从官方文档中得知,具体如下所示:

Spring体系结构

从上面的图片中可以看到,Spring的体系结构是非常清晰的,主要有以下几个部分组成

  1. 核心容器
    1. Bean
    2. Core
    3. Context
    4. SpEL
    5. AOP
    6. AOP
    7. Aspects
    8. Instrumentation
    9. Messaging
  2. 数据持久化
    1. JDBC
    2. OXM
    3. ORM
    4. JMS
  3. 事务管理
    1. Web容器
    2. WebSocket
    3. Servlet
    4. Web
    5. Portlet

其中最重要的Spring的核心容器,是整个Spring的核心基础,其他模块或多或少都是对核心模块的扩展

搭建Spring开发环境

上面提到了Spring的核心容器是Spring的核心基础,这也就是说,配置Spring的开发环境,其实就是配置Spring的核心容器,也就是上面提到的Spring核心容器的组成部分,接下来来搭建一个可运行的,简单的Spring环境

这里使用Maven对项目进行管理,导入对应的依赖,如下所示

  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-beans</artifactId>
    <version>4.3.7.RELEASE</version>
  </dependency>
  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>4.3.7.RELEASE</version>
  </dependency>
  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>4.3.7.RELEASE</version>
  </dependency>
  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-expression</artifactId>
    <version>4.3.7.RELEASE</version>
  </dependency>

导入依赖之后,接下来通过一个简单的小案例来查看Spring是否配置成功

在类路径下新建一个资源配置文件beanConfig.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" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!--编写对应的配置信息-->

</beans>

然后新建一POJO对象,Car.java,具体内容如下所示

public class Car {

  private String name;

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  @Override
  public String toString() {
    return "Car{" +
        "name='" + name + '\'' +
        '}';
  }
}

新建完成之后,在上面的配置文件中补充响应的信息

 <bean id="car" class="cn.xuhuanfeng.domain.Car"/>
 <!--id是所创建对象的名字,class是所创建对象的类对应的全限定名-->

接下来就可以开始测试我们所配置的环境是否正确了,新建一个简单的测试类,如下所示

public class SpringTest{

  @Test
  public void testSpring(){
    // 加载对应的Spring配置信息
    ApplicationContext context = new ClassPathXmlApplicationContext("beanConfig.xml");
    // 从容器中获取对象
    Car car = (Car) context.getBean("car");
    System.out.println(car);
  }
}

如何依赖正确导入,并且配置文件没有填写错误的话,可以看到下面的输出内容

七月 08, 2017 8:33:14 上午 org.springframework.context.support.ClassPathXmlApplicationContext prepareRefresh
信息: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@68fb2c38: startup date [Sat Jul 08 08:33:14 CST 2017]; root of context hierarchy
七月 08, 2017 8:33:15 上午 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
信息: Loading XML bean definitions from class path resource [beanConfig.xml]
Car{name='null'}

至此,一个最简单的Spring开发环境就搭建完成了。

接下来将完成Spring的学习,努力中...

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

Java concurrency之锁_动力节点Java学院整理

这篇文章主要为大家详细介绍了Java concurrency之锁的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Java8新特性之StampedLock_动力节点Java学院整理

本文从synchronized、Lock到Java8新增的StampedLock进行对比分析,对Java8新特性之StampedLock相关知识感兴趣的朋友一起看看吧
收藏 0 赞 0 分享

Java8新特性之lambda的作用_动力节点Java学院整理

我们期待了很久lambda为java带来闭包的概念,但是如果我们不在集合中使用它的话,就损失了很大价值。现有接口迁移成为lambda风格的问题已经通过default methods解决了,在这篇文章将深入解析Java集合里面的批量数据操作解开lambda最强作用的神秘面纱。
收藏 0 赞 0 分享

Java8新特性之Base64详解_动力节点Java学院整理

这篇文章主要为大家详细介绍了Java8新特性之Base64的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Java8新特性之JavaFX 8_动力节点Java学院整理

这篇文章主要介绍了Java8新特性之JavaFX 8的相关知识,非常不错,具有参考借鉴价值,需要的朋友参考下吧
收藏 0 赞 0 分享

将本地jar包安装进入maven仓库(实现方法)

下面小编就为大家带来一篇将本地jar包安装进入maven仓库(实现方法)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

浅谈Java finally语句到底是在return之前还是之后执行(必看篇)

下面小编就为大家带来一篇浅谈Java finally语句到底是在return之前还是之后执行(必看篇)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

基于Java并发容器ConcurrentHashMap#put方法解析

下面小编就为大家带来一篇基于Java并发容器ConcurrentHashMap#put方法解析。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解Spring Boot Profiles 配置和使用

本篇文章主要介绍了详解Spring Boot Profiles 配置和使用,具有一定的参考价值,有兴趣的可以了解一下
收藏 0 赞 0 分享

详解Spring Boot 属性配置和使用

本篇文章主要介绍了详解Spring Boot 属性配置和使用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享
查看更多