环境已经安装完成,接下来创建一个简单的Spring应用。

创建Spring应用步骤:

  1. 创建一个maven项目
  2. 添加spring库依赖
  3. 创建Bean类
  4. 添加Bean的xml装配文件
  5. 创建主类
  6. 运行应用程序

1. 创建一个maven项目

打开Eclipse,如果还没有搭建开发环境,可参照Spring开发环境搭建(Eclipse) ,选择菜单:File > New > Maven Project,弹出对话框,如下图操作

点击Next,弹出对话框,如下图操作

点击Finish,完成项目创建,项目结构如下:

项目目录说明:

  • src – 源码目录

    • main – 代码

      • java – Java代码目录
      • resources – 配置文件等资源目录
    • test – 测试代码
  • target – 编译后的输出目录

项目根目录下的pom.xml文件就是maven的依赖包配置文件。

2. 添加spring库依赖

要把用到的spring模块添加到项目中来。修改pom.xml,引入如下模块:

  • spring-core
  • spring-beans
  • spring-context

完整的pom.xml文件内容:

<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.qikegu.demo</groupId>
<artifactId>spring-helloworld</artifactId>
<version>0.0.1-SNAPSHOT</version>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-core -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>5.1.5.RELEASE</version>
</dependency> <!-- https://mvnrepository.com/artifact/org.springframework/spring-beans -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>5.1.5.RELEASE</version>
</dependency> <!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.1.5.RELEASE</version>
</dependency> </dependencies> </project>

接下来将添加代码,会添加如下文件:

  • Customer.java - bean类
  • applicationContext.xml - bean配置文件
  • Hello.java - 主类

最终的项目结构如下图所示:

后面将详细说明。

3. 创建Bean类

添加Customer Bean类。项目根目录右键弹出菜单,选择:New -> File, 指定目录.../src/main/java/com/qikegu/demo,添加Customer.java文件。

Customer.java代码:

package com.qikegu.demo;

public class Customer { 

    String name; 

    public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public void displayInfo() {
System.out.println("Hello: "+ name);
}
}

这是一个简单的bean类,包含一个属性及其getter和setter方法,另外displayInfo()方法会打印客户名称。

4. 添加Bean的xml装配文件

在resources目录下,添加Bean的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:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <bean id="customerBean" class="com.qikegu.demo.Customer">
<property name="name" value="奇客谷"></property>
</bean>
</beans>
  • <bean>标记为指定的类定义bean。
  • <property>标记是bean的一个子元素,用于设置Customer类的属性,设置的属性值将由IoC容器赋值给Customer类实例。

5. 创建主类

添加主类文件Hello.java,内容如下:

package com.qikegu.demo;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext; public class Hello {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
Customer customerBean = (Customer) context.getBean("customerBean");
customerBean.displayInfo(); ((ClassPathXmlApplicationContext) context).close();
}
}

6. 运行应用程序

右键单击Hello.java,弹出菜单,选择Run As > Java Application,输出:

Hello: 奇客谷

系列教程

  1. Spring 框架介绍
  2. Spring 框架模块
  3. Spring开发环境搭建(Eclipse)
  4. 创建一个简单的Spring应用
  5. Spring 控制反转容器(Inversion of Control – IOC)
  6. 理解依赖注入(DI – Dependency Injection)
  7. Bean XML 配置(1)- 通过XML配置加载Bean
  8. Bean XML 配置(2)- Bean作用域与生命周期回调方法配置
  9. Bean XML 配置(3)- 依赖注入配置
  10. Bean XML 配置(4)- 自动装配
  11. Bean 注解(Annotation)配置(1)- 通过注解加载Bean
  12. Bean 注解(Annotation)配置(2)- Bean作用域与生命周期回调方法配置
  13. Bean 注解(Annotation)配置(3)- 依赖注入配置
  14. Bean Java配置
  15. Spring 面向切面编程(AOP)
  16. Spring 事件(1)- 内置事件
  17. Spring 事件(2)- 自定义事件

