首页 > 数据库 >Spring-Boot框架配置YAML整合Redis代替properties文件------Spring-Boot框架

Spring-Boot框架配置YAML整合Redis代替properties文件------Spring-Boot框架

时间:2024-02-03 16:02:11浏览次数:25  
标签:框架 Spring boot System springframework Boot println org ioc

package com.example.boot3.controller;
 
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
 
@RestController
public class HelloController
{
    @Autowired
    private StringRedisTemplate redisTemplate;
 
    @GetMapping("/hello")
    public String Hello(){
        return "Hello";
    }
    @GetMapping("/incr")
    public String incr(){
        Long haha = redisTemplate.opsForValue().increment("haha");
        return "增加后的为" + haha;
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.2.1</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>boot3</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>boot3</name>
    <description>boot3</description>
    <properties>
        <java.version>17</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.2.16</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
 
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
 
</project>
server:
  port: 9999
spring:
  servlet:
    multipart:
      max-file-size: 10MB
  data:
    redis:
      host: 192.168.92.129
      port: 6379
      database: 0
      password: abc123
      lettuce:
        pool:
          max-active: 8
          max-wait: -1ms
          max-idle: 8
          min-idle: 0
      timeout: 5000
<?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 id="user" class="com.example.boot3.bean.User" scope="prototype">
        <property name="id" value="1"></property>
        <property name="name" value="Jack"></property>
    </bean>
    <bean id="cat" class="com.example.boot3.bean.Cat">
        <property name="id" value="2"></property>
        <property name="name" value="Rose"></property>
    </bean>
</beans>
package com.example.boot3;
 
import com.example.boot3.bean.*;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
 
@ComponentScan("com.example")//改变包扫描路径
@SpringBootApplication(scanBasePackages = "com.example.boot3")//手动指定扫描包位置
public class Boot3Application
{
    public static void main(String[] args) {
        var ioc = SpringApplication.run(Boot3Application.class, args);
//        for (String name : ioc.getBeanDefinitionNames()) {
//            System.out.println(name);
//        }
//        Object user = ioc.getBean("user");
//        Object user1 = ioc.getBean("user");
//        System.out.println(user == user1);
//        System.out.println(ioc.getBean("fastsqlException"));
        for (String s : ioc.getBeanNamesForType(Cat.class)) {
            System.out.println(s);
        }
        for (String s : ioc.getBeanNamesForType(Dog.class)) {
            System.out.println(s);
        }
        for (String s : ioc.getBeanNamesForType(User.class)) {
            System.out.println(s);
        }
        Object pig = ioc.getBean("pig");
        System.out.println(pig);
//        for (String s : ioc.getBeanNamesForType(Sheep.class)) {
//            System.out.println(s);
//        }
        Object sheep = ioc.getBean(Sheep.class);
        System.out.println(sheep);
    }
}
127.0.0.1:6381> shutdown
not connected> quit
[root@localhost ~]# redis-cli -a abc123 -p 6382 -c --raw
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
127.0.0.1:6382> shutdown
not connected> quit
[root@localhost ~]# redis-server /myredis/redis6379.conf 
[root@localhost ~]# redis-cli -a abc123 -p 6379 --raw
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
127.0.0.1:6379> get haha
12

标签:框架,Spring,boot,System,springframework,Boot,println,org,ioc
From: https://blog.51cto.com/u_16322355/9569793

相关文章

  • 1.Prism框架介绍
    什么是Prism:1.WPFPrism是一个用于构建模块化、可扩展和可重用的WPF应用程序的框架。它基于MVVM模式,提供了一种简单且灵活的方式来管理复杂的WPF应用程序。2.Prism框架提供了一些核心概念,包括模块化开发、依赖注入、命令模式、导航和事件聚合等。它还提供了一些实用工具和类来简......
  • 手撸代码:从零开始的 AlexNet 图像分类(PyTorch框架)
    摘要:本文在PyTorch框架下搭建了AlexNet,并在CIFAR10上完成了图片分类。同时,更正了一些原论文中的小错误(如:输入图像尺寸)。由于CIFAR10没有验证集,本文将训练集的10%当作验证集。完整代码已上传至GitHub:https://github.com/TiezhuXing01/AlexNet_in_PyTorch1.引入库i......
  • springboot多环境开发pofiles
    不同环境下,不同yml配置,分隔不同环境1.单文件使用 使用---分隔2.多文件使用由application.yml中指定使用 分组  组激活......
  • springboot属性配置
    启动jar包时,配置“属性”(端口......)1.命令行参数方式--键=值 2.环境变量方式  3.外部配置文件方式 优先级:项目yml<jar包目录下yml<环境变量<命令行参数......
  • 国产深度学习框架 OneFlow 是否靠谱?
    OneFlow框架的设计目标是实现:一个使用多机多卡就像使用单机单卡一样容易的深度学习框架。相关:如何评价最近一流科技开源的深度学习框架OneFlow?王慧文收购国产AI框架OneFlow,为中国版ChatGPT疯狂抢人抢基建......
  • 在Linux服务器上部署Mirai框架的QQ机器人
    友情提示:本篇内容的步骤只是回忆内容,只能作为大致参考,不一定准确,因为我没有再一次验证这些步骤的可行性。下载mcl-installer前往这里,找到对应的Linux版本的mcl-installer。找到以后这里有两种可以将mcl-installer下载到服务器:一是先点击要下载的那个版本,然后会跳出下载链接和路......
  • 5个.NET开源且强大的快速开发框架(帮助你提高生产效率)
    中台Admin(Admin.Core)中台Admin(Admin.Core)是前后端分离权限管理系统,前端UI基于Vue3开发,后端Api基于.NET8.0开发。支持多租户、接口权限、数据权限、动态Api、任务调度、OSS文件上传、滑块拼图验证、国内外主流数据库自由切换和动态高级查询。集成统一认证授权、事件总线、......
  • SpringBoot项目支持https的nacos地址
    问题描述Causedby:sun.security.validator.ValidatorException:PKIXpathbuildingfailed:sun.security.provider.certpath.SunCertPathBuilderException:unabletofindvalidcertificationpathtorequestedtarget atsun.security.validator.PKIXValidator.doBuild(......
  • AIStudio框架汇总及介绍
    长风破浪会有时,直挂云帆济沧海AIStudio.框架汇总开源版名称地址描述GiteeGitHub博客Wpf画板框架:示意图,流程图,SFC顺序控制图,逻辑图,思维导图,画板,Block基础功能,可编程画板(预览)等GiteeGitHub博客权限框架Wpf客户端:大屏,系统管理,流程中心,通用查询,代码生成,文......
  • 鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之TimePicker组件
    鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之TimePicker组件一、操作环境操作系统: Windows10专业版、IDE:DevEcoStudio3.1、SDK:HarmonyOS3.1+编辑二、TimePicker组件TextClock组件通过文本将当前系统时间显示在设备上。支持不同时区的时间显示,最高精度到秒级。子组件无。接口TimePic......