Java框架spring Boot学习笔记(七):基于构造函数的依赖注入

编写User.java

 1 package com.example.spring;
 2
 3 public class User {
 4     private String name;
 5     private Integer age;
 6     private String country;
 7
 8     public User(String name, Integer age, String country) {
 9         this.name = name;
10         this.age = age;
11         this.country = country;
12     }
13
14     public String toString() {
15         return name + " is " + age + " years old, living in " + country;
16     }
17 }

编写Beans.xml

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
 5
 6     <bean id="user" class="com.example.spring.User" >
 7         <constructor-arg name="name" type="java.lang.String" value="Jacky" />
 8         <constructor-arg name="age" type="java.lang.Integer" value="22"/>
 9         <constructor-arg name="country" type="java.lang.String" value="China"/>
10     </bean>
11
12 </beans>

编写Application.java

package com.example.spring;

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

public class Application {
    public static void main(String[] args) {
        //bean配置文件所在位置 D:\\IdeaProjects\\spring\\src\\Beans.xml
        //使用AbstractApplicationContext容器
        AbstractApplicationContext context = new ClassPathXmlApplicationContext("file:D:\\IdeaProjects\\spring\\src\\Beans.xml");
        User user = (User)context.getBean("user");
        System.out.println(user);
    }
}

运行输出

Jacky is 22 years old, living in China
时间: 2024-10-08 19:05:39

Java框架spring Boot学习笔记(七):基于构造函数的依赖注入的相关文章

Java框架spring Boot学习笔记(三):Bean的作用域

Spring 框架Bean支持以下五个作用域: 下面介绍两种作用域,singleton和protoype singleton作用域 singleton作用域为默认作用域,在同一个ioc容器内getBean是同一个bean,如果创建一个singleton作用域Bean定义的对象实例,该实例将存储在该Bean的缓存中,那么以后所有针对该 bean的请求和引用都返回缓存对象. 编写HelloWorld.java 1 package com.example.spring; 2 3 public clas

Java框架spring Boot学习笔记(十三):aop实例操作

使用aop需要在网上下载两个jar包: aopalliance.jar aspectjweaver.jar 为idea添加jar包,快捷键ctrl+shift+alt+s,打开添加jar包的对话框,将刚才下载好的jar添加进去 前置增强实例 编写TimeHandler.java 1 package com.example.spring; 2 3 public class TimeHandler { 4 public void beforTime() 5 { 6 System.out.printl

Java框架spring Boot学习笔记(十一):bean管理(注解和配置文件混合使用)

配置文件和注解混合使用 创建对象操作使用配置文件方式实现 注入属性的操作使用注解方式实现 编写BookDao.java和OrderDao.java文件 BookDao.java 1 package com.example.spring; 2 3 public class BookDao { 4 public void book(){ 5 System.out.println("Book Dao."); 6 } 7 } OrderDao.java 1 package com.exampl

Java框架spring Boot学习笔记(九):注入对象类型属性

使用set方法注入对象属性 编写UserDao.java文件 1 package com.example.spring; 2 3 public class UserDao { 4 public void print(){ 5 System.out.println("Dao print."); 6 } 7 } 编写UserService.java文件 1 package com.example.spring; 2 3 public class UserService { 4 //1.定义

Java框架spring Boot学习笔记(八):Spring相关概念

Spring是开源.轻量级.一站式框架. Spring核心主要两部分 aop:面向切面编程,扩展功能不是修改源代码实现 ioc:控制反转,比如一个类,在类里面有方法(不是静态的方法),想要调用类里面的方法,一般的方法是创建对象(new一个),通过new出来的这个对象调用方法.而使用Spring框架时,对象的创建不是通过new出来,而是交给Spring配置创建类对象.

Java框架spring Boot学习笔记(十六):操作MySQL数据库

新建一个工程,添加对数据库的支持 下载mysql驱动包 mysql-connector-java-5.1.7-bin.jar,快捷键ctrl+alt+shift+s,添加jar包到工程 编写测试文JdbcTemplateDemo.java 1 package com.jdbc; 2 3 import org.junit.Test; 4 import org.springframework.jdbc.core.JdbcTemplate; 5 import org.springframework.j

Java框架spring Boot学习笔记(十四):log4j介绍

功能 日志功能,通过log4j可以看到程序运行过程的详细信息. 使用 导入log4j的jar包 复制log4j的配置文件,复制到src下面   3.设置日志级别 info:看到基本信息 debug:看到更详细的信息

Spring.Net学习笔记十(打造简易的依赖注入框架)

之前我们学习里一个简易的IoC框架.今天我们接着上次的程序,实现带参数构造函数对象的实例和属性的注入 .原文地址:http://www.cnblogs.com/GoodHelper/archive/2009/11/02/SpringNet_MyDi.html 我感觉这个很有必要对应IOC框架的理解,知道注入的工作原理,对应实际的应用是很有帮助的. 我们知道可以通过反射获取类的构造函数及参数(GetConstructors方法):可以获取属性和属性的类型(GetProperties方法).通过Ac

Spring boot 学习笔记 (二)- 整合MyBatis

Spring boot 学习笔记 (二)- 整合MyBatis Spring Boot中整合MyBatis,并通过注解方式实现映射. 整合MyBatis 以Spring boot 学习笔记 (一)- Hello world 为基础项目,在pom.xml中添加如下依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter&l