spring入門01
阿新 • • 發佈:2018-12-19
Spring 簡介
Spring 是一個開源框架. Spring為簡化企業級應用開發而生. 使用 Spring 可以使簡單的 JavaBean 實現以前只有 EJB 才能實現的功能. Spring 是一個 IOC(DI) 和 AOP 容器框架.
具體描述 Spring: 1.輕量級:Spring 是非侵入性的 - 基於 Spring 開發的應用中的物件可以不依賴於 Spring 的 API 2.依賴注入(DI — dependency injection、IOC) 3.面向切面程式設計(AOP — aspect oriented programming) 4.容器: Spring 是一個容器, 因為它包含並且管理應用物件的生命週期 5.框架: Spring 實現了使用簡單的元件配置組合成一個複雜的應用. 在 Spring 中可以使用 XML 和 Java 註解組合這些物件 6.一站式:在 IOC 和 AOP 的基礎上可以整合各種企業應用的開源框架和優秀的第三方類庫 (實際上 Spring 自身也提供了展現層的 SpringMVC 和 持久層的 Spring JDBC)
Spring文件相關
以下是常用的文件地址:
Spring入門案例
maven引入jar
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.20.RELEASE</version>
</dependency>
新增實體類
package cn.ps.lesson01;
public class Role {
private String roleName;
public String getRoleName() {
return roleName;
}
public void setRoleName(String roleName) {
this.roleName = roleName;
}
}
新增配置檔案 app.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">
<!--
Role r=new Role();
-->
<bean id="r" class="cn.ps.lesson01.Role" ></bean>
</beans>
新增測試類 TestSpring.java
package cn.ps.lesson01;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class TestSpring {
public static void main(String[] args) {
//初始化spring容器
ApplicationContext ac=new ClassPathXmlApplicationContext("app.xml");
Role role=(Role)ac.getBean("r");
role.setRoleName("zs");
System.out.println(role);
}
}
spring容器的子類
ApplicationContext代表容器物件 ,頂級父類** BeanFactory。** 子類表示讀取xml檔案的位置不同。
- ClassPath從類路徑下讀取。
- FileSystem 從檔案系統絕對路徑讀 預設從專案路徑下找。 路徑的查詢可以直接通過, 在路徑上新增字首的方式決定搜尋的方式。
- file:表示從檔案系統中尋找 等價於FileSystemXmlApplicationContext。
- classpath:表示從類路徑下讀取 等價於 ClassPathXmlApplicationContext。