spring入门(使用idea)

入门练习

创建web项目

项目结构如下:

项目名
----src
-------main
----------java
-------------com.wei
-------------------bean
------------------------.class
----------resources 
----------webapp(web项目)
-------test
----------java
-------------com.wei.test
----------------------.class
----------resources
----pom.xml

项目名:spring01

引入jar包

如果练习IOC ,需要引入 org.springframework.bean , org.springframework.context.
Maven项目,pom.xml添加一下内容:

<!--Spring框架基本的核心工具类-->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>5.1.3.RELEASE</version>
</dependency>
<!--Bean工厂与bean的装配-->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-beans</artifactId>
    <version>5.1.3.RELEASE</version>
</dependency>
<!--spring的context上下文即IoC容器-->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>5.1.3.RELEASE</version>
</dependency>
    <!--提供了对第三方库集成到 Spring-context 的支持比如缓存等-->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context-support</artifactId>
        <version>5.1.3.RELEASE</version>
    </dependency>
    <!--日志-->
    <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.1.2</version>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.14</version>
    </dependency>
    <!--测试-->
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
        <scope>test</scope>
    </dependency>
</dependencies>

引入log4j.properties

文件位置:src\main\resources目录下
在log4j.properties中,写入一下内容
log4j.rootLogger=ERROR,A1
log4j.logger.org.mybatis = ERROR
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss,SSS} [%t] [%c]-[%p] %m%n

创建一个操作类

文件位置:src\main\java\com.wei.bean目录下
在这里插入图片描述

package com.wei.bean;
import com.sun.javaws.IconUtil;
public class Person {
    private String name;
    private Integer age;
    private Car car;
    public Person(){
        System.out.println("Person对象产生");
    }
    public Person(String name,Car car){
        this.name=name;
        this.car=car;
        System.out.println("Person的参构造方法:"+name+car);
    }
    public void setAge(Integer age) {
        this.age = age;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Integer getAge() {
        return age;
    }
    public String getName() {
        return name;
    }
    public Car getCar() {
        return car;
    }
    public void setCar(Car car) {
        this.car = car;
    }
    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", car=" + car +
                '}';
    }
    public void init(){
        System.out.println("初始化init()");
    }
    public void destroy(){
        System.out.println("销毁destroy()");
    }
}

创建配置文件

建议命名: applicationContext.xml
建议位置:src\main\resources目录下
<?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">
    <!--
    id 和 name 可以同时存在,作为bean的标识
    class添加的应该是class的全路径
    范围scope: singleton(默认值) 单例  prototype 多例
    lazy-init:在scope默认值时有效 false默认值,不延迟创建,即在启动时候就创建对象.
                                 true 迟初始化,在用到对象的时候才会创建对象.
    在Person类中添加初始化方法和销毁方法:    init-method="init-class-name"   destroy-method="destroy-class-name"
    -->
    <bean id="personId"
          name="personName"
          init-method="init"
          destroy-method="destroy"
          class="com.wei.bean.Person"> </bean>
</beans>

测试用例

位置:test\java\com.wei.demo目录下创建类CreateTest1.class
package com.wei.demo;

import com.wei.bean.Person;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class CreateTest1 {
    //使用静态工厂创建对象
    @Test
    public void test1(){
        ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext-Create.xml");
        Person person=applicationContext.getBean("PersonFactory",Person.class);
        System.out.println(person);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值