Spring入門例子一(IOC)

咳咳,簡單介紹下Spring吧(畫重點了,一本正經臉)

Spring是一個基於IOC和AOP的J2EE系統框架,簡單的來說,就是我們以前程序員自己需要自己去New對象,現在好了,我們把這項任務交個Spring容器去,讓他幫我們去new對象,我們拿到對象的屬性之後,就是已經被注好的值,直接用就行

1:老規矩,第一步先創建一個java項目


2:創建一個lib包,然後把Jar包加到我們的環境中去


3:創建實體類EntityClass文件

package com.ccut.pojo;

/**
 * 實體類我們演示控制反轉,類交給Spring容器去實例化
 */
public class EntityClass {
	private int id;
	private String name;

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

}

4:寫配置文件applicationContent.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"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="
   http://www.springframework.org/schema/beans 
   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
   http://www.springframework.org/schema/aop 
   http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
   http://www.springframework.org/schema/tx 
   http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
   http://www.springframework.org/schema/context      
   http://www.springframework.org/schema/context/spring-context-3.0.xsd">
   
   <bean name="a" class="com.ccut.pojo.EntityClass">
     <property name="name" value="Ericfei"/>
     <property name="id" value="20152226"/>
   </bean>
     
   
   </beans>

5:主方法中我們進行測試

package com.ccut;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.ccut.pojo.EntityClass;

/*
 * 主方法
 */
public class TestMian {

public static void main(String[] args) {
	 //1:加載配置文件
	
	/**
	 * 
	 */
	ApplicationContext content=new ClassPathXmlApplicationContext(new String[]{ "applicationContext.xml" });
	
	//獲得實體類bean
	EntityClass entityClass=(EntityClass) content.getBean("a");
	
	System.out.println(entityClass.getName());
	System.out.println(entityClass.getId());
}

/**
 * 
 * ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
RegisterDAO registerDAO = (RegisterDAO)ac.getBean("RegisterDAO");
如果是兩個以上:
ApplicationContext ac = new ClassPathXmlApplicationContext(new String[]{"applicationContext.xml","dao.xml"});
或者用通配符:
ApplicationContext ac = new ClassPathXmlApplicationContext("classpath:/*.xml");
 */
}

6:實現結果



7:結果分析

我們不用自己去傻傻的去new對象了,類與類之間達到解耦的目的(其實結果沒什麼好分析的.......硬扯上這句話)


8:程序源代碼(上面應該可以好使的,不好使下源代碼比較一下)





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章