当前位置: 首页 > 面试题库 >

Spring应用程序中的实用程序类-是否应该使用静态方法?

濮阳烨然
2023-03-14
问题内容

假设我有一个实用程序类DateUtil(请参见下文)。若要使用此方法,调用者方法将使用DateUtils.getDateAsString(aDate)。删除static修饰符并使DateUtil成为spring
bean(请参见DateUtilsBean)并将其注入到调用类中还是将其保持原样会更好吗?

public class DateUtils {

    public static String getDateAsString(Date date) {       
        String retValue =  "" // do something here using date parameter
        return retValue;
    }
}

春豆版本

@Component
public class DateUtilsBean {

    public String getDateAsString(Date date) {      
        String retValue =  "" // do something here using date parameter
        return retValue;
    }
}

问题答案:

我不这么认为。DateUtils类听起来像是一个纯实用程序类,它没有任何副作用,只处理输入参数。这种功能也可以保留在静态方法中。我认为您不太可能想要模拟日期帮助程序方法。



 类似资料:
  • 我正在使用SharedPref在活动之间传递字符串。我正试图使我的代码更有效,但我有一个我无法解决的问题。 MainActivity.Class中的我的代码: @override protected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(r.layout.

  • 问题内容: 我正在以正确的方式处理连接。 1. 我在应用程序中使用“hibernate”连接池。每当我从池中获得连接时,完成事务后,我就会返回池中。 2. 我已监视数据库以检查连接。我将“空闲连接”时间设置为60秒。我发现没有连接对象运行超过60秒。 我仍然经常收到此错误。而且我的Web应用程序正在停止。我每天必须重新启动tomcat。但是,我正在寻找一种永久的解决方案,而无需重新启动tomcat

  • 我想将一个Angular应用程序部署到一个Azure静态Web应用程序.构建部分工作正常,但发布错误并说它找不到构建项目:目录位置:'dist'无效。无法检测到此目录。请验证您的部署配置文件是否反映了您的存储库结构。 这是用于发布应用程序的YAML,下面是屏幕截图。 静态Web App模板 因此,似乎我们没有使用正确的发布位置,但不确定使用什么。 以下是来自管道的 YAML: 构建的安格应用程式的

  • 到目前为止,我一直认为容器技术(例如:docker)提供了所需的隔离和操作系统级虚拟化。在容器中运行的应用程序受到名称空间、cgroup、设备/selinux、功能的限制,他们无法弄清楚自己所处的主机环境。但是这种理解似乎不是100%正确的。 与wiki-OS级虚拟化一样 操作系统级虚拟化是一种操作系统范例,其中内核允许存在多个独立的用户空间实例。这些实例称为容器(LXC、Solaris容器、Do

  • 我的Android应用程序有7个片段类;一个有WebView,一个有摄像头显示在SurfaceView上,一个有谷歌地图,另一个有包含图像和文本的ListViews。 每个片段大约有15个公共静态类变量。这是糟糕的编程吗? 关于如何加速我的Android应用程序有什么提示吗?如果我把这些公共类变量移到方法和函数中,而不是把它们作为类变量,会不会对速度有很大的提高? 提前谢了。

  • 我正在使用Spring Boot,并试图使我的静态资源(CSS,JS,字体)在部署时可用。源代码可供您查看或从https://github.com/joecracko/StaticResourceError.克隆 现在我的CSS、JS和字体文件对我部署的网站不可见。 下面是我的项目目录结构: 下面是编译后的JAR的根目录:我向您保证,这些文件存在于各自的文件夹中。 以下是我看到的网络错误: 以下是