欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

IDEA下——Spring入门程序

程序员文章站 2023-03-28 09:06:15
1. 创建一个Maven的项目,我的项目结构如下: 2. 在pom文件里写下需要导入的依赖: 3. 在Java文件夹下新建package,在package包下新建接口及其实现类 接口: 实现类: 4. 在resources目录下新建 文件 我们需要在spring容器的配置文件中进行注册该Bean s ......

  1. 创建一个maven的项目,我的项目结构如下:
    IDEA下——Spring入门程序
  2. 在pom文件里写下需要导入的依赖:
    <?xml version="1.0" encoding="utf-8"?>
    <project xmlns="http://maven.apache.org/pom/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"
         xsi:schemalocation="http://maven.apache.org/pom/4.0.0 
         http://maven.apache.org/xsd/maven-4.0.0.xsd">
       <modelversion>4.0.0</modelversion>
       <groupid>com.abc</groupid>
       <artifactid>01-first(spring)</artifactid>
       <version>1.0-snapshot</version>
       <build>
           <plugins>
               <plugin>
                   <groupid>org.apache.maven.plugins</groupid>
                   <artifactid>maven-compiler-plugin</artifactid>
                   <configuration>
                       <source>6</source>
                      <target>6</target>
                   </configuration>
               </plugin>
           </plugins>
       </build>
       <properties>
           <project.build.sourceencoding>utf-8</project.build.sourceencoding>
           <maven.compiler.source>10</maven.compiler.source>
           <maven.compiler.target>10</maven.compiler.target>
           <spring.version>5.1.0.release</spring.version>
       </properties>
       <dependencies>
           <dependency>
               <groupid>org.springframework</groupid>
               <artifactid>spring-beans</artifactid>
               <version>${spring.version}</version>
           </dependency>
           <dependency>
               <groupid>org.springframework</groupid>
               <artifactid>spring-core</artifactid>
               <version>${spring.version}</version>
           </dependency>
           <dependency>
               <groupid>org.springframework</groupid>
               <artifactid>spring-context</artifactid>
               <version>${spring.version}</version>
           </dependency>
           <dependency>
               <groupid>org.springframework</groupid>
               <artifactid>spring-expression</artifactid>
               <version>${spring.version}</version>
           </dependency>
           <dependency>
               <groupid>org.springframework</groupid>
               <artifactid>spring-jcl</artifactid>
               <version>${spring.version}</version>
           </dependency>
           <dependency>
               <groupid>junit</groupid>
               <artifactid>junit</artifactid>
               <version>4.12</version>
               <scope>test</scope>
           </dependency>
       </dependencies>
       <build>
           <plugins>
               <plugin>
                   <artifactid>maven-compiler-plugin</artifactid>
                   <configuration>
                       <source>1.10</source>
                       <target>1.10</target>
                   </configuration>
               </plugin>
           </plugins>
       </build>
     </project>
  1. 在java文件夹下新建package,在package包下新建接口及其实现类
    接口:
    public interface someservice { void dosome(); }
    实现类:

        public class someserviceimpl implements someservice {
        public someserviceimpl() {
            system.out.println("创建someserviceimpl对象");
        }
    
        @override
        public void dosome() {
            system.out.println("执行someserviceimpl里的dosome()方法");
        }
        }
  2. 在resources目录下新建applicationcontext.xml文件
  • 我们需要在spring容器的配置文件中进行注册该bean
  • spring使用的配置文件为xml文件,当然需要引入约束文件,一般将spring的配置文件命名为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">    
         <!--注册servcie其造价于如下代码:   someserviceimpl someservice = new someserviceimpl();
                    其底层是通过反射机制创建的someservice对象
            object someservice = class.forname("com.abc.service.someserviceimpl").newinstance();-->
                    <bean id="someservice" class="com.abc.service.someserviceimpl"/>
     </beans>
  • spring的根元素是benas显然是注册bean,子标签是bean
  • 注册:<bean id="someservice" class="com.abc.service.someserviceimpl"/>
  • id属性为了唯一确定一个对象,class属性里边应写类全名
  1. 注册完毕后我们要在测试类中获取spring容器,而获取spring容器有两种方式。
    package com.abc.service;
    import org.junit.test;
    import org.springframework.context.applicationcontext;
    import org.springframework.context.support.classpathxmlapplicationcontext;
    import org.springframework.context.support.filesystemxmlapplicationcontext;

    public class someserviceimplttest {
         // spring容器获取的两种方式
         @test
         public void test01(){
             //在类路径下加载spring配置文件
             applicationcontext ac = new classpathxmlapplicationcontext("applicationcontext.xml");
             //在当前目录的根下加载该配置文件,路径应为文件实际存放的目录
                applicationcontext ac2 = new filesystemxmlapplicationcontext
                       ("d:\\idea-workspace\\01-first(spring)\\src\\main\\resources\\applicationcontext.xml");
                system.out.println(ac2);
          }    
        @test
        public void test02() {
             // 加载spring配置文件,创建spring容器对象
             applicationcontext ac = new classpathxmlapplicationcontext("applicationcontext.xml");
             //调用spring容器的getbean方法获取carimpl,方法参数为bean的id
             someservice service = (someservice) ac.getbean("someservice");
             service.dosome();
            }
        }

spring入门程序到此就结束了