Spring 5 入门实战Say Hello

位置:首页>文章>详情   分类: 教程分享 > Java教程   阅读(1132)   2023-03-28 11:29:14

引言

    俗话说万是入门难,本博客主要讲解spring 5入门的容器使用。通过一个实战的demo工程来讲解spring 5的入门使用。通过本教程基本能让你了解并使用spring 5的基础。

一.环境准备

  • jdk 1.8+(Spring 5对jdk的最低要求是1.8)
  • eclipse工具(当然你也可以选用自己喜欢的IDE工具)
  • maven 3+(本文讲解主要使用的是maven管理工具,当然你也可以选用其他例如:GRADLE)

二.创建项目

2.1创建一个maven简单项目

结构图如下:
spring5

2.2配置maven项目的Java编译版本

打开项目的pom.xml文件指定项目的编译jdk版本
<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>net.xqlee.project.demo</groupId>
	<artifactId>demo-spring5-helloword</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<build>
		<plugins>
			<!-- 注意spring5 Java最低版本要求1.8 -->
			<plugin>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.5.1</version>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>

2.3添加spring 5的maven依赖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>net.xqlee.project.demo</groupId>
	<artifactId>demo-spring5-helloword</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<dependencies>
		<!-- spring 框架5.0依赖 -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
			<version>5.0.1.RELEASE</version>
		</dependency>
	</dependencies>
	<build>
		<plugins>
			<!-- 注意spring5 Java最低版本要求1.8 -->
			<plugin>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.5.1</version>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>

三.实战spring 5编程

3.1 编写一个基于Java配置的spring 配置类

AppConfig.java:
package net.xqlee.project.demo.spring5.config;

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;

/**
 * 创建spring5的Java配置文件
 * 
 * @author xqlee
 *
 */
@Configuration /** 该注解表示这个类是一个Spring的配置类 **/
@ComponentScan(basePackages = {
		"net.xqlee.project.demo" }) /*** 该注解表示启用spring的组件扫描功能,并且配置了扫描包net.xqlee.project.demo下的所有类 **/
public class AppConfig {

}
该配置类的一些标签说明已经在代码中标注。

3.2 编写一个普通的用户业务

UserService.java:
 
package net.xqlee.project.demo.spring5.service;

import org.springframework.stereotype.Component;

/**
 * 用户测试业务类
 */
@Component /** 注册为spring的组件bean **/
public class UserService {
	/**
	 * 测试方法
	 * 
	 * @param name
	 *            参数:输入名称
	 * @return 返回结果
	 */
	public String sayHello(String name) {
		return "Hello," + name;
	}
}
*该用户业务处理类主要用来测试spring的注解注入。该类有一个方法,sayHello。在类实例化后可以调用该方法。

3.3 编写spring 5的启动类

Application.java:
package net.xqlee.project.demo.spring5;

import org.springframework.context.annotation.AnnotationConfigApplicationContext;

import net.xqlee.project.demo.spring5.config.AppConfig;
import net.xqlee.project.demo.spring5.service.UserService;

/**
 * spring 5程序启动类
 * 
 * @author xqlee
 *
 */
public class Application {
	/** spring 依赖注入用户测试类 **/

	public static void main(String[] args) {
		// 创建spring 基于注解配置的容器
		AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
		// 获取通过注解注入容器的UserService
		UserService userService = context.getBean(UserService.class);
		// 调用userService的方法执行
		String message = userService.sayHello("Leftso");
		// 输出结果
		System.out.println(message);
		// 关闭容器,释放JVM资源
		context.close();
	}
}
*上面的代码主要实现了Spring 5的启动。
*AnnotationConfigApplicationContext与ApplicationContext的关系可以通过下面类图了解:
AnnotationConfigApplicationContext

四.运行程序查看实战结果

运行上面编写的Application.java类,查看控制台输出
spring5实战结果输出
*通过上图可以看到,Spring 5容器已成功启动并且已经将添加Spring组件注解的UserService实例化托管到Spring容器。通过容器的getBean能成功拿到用户业务处理的实例。

*Spring 5入门实战就到这结束了。本文主要讲解spring 5容器。并未涉及web相关的组件。所以做起来还是挺容易的。
 
地址:https://www.leftso.com/article/312.html

相关阅读

Spring 5 入门实战Say Hello,本博客主要讲解spring 5最基础的容器入门实战。
java编程中spring框架5.0介绍说明/概述,spring5,spring框架,java编程
Java编程中Spring Boot整合RabbitMQ实现消息中间件RabbitMQ的使用
Spring MVC 5 接受对象集合参数实战,在之前,我一直以为http传输的参数是KEY-VALUE键值对的方式和文件流的形式。直到最近遇到新需求才知道还有一种RAW的数据类型。通过这种原生...
Java编程中spring boot项目如何获取spring容器applicationContext
java编程为啥会出现spring框架,为什么要有Spring?
Spring框架5.0,spring mvc 5.0入门教程。DispatcherServlet的详细讲解配置以及spring mvc5.0的helloword程序
Java编程中使用spring boot1.5.2框架整合spring data mongodb10.1,来使用mongodb数据库
Spring WebFlux 项目实战 在Spring WebFlux中创建多个RouterFunctions,在这篇文章中,我们将着眼于在Spring WebFlux中将多个路由器功能定义到不...
spring boot webflux client实战,webclient是spring webflux的一个小组件。对于Java的http通讯来说,webclient是非常简单易用的。