返回顶部
首页 > 资讯 > 后端开发 > Python >使用JavaConfig代替xml实现Spring配置操作
  • 361
分享到

使用JavaConfig代替xml实现Spring配置操作

2024-04-02 19:04:59 361人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录JavaConfig代替xml实现spring配置简单实体类JavaConfig配置类测试类脱离xml用JavaConfig配置Spring情况一情况二JavaConfig代替x

JavaConfig代替xml实现Spring配置

简单实体类


package indi.stitch.pojo;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Component
public class User {
    private String name;
    public String getName() {
        return name;
    }
    @Value("Stitch")
    public void setName(String name) {
        this.name = name;
    }
    @Override
    public String toString() {
        return "User{" +
                "name='" + name + '\'' +
                '}';
    }
}

@Component注解将实体类交给Spring容器托管,成为一个SpringBean组件

JavaConfig配置类


package indi.stitch.config;
import indi.stitch.pojo.User;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
@Configuration
@ComponentScan("indi.stitch.pojo")
public class BeanConfig {
    @Bean
    public User getUser() {
        return new User();
    }
}
  • @Configuration注解代表这个类为Bean的配置类,相当于xml配置文件,本质上也是一个Component
  • @ComponentScan注解限定了配置类的扫描范围
  • @Bean表示被注册的Bean,相当于xml配置文件中的bean标签

测试类


import indi.stitch.config.BeanConfig;
import indi.stitch.pojo.User;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class MyTest {
    public static void main(String[] args) {
        ApplicationContext context = new AnnotationConfigApplicationContext(BeanConfig.class);
        User user = context.getBean("getUser", User.class);
        System.out.println(user.getName());
    }
}

使用JavaConfig的方式实现配置,需要使用AnnotationConfigApplicationContext类通过传入配置类的字节码对象获取Spring配置上下文,在此上下文中可以获取被@Bean标签标记的Bean对象,传入的参数为被@Bean标签标记的方法的方法名。

测试结果

在这里插入图片描述

脱离xml用JavaConfig配置Spring

情况一

配置类中类名添加 @Configuration 注解,同时提供一个方法返回一个Bean实例,且这个方法添加注解 @Bean ,就可以由Spring管理此对象

如下所示:

User.java( Bean )


public class User {
    private String name;
    public String getName() {
        return name;
    }
    @Value("Juyss") //注入name属性的值
    public void setName(String name) {
        this.name = name;
    }
    @Override
    public String toString() {
        return "User{" +
                "name='" + name + '\'' +
                '}';
    }
}

SprinGConfig.java( Java配置类 )


@Configuration //表明此类为Spring配置类
public class SpringConfig {
    @Bean //返回一个实例,注册为一个Bean由Spring管理
    public User getUser(){
        return new User();
    }
}

ConfTest.java(测试类)


public class ConfTest {
    @Test
    public void Test(){
        ApplicationContext context = new AnnotationConfigApplicationContext(SpringConfig.class);
        User user = context.getBean("getUser", User.class); //第一个参数需与方法名一致
        System.out.println(user);
    }
}

测试类运行结果得到:

User{name='Juyss'}

情况二

配置类中类名上添加注解@Configuration表明为Spring配置类,添加注解@ComponentScan("ClassPath")表明扫描的包路径

然后在需要被Spring管理的Bean类名添加注解@Component

User.java ( Bean )


@Component //表明这个类注册为Bean组件
public class User {
    private String name;
    public String getName() {
        return name;
    }
    @Value("Juyss") //注入name属性的值
    public void setName(String name) {
        this.name = name;
    }
    @Override
    public String toString() {
        return "User{" +
                "name='" + name + '\'' +
                '}';
    }
}

SpringConfig.java ( Java配置类 )


@Configuration //表明为Spring配置类
@ComponentScan("com.juyss.pojo") //扫描此包下的所有已注册的Bean
public class SpringConfig {
}
ConfTest.java ( 测试类 )
public class ConfTest {
    @Test
    public void Test(){
        ApplicationContext context = new AnnotationConfigApplicationContext(SpringConfig.class);
        User user = context.getBean("user", User.class); //第一个参数为类名首字母小写
        System.out.println(user);
    }
}

测试类运行结果得到:

User{name='Juyss'}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: 使用JavaConfig代替xml实现Spring配置操作

