Spring入门

Posted StanLong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring入门相关的知识,希望对你有一定的参考价值。

Spring六大模块

1、SpringCore  spring的核心功能:IOC容器,解决对象的创建及依赖关系

2、SpringWeb   spring对Web模块的支持

3、SpringDAO  spring对JDBC的支持

4、SpringORM  spring对ORM的支持

5、SpringAOP  切面编程

6、SpringEE  spring对JavaEE其他模块的支持

 

准备工作:从Spring官网上下载Spring的jar包,我这里下载的是4.1.6的版本 (这里分享一下http://pan.baidu.com/s/1gf67MDl,如果链接失效就去官网下载。)

 

从SpringCore开始

1、在eclipse中建立一个web项目,命名为HelloSpring.

2、导入SpringCore需要的jar包

spring-core-4.1.6.RELEASE.jar           Spring核心功能
spring-context-4.1.6.RELEASE.jar        Spring上下文节点
spring-expression-4.1.6.RELEASE.jar     Sring表达示相关
spring-beans-4.1.6.RELEASE.jar          Spring bean节点
commons-logging-1.1.3.jar Spring依赖的日志包,该包需要单独下载

3、Spring配置文件

applicationContext.xml

<!--在src下建包命名为com.isoftstone.xml.在该包下新建一个xml文件命名为applicationContext.xml

这里需要引入applicationContext的约束,其位置在
spring-framework-4.1.6\spring-framework-4.1.6.RELEASE\docs\spring-framework-reference\htmlsingle\index.html

这是一个schema约束,可直接搜索xmlns:,这里找的是一个带p名称空间的。搜索xmlns:p找到需要的约束
--> <?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:p="http://www.springframework.org/schema/p"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd">
</beans>

4、声明一个实体类

package com.isoftstone.bean;

public class User {

    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;
    }
}

5、声名一个action,但此时对象的创建交由Spring完成

<!-- IOC容器配置,要创建的所有对象都配置在这里 -->
 <bean id="user" class="com.isoftstone.bean.User"></bean>
   @Test
    public void testIOC(){
        /*new创建对象*/
        //User user = new User();
        
        //现在把对象的创建交给IOC容器
        Resource resource = new ClassPathResource("com/isoftstone/xml/applicationContext.xml");
        
        //创建容器对象(Bean的工厂)
        BeanFactory factory = new XmlBeanFactory(resource);
        
        //得到容器创建的对象
        User user = (User)factory.getBean("user");
        System.out.println(user.getId());
    }
    
    //方法二,这种方法更方便
    @Test
    public void testIC(){
        ApplicationContext ac = new ClassPathXmlApplicationContext("com/isoftstone/xml/applicationContext.xml");
        User user = (User)ac.getBean("user");
        System.out.println(user);
    }

 












以上是关于Spring入门的主要内容,如果未能解决你的问题,请参考以下文章

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段

Spring boot:thymeleaf 没有正确渲染片段

What's the difference between @Component, @Repository & @Service annotations in Spring?(代码片段

spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象(代码片段

Spring Rest 文档。片段生成时 UTF-8 中间字节无效 [重复]

Atom编辑器入门到精通 Atom使用进阶