Spring03:第一个spring程序

第一个spring程序

1、导入jar包

注 : spring 需要导入commons-logging进行日志记录。 我们利用maven,他会自动下载对应的依赖项。

导入webmvc的包,会包含spring-aop,spring-core,spring-beans等包

<dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-webmvc</artifactId>
   <version>5.1.10.RELEASE</version>
</dependency>

2、编写一个实体类

public class User {

   private String username;

   public User() {
       System.out.println("user无参构造方法");
  }

   public void setUsername(String username) {
       this.username = username;
  }

   public void show(){
       System.out.println("username="+ username );
  }

}

3、编写spring配置文件,这里命名为beans.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">

   <!--bean就是java对象 , 由Spring创建和管理-->
     <bean id="user" class="com.kuang.pojo.User">
       <!--注意: set注入,这里的username并不是属性名 , 而是set方法后面的那部分,首字母小写-->
       <property name="username" value="Tom"/>
   </bean>
</beans>

4、测试

@Test
public void test(){
   //解析beans.xml文件
   ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
   //getBean : 参数即为spring配置文件中bean的id .
   User user = (User) context.getBean("user");
   user.show();
}

结果发现,在 new ClassPathXmlApplicationContext("beans.xml")之后,beans.xml中的对象都会被创建

IOC创建对象的方式

通过无参构造方法创建对象

<bean id="user" class="com.kuang.pojo.User">
    <property name="username" value="kuangshen"/>
</bean>

通过有参构造方法创建对象

<!-- 根据index参数下标设置 -->
<bean id="user" class="com.kuang.pojo.User">
   <!-- 下标从0开始 -->
   <constructor-arg index="0" value="kuangshen2"/>
</bean>
<!-- 根据参数名字设置 -->
<bean id="user" class="com.kuang.pojo.User">
   <!-- 注意:这里的username是构造方法中形参名称,不是属性名称 -->
   <constructor-arg name="username" value="kuangshen2"/>
</bean>
<!-- 根据参数类型设置 -->
<bean id="user" class="com.kuang.pojo.UserT">
   <constructor-arg type="java.lang.String" value="kuangshen2"/>
</bean>

Spring配置

别名

alias 设置别名 , 为bean设置别名 , 可以设置多个别名

<!--设置别名:在获取Bean的时候可以使用别名获取-->
<alias name="user" alias="userNew"/>

Bean的配置

<!--
   id 是bean的标识符,要唯一,
   如果没有配置id,name就是默认标识符
   如果配置id,又配置了name,那么name是别名
   name可以同时设置多个别名,可以用逗号,分号,空格隔开
   
   class是bean的全限定名=包名+类名
-->
<bean id="user" name="uer2 u2,3;u4" class="com.kuang.pojo.User">
   <property name="name" value="Spring"/>
</bean>

import

可以通过import引入其它spring配置文件。团队的合作通过import来实现。

<import resource="{path}/beans.xml"/>
posted @ 2021-04-29 21:27  yub  阅读(55)  评论(0)    收藏  举报