JavaWeb——Spring的组成
其他
2020-02-08 18:26:45
阅读次数: 0
JavaWeb——Spring
- Spring 是一个开源框架,使用 Ioc(控制反转)和 AOP(面向切面编程)两种先进技术,极大简化了企业级开发的复杂度。
一、Spring 基础
1、Spring 的组成
- Spring 框架主要由核心模块、Context模块、AOP模块、DAO模块、O/R映射模块、Web模块和MVC模块组成。
- 核心模块是 Spring 的核心容器,实现了 IoC 模式、Spring 框架的基础功能,其中 BeanFactory 类是核心类,负责管理和配置 JavaBean;通过 Factory 模式实现 Ioc 容器即依赖注入。
- Context 模块继承了核心类,同时增加了事件处理、国际化、资源装载、透明装载以及数据校验等功能;提供了框架式的 bean 的访问方式和很多企业级的功能,如定时任务调度。
- Spring 提供了用标准 Java 语言根据 AOP 联盟的 API 编写的 AOP 框架,集成了所有的 AOP 功能,通过事务管理可以将任意 Spring 管理的对象 AOP 化,使应用程序排开 EJB 的复杂性的同时拥有 EJB 的关键功能。
- DAO 模块提供了 JDBC 的抽象层,简化数据库厂商的异常错误,提供对声明式事务和编程式事务的支持。
- 该模块提供了对现有 ORM 框架的支持。
- 该模块建立在 Context 模块的基础之上,提供了 Servlet 监听器的 Context 和 Web 应用的上下文;对现有的 Web 框架如 JSF、Tapestry、Struts 等提供了集成。
- 建立在 Spring 核心功能之上,拥有 Spring 框架的所有特性,能够适应多种视图、模板技术、国际化和验证服务,实现控制逻辑和业务逻辑清晰地分离。
2、Spring 简单示例
- 在 Spring 项目的 src 目录里的适当文件夹(beanset)新建一个 JavaBean,代码如下:
package com.myCode.beanSet;
public class Student {
private String name;
private String age;
private String sex;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
- 接着在 src 目录下新建一个 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/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean name="student" class="com.myCode.beanSet.Student">
<property name="name" value="御承扬"/>
<property name="age" value="21"/>
<property name="sex" value="男"/>
</bean>
</beans>
- 最后在 src 目录下新建一个 main 目录,并在 main 目录下新建一个 Manager.java,代码如下:
package com.myCode.main;
import com.myCode.beanSet.Student;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
public class Manager {
public static void main(String[] args){
Resource resource = new ClassPathResource("applicationContext.xml");
BeanFactory factory = new XmlBeanFactory(resource);
Student student = (Student) factory.getBean("student");
System.out.println("学生姓名:"+student.getName());
System.out.println("学生年龄:"+student.getAge());
System.out.println("学生性别:"+student.getSex());
}
}
- 运行结果如下:
1月 11, 2020 4:57:26 下午 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
信息: Loading XML bean definitions from class path resource [applicationContext.xml]
学生姓名:御承扬
学生年龄:21
学生性别:男
上一篇
下一篇
发布了146 篇原创文章 ·
获赞 15 ·
访问量 1万+
转载自blog.csdn.net/qq_42896653/article/details/103645367