创建一个简单的Spring应用的更多相关文章

  1. 【Spring Boot】创建一个简单的Spring Boot的 Demo

    走进Spring Boot 文章目录 走进Spring Boot 环境搭建 新建Spring Boot项目 开始创建项目 配置JDK版本 和 Initializr Service URL 配置Proj ...

  2. 使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(三)(错误整理篇)

    使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(一) 使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(二) 以上两篇已经把流 ...

  3. 使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(二)(代码篇)

    这篇是上一篇的延续: 用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(一) 源代码在github上可以下载,地址:https://github.com/guoxia ...

  4. 使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(一)

    梳理下使用spring+springMVC+mybatis 整合后的一个简单实例:输入用户的 ID,之后显示用户的信息(此次由于篇幅问题,会分几次进行说明,此次是工程的创建,逆向生成文件以及这个简单查 ...

  5. 在eclipse中配置一个简单的spring入门项目

    spring是一个很优秀的基于Java的轻量级开源框架,为了解决企业级应用的复杂性而创建的,spring不仅可用于服务器端开发,从简单性.可测试性和松耦合性的角度,任何java应用程序都可以利用这个思 ...

  6. 构建一个简单的Spring Boot项目

    11 构建一个简单的Spring Boot项目 这个章节描述如何通过Spring Boot构建一个"Hello Word"web应用,侧重介绍Spring Boot的一些重要功能. ...

  7. 一个简单的spring boot程序

    搭建一个spring boot项目十分的方便,网上也有许多,可以参考 https://www.cnblogs.com/ityouknow/p/5662753.html 进行项目的搭建.在此我就不详细介 ...

  8. 如何创建一个简单的Visual Studio Code扩展

    注:本文提到的代码示例下载地址>How to create a simple extension for VS Code VS Code 是微软推出的一款轻量级的代码编辑器,免费,开源,支持多种 ...

  9. 《Entity Framework 6 Recipes》翻译系列 (3) -----第二章 实体数据建模基础之创建一个简单的模型

    第二章 实体数据建模基础 很有可能,你才开始探索实体框架,你可能会问“我们怎么开始?”,如果你真是这样的话,那么本章就是一个很好的开始.如果不是,你已经建模,并在实体分裂和继承方面感觉良好,那么你可以 ...

随机推荐

  1. SqlParameter 类

    SqlParameter 类 表示 SqlCommand 的参数,也可以是它到 DataSet 列的映射.无法继承此类. 命名空间: System.Data.SqlClient 程序集: System ...

  2. java并发:原子类之AtomicLong

    原子类之AtomicLong java线程中的操作,需要满足原子性.可见性等原则,比如i++这样的操作不具备原子性, A线程读取了i,另一个线程执行i++,A线程再执行i++就会引发线程安全问题 推荐 ...

  3. 契约精神、尊重规则、SOP,对制造业来说是蜜糖还是毒药?

    契约精神.尊重规则.执行SOP,这些词儿都天然带有光环,也有很多相关的好故事,全球范围内的企业家都对其推崇备至,摆出一副虔诚教徒的模样,事实上,缺乏契约精神.不遵守规则比之缺乏资本.丢掉订单更加不可接 ...

  4. js 用于运行string中的<script>和</script>之间的函数

    /** * Created by 炜文 on 2017/2/15. */ var intext = '485222<script> var i=2;var j=2;console.log( ...

  5. ch7对表单和数据表格使用样式

    对数据表格应用样式 1.表格特有的元素 caption:基本上用做表格的标题.summary:可应用于表格的标签,用来描述表格的内容(与image的alt文本相似) <table class=& ...

  6. Python django 安装 mysqlclient 失败

    使用命令安装失败: C:\Program Files (x86)\Python\Python37-\Scripts>pip3..exe install mysqlclient Collectin ...

  7. Day3-R-Aggressive cows POJ2456

    Farmer John has built a new long barn, with N (2 <= N <= 100,000) stalls. The stalls are locat ...

  8. Cookie跨域setDomain和setPath

    CSDN日报20170226--<你离心想事成只差一个计划> 程序员2月书讯 [招募]Python学习班招生啦 Cookie跨域setDomain和setPath 标签: cookiesp ...

  9. 吴裕雄--天生自然JAVAIO操作学习笔记:System类对IO的支持和BuffereRead

    import java.io.OutputStream ; import java.io.IOException ; public class SystemDemo01{ public static ...

  10. Python3 中 的 绝对导入 与 相对导入

    背景: 在学习tf的时候,看到了from __future__ import absolute_import,所以登记学习一下. 概览: 一般模块导入规则: import xxx时搜索文件的优先级如下 ...