Spring-01-HelloWorld
什么是Spring?
Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应用都可以从Spring中受益。
为什么要使用Spring框架
- Spring是一个开源的免费的框架(容器)
- Spring是一个轻量的、非侵入式的框架
- 控制反转(IOC)、面向切面编程(AOP)
- 支持事务的处理、对框架整合的支持
总结:Spring就是一个轻量级的IOC和AOP框架
Spring的组成(七大模块)
1. Spring Core:
Core封装包是框架的最基础部分,提供IOC和依赖注入特性。这里的基础概念是BeanFactory,它提供对Factory模式的经典实现来消除对程序性单例模式的需要,并真正地允许你从程序逻辑中分离出依赖关系和配置。
2.Spring DAO:
DAO (Data Access Object)提供了JDBC的抽象层,它可消除冗长的JDBC编码和解析数据库厂商特有的错误代码。 并且,JDBC封装包还提供了一种比编程性更好的声明性事务管理方法,不仅仅是实现了特定接口,而且对所有的POJOs(plain old Java objects)都适用。
3.Spring Context:
构建于Core封装包基础上的 Context封装包,提供了一种框架式的对象访问方法,有些象JNDI注册器。Context封装包的特性得自于Beans封装包,并添加了对国际化(I18N)的支持(例如资源绑定),事件传播,资源装载的方式和Context的透明创建,比如说通过Servlet容器。
4.Spring AOP:
Spring的 AOP 封装包提供了符合AOP Alliance规范的面向方面的编程实现,让你可以定义,例如方法拦截器(method-interceptors)和切点(pointcuts),从逻辑上讲,从而减弱代码的功能耦合,清晰的被分离开。而且,利用source-level的元数据功能,还可以将各种行为信息合并到你的代码中。
5.Spring Web:
Spring中的 Web 包提供了基础的针对Web开发的集成特性,例如多方文件上传,利用Servlet listeners进行IOC容器初始化和针对Web的ApplicationContext。当与WebWork或Struts一起使用Spring时,这个包使Spring可与其他框架结合。
6.Spring ORM:
ORM 封装包提供了常用的“对象/关系”映射APIs的集成层。其中包括JPA、JDO、hibernate 和 iBatis 。利用ORM封装包,可以混合使用所有spring提供的特性进行“对象/关系”映射,如前边提到的简单声明性事务管理。
7.Spring Web MVC:
Spring中的MVC封装包提供了Web应用的Model-View-Controller(MVC)实现。Spring的MVC框架并不是仅仅提供一种传统的实现,它提供了一种清晰的分离模型,在领域模型代码和Web Form之间。并且,还可以借助Spring框架的其他特性。
Spring项目搭建(IDEA+Maven)
作者环境:JDK1.8.0、Maven3.6.3
如何安装Maven本地仓库这里就不多说了,很多的Blog都可以去查看。
- 创建一个Maven项目
- 继上一步next,输入项目的名称和选择项目所在的位置,填好了我们就可以直接finish
- 选择IDEA自带的导包
- 导入Core Container相应的jar包,查找相应的包可以到MavenRepository
- 创建HelloWorld实体类和Spring配置文件(applicationContext.xml)
public class HelloWorld {private String message;public String getMessage() {return message;}public void setMessage(String message) {this.message = message;}
}
applicationContext.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/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd"><!--配置Beanid:bean的唯一标识符,不可重复class:实体类的全类名property :通过setter方法对注入--><bean id="helloworld" class="com.gee.pojo.HelloWorld"><property name="message" value="Hello World"/></bean>
</beans>
测试类
import com.gee.pojo.HelloWorld;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class Test {public static void main(String[] args) {/**创建AplicationContext容器对象:* ApplicationContext:代表IOC容器* ClassPathXmlApplicationContext:当前应用的xml配置文件在ClassPath下* */ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");//从IOC容器中获取BeanHelloWorld helloWorld = context.getBean("helloworld",HelloWorld.class);System.out.println(helloWorld.getMessage());}
}
运行结果:
在这几个步骤中,没有展示对应的截图,所以在这里放出一下我的项目结构截图(仅供参考)
注:博主也是第一次尝试着写blog,所以可能有很多不好的地方,还望大家谅解,如果有错误的地方希望大佬们能够不吝赐教。
Spring-01-HelloWorld相关推荐
- Spring之HelloWorld再起
2019独角兽企业重金招聘Python工程师标准>>> 第一步:打开File->New->Other-,选择Java Project,创建标准Java项目. 第二步:在项 ...
- Spring的HelloWorld
Spring模块: 使用 Eclipse 开发,要先安装 Spring Tool Suite. 安装过程中,只勾选 Spring IDE 结尾(4个)的即可,并把联网进行更新去掉(否则联网速度会变慢) ...
- Spring之HelloWorld
搭建 Spring 开发环境 把以下 jar 包加入到下: 工程的 classpath Spring 的配置文件: 一个典型的 Spring 项目需要创建一个或多个 Bean 配置文件, 这些配置文件 ...
- 普歌-云言团队-Spring Boot入门:环境搭建Spring Boot HelloWorld
Spring Boot入门:环境搭建Spring Boot HelloWorld 前言:SpringBoot 是来简化Spring应用开发, 约定大于配置, 去繁从简, just run就能创建一个独 ...
- SpringMVC(2)—SpringMVC整合Spring的HelloWorld
一.这是一个SpringMVC框架的案例HelloWorld 功能:HelloWorld 二.SpringMVC运行流程 1.流程 请求-->springDispatcherServlet的ur ...
- Spring Boot☞HelloWorld开篇
目录结构 POM.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns=&quo ...
- Spring MVC HelloWorld入门及运行机制 (一)
完整的项目案例: springmvc.zip 介绍 SpringMVC是一款Web MVC框架. 它跟Struts框架类似,是目前主流的Web MVC框架之一. 文章通过实例来介绍SpringMVC的 ...
- 使用Maven构建Spring项目“HelloWorld”
开始学习Spring,因为以前都没用过Maven,所以打算边学习Spring边熟悉Maven.这里自己使用Maven构建一个spring项目demo 1.新建maven项目: 2.构建Spring环境 ...
- Spring 01 初识 Spring
初识 Spring 文章目录 初识 Spring 一.学习任务 二.本章目标 三.Spring框架简介 3.1.Spring框架作用与优点 3.2.Spring框架体系结构介绍 3.3.Spring框 ...
- Babylonjs入门01——HelloWorld及babylon获取
Babylonjs入门01-HelloWorld 1 介绍 2 Babylonjs的HelloWorld 2.1 Playgroud 2.2 在自己的HTML中使用Babylonjs 3 获取Baby ...
最新文章
- 计算机网络协议教案,计算机网络实验教案(6)网络协议分析-IP协议3.pdf
- java开发_数字转换汉语中人民币的大写_完整版
- ASP.NET MVC- Upload File的例子
- MySQL多表查询实例
- 怎么运行verilog语言_(六) Verilog入门之有限状态机
- 枚举对象注释_如何以及何时使用枚举和注释
- jsp 嵌入java_关于JSP里的Java语句嵌入问题
- 作者:司光亚(1967-),男,国防大学信息作战与指挥训练教研部教授,主要研究方向为战争复杂系统建模仿真。...
- 一个新的自己从2009年的第一天...
- leetcode 137[转]
- 根据年、月、周、日设置时间节点的日期工具类
- 如何实现阿里云短信接口使用短信业务
- 数据挖掘 文本分类(二)搜集中文语料库与ICTCLAS分词
- 项目中集成阿里巴巴分布式定时任务
- 硬件问题解决方法(大全)
- 用Python学《微积分B》(Taylor公式与曲线拟合)
- 数据资产管理的5个步骤和6个要素
- php获取当前周得周一_php获取本周一的日期实现方法
- 陈勇写的换行、换列排放
- 主观下线和客观下线的情况