本文链接: https://lsjlt.com/news/136871.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 使用JavaConfig代替xml实现Spring配置操作
    目录JavaConfig代替xml实现Spring配置简单实体类JavaConfig配置类测试类脱离xml用JavaConfig配置Spring情况一情况二JavaConfig代替x...
    99+
    2024-04-02
  • Spring实战之XML与JavaConfig的混合配置详解
    前言之前提到了关于Spring的显示配置方式有两种,一种是基于XML配置,一种是基于JavaConfig的方式配置。对于这两种配置方式并不是互斥关系,相反,他们两能够相互融合,有效的搭配完成Spring的bean注入。这里分别介绍如何在Ja...
    99+
    2023-05-31
    spring javaconfig xml
  • spring使用JavaConfig进行配置的方法
    JavaConfig,是在 Spring 3.0 开始从一个独立的项目并入到 Spring 中的。JavaConfig 可以看成一个用于完成 Bean 装配的 Spring 配置文件...
    99+
    2024-04-02
  • 使用spring怎么对JavaConfig进行配置
    今天就跟大家聊聊有关使用spring怎么对JavaConfig进行配置,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1、规则规则一:@Configuration注解我们在定义Java...
    99+
    2023-05-31
    spring javaconfig ava
  • 使用Spring开启@Async异步方式(javaconfig配置)
    目录Spring开启@Async异步(javaconfig配置)应用场景创建AsyncTask创建spring配置AppConfig测试Spring @Async DemoSprin...
    99+
    2024-04-02
  • 如何使用java代码代替xml实现SSM
    本篇内容介绍了“如何使用java代码代替xml实现SSM”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!SpringBoot推荐开发者使用Ja...
    99+
    2023-06-21
  • 使用java代码代替xml实现SSM教程
    目录1.在IDEA中创建一个普通的maven项目2.添加Spring配置3.添加SpringMVC配置5.测试5.1创建HelloController类5.2创建HelloContr...
    99+
    2024-04-02
  • 使用Spring Aop如何配置xml
    本篇文章给大家分享的是有关使用Spring Aop如何配置xml,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。AOP的配置方式有2种方式:xml配置和AspectJ注解方式。今...
    99+
    2023-05-31
    springaop xml
  • Spring Boot入门(09):如何使用MyBatis的XML配置方式实现MySQL的增删改查操作?
    1. 前言🔥         想要快速高效地开发Java Web应用程序,选择使用Spring Boot和MyBatis无疑是明智之举。本篇文章将教你使用MyBatis的XML配置方式,结合MySQL数据库,实现常见的增删改查操作,让你的应...
    99+
    2023-08-31
    intellij-idea spring boot Mybatis Mybatis的XML书写
  • Spring框架 XML配置事务控制的步骤操作
    目录基于 XML 的声明式事务控制1.环境搭建2.创建 spring 的配置文件并导入约束3.准备数据库表和实体类4.业务层接口与实现类5.数据访问层接口与实现类6.配置c3p0数据...
    99+
    2024-04-02
  • spring boot 使用profile来分区配置的操作
    spring boot 使用profile来分区配置 很多时候,我们项目在开发环境和生成环境的环境配置是不一样的,例如,数据库配置,在开发的时候,我们一般用测试数据库,而在生产环境的...
    99+
    2024-04-02
  • spring基于注解配置实现事务控制操作
    目录spring注解配置实现事务控制1、导入相关依赖2、创建spring配置类3、创建JdbcConfig数据源配置类4、创建TransactionConfig事务配置类5、创建jd...
    99+
    2024-04-02
  • 详解Spring中使用xml配置bean的细节
    整理总结刚学的关于spring的xml配置bean的知识。 在ApplicationContext.xml文件中使用bean节点配置bean,bean的属性id在IOC容器中必须是唯一的。<bean id="helloWorld" c...
    99+
    2023-05-31
    spring xml bean
  • Spring@Value使用获取配置信息为null的操作
    一、项目背景 1、介绍: 最近在springboot项目中需要做一个阿里云OSS图片上传功能点,将OSS图片上传代码提取到公共工具类中,为了方便其他模块调用。 2、问题介绍 在公共工...
    99+
    2024-04-02
  • C#实现利用Linq操作Xml文件
    目录实践过程效果代码实践过程 效果 代码 public partial class Form1 : Form { public Form1() { ...
    99+
    2022-12-29
    C# Linq操作Xml C# 操作Xml C# Linq Xml
  • 使用spring与hibernate实现配置文件
    这篇文章给大家介绍使用spring与hibernate实现配置文件,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。spring整合hibernate 有两种方式 1、注解方式 2、xml方式实现注解方式实现:applic...
    99+
    2023-05-31
    spring hibernate
  • Springboot使用Spring Data JPA实现数据库操作
    SpringBoot整合JPA 使用数据库是开发基本应用的基础,借助于开发框架,我们已经不用编写原始的访问数据库的代码,也不用调用JDBC(Java Data Base Connec...
    99+
    2024-04-02
  • 使用Spring AOP实现用户操作日志功能
    目录我使用Spring AOP实现了用户操作日志功能需求分析功能实现1、 需要一张记录日志的 Log 表导出的 sql 如下:2、我使用的是 Spring Boot 所以需要引入 s...
    99+
    2024-04-02
  • Spring中xml配置文件的基础使用方式详解
    目录1. xml配置文件的读取1.1 通过类路径读取配置文件1.2 通过文件系统绝对路径读取配置文件1.3使用BeanFactory接口读取配置文件2.带参构造对象的创建(const...
    99+
    2024-04-02
  • Spring使用@Value注解与@PropertySource注解加载配置文件操作
    1、@Value注解简介 Spring框架提供的@Value注解可以将外部的值动态注入到Bean中,@Value注解使用在字段、构造器参数和方法参数上。 @Value可以指定属性取值...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作