相关疑难解决方法(0)

什么是'spring-boot-starter`罐子?

在Spring Boot中,有一些关于模式的罐子 spring-boot-starter.所有这些罐子都不包含任何包装.它们的用途是什么?

在Maven POM中,添加了以下依赖项:

  • org.springframework.boot:弹簧引导启动的Web
  • org.springframework.boot:弹簧引导起动器
  • org.springframework.boot:弹簧引导启动安全

哪些Spring Boot罐子我真的需要在这些罐子里使用这些功能?我的项目没有任何依赖管理.我的项目是一个使用Spring Security的Spring MVC应用程序.

java spring maven spring-boot

42
推荐指数
1
解决办法
3万
查看次数

如何减少Spring内存占用

我想问你如何(或IF)可以减少Spring框架的RAM占用空间.

我创建了一个简单的helloworld应用程序来演示这个问题.只有两个类和context.xml文件:

  • Main - 使用main方法的类
  • Test - 用于模拟某些"工作"的类(无限循环中的printig Hello)

context.xml 只包含这个:

<context:component-scan base-package="mypackage" />
Run Code Online (Sandbox Code Playgroud)

测试类只包含调用的metod init,在构造后调用:

@Component
public class Test{

    @PostConstruct
    public void init() {
        Thread t = new Thread(new Runnable() {

            @Override
            public void run() {
                try {
                    while (true) {
                        System.out.println("Hello " + Thread.currentThread().getName());
                        Thread.sleep(500);
                    }
                } catch (InterruptedException ex) {
                    ex.printStackTrace();
                }
            }
        });
        t.start();
    } 
}
Run Code Online (Sandbox Code Playgroud)

我准备了两个场景,在这两个场景中,main方法只包含一行.

在第一个场景中,main方法执行此操作:(new Test()).init(); App在没有Spring的情况下工作,仅消耗aprox.8MB的RAM.

在第二个场景中,main方法包含以下内容:new ClassPathXmlApplicationContext(new String[]{"spring/context.xml"}); 因此,应用程序通过Spring容器初始化并消耗aprox.45MB内存!

有没有办法如何减少(在最好的情况下完全摆脱)这个额外的内存?到目前为止,我无法找到任何合适的解决方案.

我不介意启动时是否有额外的内存消耗 - 这很好,但在那之后,我需要我们的应用程序来减少它.

(这个问题背后的故事有点复杂,但这对我来说现在是核心问题.)

谢谢

java ram spring

12
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×2

spring ×2

maven ×1

ram ×1

spring-boot ×1