Spring框架入门操作

编程入门 行业动态 更新时间:2024-10-24 06:31:53

Spring<a href=https://www.elefans.com/category/jswz/34/1770644.html style=框架入门操作"/>

Spring框架入门操作

学了几个框架之后,学习Spring框架的时候就很简单了,这篇博客先说一下spring框架的操作步骤,他的IOC、DI、AOP在以后的文章中再分享。

如何创建一个spring工程,请大家耐心操作。

1.导入jar包 

在一个maven工程中的pom.xml文件中导入 

spring-core   spring-beans  spring-context  commons-logging
<!-- .springframework/spring-core --><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>5.0.8.RELEASE</version></dependency><!-- .springframework/spring-beans --><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>5.0.8.RELEASE</version></dependency><!-- .springframework/spring-context --><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.0.8.RELEASE</version></dependency><!--  --><dependency><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>1.2</version></dependency>

2.创建spring的配置文件

在resources包下创建.xml文件

文件头如下

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns=""xmlns:xsi=""xmlns:mvc=""xmlns:context=""xmlns:mc=""xsi:schemaLocation="://www.springframework/schema/beans/spring-beans.xsd://www.springframework/schema/context/spring-context.xsd://www.springframework/schema/mvc/spring-mvc.xsd">
</beans>

3.使用spring容器获取对象

创建一个实体类

package com.jie;public class HelloWorld {private String name;private int age;private String address;public void sayHello(){System.out.println("Hello World!!!!");}public HelloWorld(String name, int age) {this.name = name;this.age = age;}public HelloWorld(String name, int age,String address) {this.name = name;this.age = age;this.address=address;}public void setAddress(String address) {this.address = address;}public String getAddress() {return address;}public void setName(String name) {this.name = name;}public String getName() {return name;}public void setAge(int age) {this.age = age;}public int getAge() {return age;}public HelloWorld() {}
}

在.xml文件中配置

<!--
id 当前类的名字  唯一的  不可重复
class  类的全限定名称
scorp  默认:singleton(单例模式)  prototype多例模式  request  session
--><bean class="com.jie.HelloWorld" name="helloWorld2 world hello" id="helloWorld" scope="prototype"></bean><bean id="hw" class="com.jie.HelloWorld" scope="prototype">
<!--property 给指定属性赋值第一种方法:通过setter方法注入DI依赖注入--><!--<property name="name" value="浪子一秋"></property>--><!--<property name="age" value="21"></property>--><!--第二种方法:通过有参 !前提是要有有参构造函数index 通过参数的索引注入type  通过参数的类型注入--><!--<constructor-arg index="0" value="一叶知秋"></constructor-arg>--><!--<constructor-arg index="1" value="22"></constructor-arg>--><!--经过测试,这个是按照类型顺序赋值--><constructor-arg type="int" value="111"></constructor-arg><constructor-arg type="java.lang.String" value="啧啧啧"></constructor-arg><constructor-arg type="java.lang.String" value="郑州"></constructor-arg></bean>

上面的两个bean配置的是同一个类,是为了后年的测试,里面的测试不再单独写了,不明白的再问

测试类

 /**
 * Spring IOC 控制反转  控制权的反向转移
 * 原来:谁用水创建  new 类名();
 * 现在:提前创建好所需要的对象,当使用时,不是自己创建,而是从容器中获取对象
 *
 * 使用步骤:
 * 1.导入jar包     spring-core   spring-beans  spring-context  commons-logging
 * 2.创建spring的配置文件
 * 3.使用spring容器获取对象
 *
 * 类  :单例模式  多例模式
 * 默认情况下是单例模式
 * 在配置文件中可以设置为其他模式
 *
 * DI依赖注入
 * 原始:通过有参构造直接给属性赋值 或者是通过无参+set方法赋值
 * 现在:spring容器中
 */

package com.jie;import org.junit.Test;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class TestHello {@Testpublic void test1(){//谁使用,谁创建HelloWorld world=new HelloWorld();HelloWorld world1=new HelloWorld();System.out.println(world);//com.jie.HelloWorld@2077d4deSystem.out.println(world1);//com.jie.HelloWorld@7591083d//不同对象world.sayHello();}@Testpublic void test2(){//spring 从spring容器中获取对象//读取spring配置文件,创建bean工厂BeanFactory factory=new ClassPathXmlApplicationContext("/applicationContext.xml");//从bean工厂中获取bean对象//通过id查找HelloWorld world=(HelloWorld)factory.getBean("helloWorld");HelloWorld world1=(HelloWorld)factory.getBean("helloWorld");//通过类型得到对象//HelloWorld world2=factory.getBean(HelloWorld.class);//通过name查找HelloWorld world3=(HelloWorld)factory.getBean("helloWorld2");//通过id+类查找(官方推荐)HelloWorld world4=factory.getBean("hw",HelloWorld.class);System.out.println(world);//com.jie.HelloWorld@5a1c0542System.out.println(world1);//com.jie.HelloWorld@5a1c0542//同一个对象  推断为单例模式world.sayHello();}
}

 

更多推荐

Spring框架入门操作

本文发布于:2024-03-10 14:02:59,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1728182.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:框架   入门   操作   Spring

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!