Spring--Spring入門

來源:互聯網
上載者:User

標籤:1.0   工廠   編程   spring   ase   group   get   his   項目   

Spring的概述-什麼是Spring
  • ·Spring 是一個開源架構
  • ·Spring 為簡化企業級應用開發而生.使用Spring可以使簡單的
  • JavaBean 實現以前只有EJB才能實現的功能
  • ·Spring 是JavaSE/EE的一站式架構
Spring的概述-什麼是Spring
  • ·方便解耦,簡化開發
  • -Spring就是一個大工廠,可以將所有對象建立和依賴關係維護,交給Spring管理
  • ·AOP編程的支援
  • -Spring提供面向切面編程,可以方便的實現對程式進行許可權攔截、運行監控等功能
  • ·聲明式事務的支援
  • -只需要通過配置就可以完成對事務的管理,而無需手動編程
Spring的概述-Spring的優點
  • ·方便程式的測試
  • -Spring對Junit4支援,可以通過註解方便的測試Spring程式
  • ·方便整合各種優秀架構
  • -Spring不排斥各種優秀的開源架構,其內部提供了對各種優秀架構(如:Struts、Hibernate、MyBatis等)的直接支援
  • ·降低JavaEEAPI的使用難度
  • -Spring 對JavaEE開發中非常難用的一些API(JDBC、JavaMail、遠程調用等),都提供了封裝,使這些API應用難度大大降低
Spring的概述-Spring的模組

 

Spring的Ioc的底層實現

 Spring的Ioc的入門案例
  • 使用idea建立新的maven項目
  • 在pom.xml中添加依賴
<dependencies>  <dependency>    <groupId>junit</groupId>    <artifactId>junit</artifactId>    <version>4.11</version>    <scope>test</scope>  </dependency>  <dependency>    <groupId>org.springframework</groupId>    <artifactId>spring-core</artifactId>    <version>4.3.7.RELEASE</version>  </dependency>  <dependency>    <groupId>org.springframework</groupId>    <artifactId>spring-context</artifactId>    <version>4.3.7.RELEASE</version>  </dependency>  <dependency>    <groupId>org.springframework</groupId>    <artifactId>spring-beans</artifactId>      <version>4.3.7.RELEASE</version>  </dependency>    <dependency>        <groupId>org.springframework</groupId>        <artifactId>spring-expression</artifactId>      <version>4.3.7.RELEASE</version>    </dependency>  <dependency>    <groupId>commons-logging</groupId>    <artifactId>commons-logging</artifactId>    <version>1.2</version>  </dependency>  <dependency>    <groupId>log4j</groupId>    <artifactId>log4j</artifactId>    <version>1.2.17</version>  </dependency></dependencies>
  • 建包

 

UserService

public interface UserService {    public void sayHello();}

  UserServiceImpl

public class UserServiceImpl implements  UserService{    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    //添加屬性    private String name;    @Override    public void sayHello() {        System.out.print("hello spring" + name);    }}

  SpringDemo1

public class SpringDemo1 {    @Test    /**     * 傳統方式開發     */    public void demo1(){        //UserService userService = new UserServiceImpl();        UserServiceImpl userService = new UserServiceImpl();        //設定屬性 傳統方法要改代碼 就不好了        userService.setName("張三");        userService.sayHello();    }    @Test    /**     * 使用Spring 的方式     */    public void demo2(){        //建立Spring的工廠        ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");        //通過工廠獲得類        UserService userService = (UserService) applicationContext.getBean("userService");        userService.sayHello();    }}

   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">    <!-- UserService的建立權交給了Spring-->    <bean id="userService" class="com.windbag.ioc.demo1.UserServiceImpl">        <!-- 設定屬性-->        <property name="name" value="李四"></property>    </bean></beans>
  • 測試

Spring IOC的快速入門案例
  • ·IOC Inverse of Control 反轉控制的概念,就是將原本在程式中手動建立UserService對象的控制權,交由Spring架構管理
  • ·簡單說,就是建立UserService對象控制權被反轉到了Spring架構
  • ·DI Dependency Injection 依賴注入的概念,就是在Spring建立這個對象的過程中,將這個對象所依賴的屬性注入進去。(name)

 

Spring--Spring入門

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.