利用Maven创建Spring项目

Spring框架的构建步骤
在上一篇中我们讲了如何配置maven以及如何创建一个maven项目,这篇博文则介绍如何利用maven创建一个Spring项目
如何利用eclipse创建maven项目
首先,我们在上一个创建的项目基础上,对pom.xml 进行编辑:
首先,设置jdk版本,也是jar的加入

<!-- jdk加载插件 -->
  <build>
	<plugins>
		<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-compiler-plugin</artifactId>
			<configuration>
			<source>1.8</source>
			<target>1.8</target>
			</configuration>
		</plugin>
	</plugins>
</build>

然后需要加入Spring的maven依赖
博主使用的是spring所需核心jar包下载
我们不需要下载,只需要选择我们需要的版本,然后将其注入的xml文件写入pom.xml即可
在这里插入图片描述
在这里插入图片描述
在引入依赖后,我们来测试一个对象是否可以由spring来来构建
我们首先创建spring的配置文件
在这里插入图片描述
container.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"
    xmlns:tx="http://www.springframework.org/schema/tx"
    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 
        http://www.springframework.org/schema/tx 
        http://www.springframework.org/schema/tx/spring-tx.xsd">
		<!-- 配置要管理的bean -->
		<bean name="stu" id="stu" class="com.java.demo.Student"></bean>
</beans>

然后我们创建一个实体类Student.java
在这里插入图片描述
TestStudent.java

package com.java.demo;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class TestStudent {
    
    

	public static void main(String[] args) {
    
    
		// TODO Auto-generated method stub
		//Student stu=new Student();
		//实例化spring容器放到spring中存储,xml是一个工厂,吧容器中需要管理的bean实例存储到map集合中
		ApplicationContext ctx=new ClassPathXmlApplicationContext("container.xml");//需要一个参数获取sping配置的路径
		//Map<String,Object>就是key对应bean的id或name  value就是class属性值反射生成的对象
		
	}

}

注意,在spring中有个坑,就是我们在创建了有参构造函数后还需要创建一个无参构造函数,否则会报错。
那么如何获取容器中创建的对象呢

		System.out.println(ctx.getBean("stu"));//根据id来拿
		System.out.println(ctx.getBean("stun"));//根据name来拿

两者获取到的都是同一个类对象

猜你喜欢

转载自blog.csdn.net/pengxiang1998/article/details/113001328