Spring Framework5.0 学习(2)-- Quick Start
2024-08-31 12:03:59
官网:https://projects.spring.io/spring-framework/
Spring Framework 5.x 要求 JDK 1.8以上
1.0 在(1)的基础上,给build.gradle文件中添加 依赖
compile 'org.springframework:spring-context:5.0.0.RELEASE'
2.0 gradle.build
apply plugin: 'java-library'
apply plugin: 'idea' // mainClassName 是 application的一个属性,否则会报错
apply plugin: 'application'
mainClassName = 'hello.Application' sourceCompatibility = 1.8
targetCompatibility = 1.8 repositories {
mavenCentral()
} dependencies {
compile "joda-time:joda-time:2.2"
compile 'org.springframework:spring-context:5.0.0.RELEASE'
} // 该项目生成的jar包的名字和版本,如 gs-gradle-0.1.0.jar
jar {
baseName = 'gs-gradle'
version = '0.1.0'
}
MessageService.java
package hello; /**
* Created by sheting on 10/22/2017
*/
public interface MessageService {
String getMessage();
}
MessagePrinter.java
package hello; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; /**
* Created by sheting on 10/22/2017
*/
@Component
public class MessagePrinter {
final private MessageService service; @Autowired
public MessagePrinter(MessageService service) {
this.service = service;
} public void printMessage() {
System.out.println(this.service.getMessage());
}
}
Application.java
package hello; import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration; /**
* Created by sheting on 10/22/2017
*/ @Configuration
@ComponentScan
public class Application { @Bean
MessageService mockMessageService() {
return new MessageService() {
public String getMessage() {
return "Hello World!";
}
};
} public static void main(String[] args) {
ApplicationContext context = new AnnotationConfigApplicationContext(Application.class);
MessagePrinter printer = context.getBean(MessagePrinter.class);
printer.printMessage();
}
}
运行结果:
最新文章
- Atitit  数据库的事件机制--触发器与定时任务attilax总结
- poj1664-放苹果(递归)
- VPS拨号主机自动拨号脚本(centos7)
- log4j介绍以及使用教程
- jenkins创建job不能用中文问题
- The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine
- C#上位机读数据库
- Access denied for user 'root'@'localhost' (using password:YES) 解决方案
- (转载)Android出现“Read-only file system”解决办法
- Hibernate5环境搭建
- eclipse热部署web项目
- 四大组件之Service小结
- 2017-2018 ACM-ICPC, Central Europe Regional Contest (CERC 17)
- 朱晔的互联网架构实践心得S2E4:小议微服务的各种玩法(古典、SOA、传统、K8S、ServiceMesh)
- Angular新手容易碰到的坑
- (三)使用链式数据实现包(java)
- 第三节 java 数组(循环遍历、获取数组的最值(最大值和最小值)、选择排序、冒泡排序、练习控制台输出大写的A)
- 【PHP开发规范】继承与扩展:PSR-2 编码风格规范
- Hibernate批量处理数据、[HQL连接查询]
- 原生mybaits学习笔记
热门文章
- ORM框架SQLAlchemy的使用
- .netCore2.0 配置文件
- sublime text 3 PHP 所需插件
- 【读书笔记】读《编写可维护的JavaScript》 - 编程实践(第二部分)
- 远程桌面下启动MATLAB时的License Manager Error -103错误
- CXF - JAX-WS入门
- mybatis学习之CLOB、BLOB处理及多参数方法映射
- springboot项目作为war包运行
- AtomicInteger关键字
- csharp: Request.Form,Request.QueryString,Request.Params,Request.Cookies