前提条件:idea配置好jdk和maven
第一步,idea->file->new project打开如下对话框,选择maven,勾选create from archetype复选框,在原型列表点选maven-archetype-quickstart
第二步,pom文件增加spring依赖,初始只需加入如下一个依赖即可,idea会按照依赖传递自动下载所需要得依赖
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.13.RELEASE</version>
</dependency>
第三步,src->main下新建resources文件夹,右键文件夹Mark Directory as Resources Root,将其设置为根资源文件夹
第四步,新建spring配置文件applicationContext.xml文件,spring依赖导入成功后,可以使用idea自动生成:右键单击resources文件夹,new->xml configration file->spring config
项目环境创建完毕,可以开始写spring代码了
两种方式初始化spring容器,1、使用xml配置文件,2、使用java配置类。对应的spring上下文类分别是ClassPathXmlApplicationContext 和 AnnotationConfigApplicationContext
使用xml配置文件方式时 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" 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"> <context:component-scan base-package="com"/> </beans>
使用Java配置类初始化spring容器
/**
* @author : ccf0537
* @date : 2020/11/24 17:02
*/
@Configuration
@ComponentScan(basePackages = "com") public class ApplicationContextConfig { }
package com.controller; import com.config.ApplicationContextConfig; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.stereotype.Component; /** * Hello world! * */ @Component public class App { public static void main( String[] args ) { //使用java配置类初始化spring容器,此时不需要applicationContext.xml文件的存在,此种方式可以完全不需要任何xml配置 ApplicationContext applicationContext = new AnnotationConfigApplicationContext(ApplicationContextConfig.class); //使用xml配置文件初始化spring容器,指定配置文件相对类路径的位置,根资源文件夹名称resources不需要写 // ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); UserController userController = (UserController) applicationContext.getBean("userController"); userController.getUserList(); } }