小编Atu*_*tul的帖子

是Spring MVC控制器单身人士吗?

我对Spring 3 MVC有疑问 @Controllers.当请求进来时,容器是否为每个请求创建一个新的控制器实例(类似于Struts 2中的Action - ThreadLocal ActionContext)或单个实例响应所有请求?默认情况下,上下文中的控制器bean单例?

Spring 3 MVC应用程序的准则/最佳实践是什么?这些设置是否可配置?应该配置?如果我的环境是一个集群环境,它会有多大变化 - 我想它不应该因为jvm /容器会有所不同 - 但是一些权威的建议会受到欢迎.

我读过Spring文档,但可能我错过了它.任何'这就是我们如何实现'答案/指针/链接将是有用的谢谢.

java spring spring-mvc

46
推荐指数
2
解决办法
4万
查看次数

管理自己记忆的班级

有效的Java:第6项:消除过时的对象引用.

一般来说,每当一个类管理自己的内存时,程序员应该警惕内存泄漏.每当释放一个元素时,元素中包含的任何对象引用都应该被清除掉.

我不认为我完全理解这种描述.

管理自己内存的类的例子是什么 - 我可以想到数组,列表,也许是地图.

任何人都可以在书中更详细地解释这个项目吗?谢谢

java memory-leaks effective-java

6
推荐指数
1
解决办法
171
查看次数

哪个更好:返回一个Response对象或一个表示其余资源的Object?

在某些书籍中,其余的API通常会返回一个Response对象,该对象包装了一些表示有效负载,状态等的其他对象.

另一方面,我看到和编写的许多API都将POJO(或称之为DTO)作为JSON返回,这是客户端使用的.

这可能是基于意见的,但我想知道在高可伸缩性环境中使用哪个更好,其中一些请求导致成功而另一些请求失败/数据未返回.

我想知道是否有更好的做法.这将有助于我设计一些API并在我的团队面前展望.但是,如果"两个人中更好的"是基于意见的话,我可以将这个问题关闭.

谢谢.

更新:其余两个API将如下所示.避免像@ Path,@ Get,@ PathParam,@ Produces等代码

public Response myCustomerObject(int id){...} 
Run Code Online (Sandbox Code Playgroud)

这将返回包含在Response对象内的Customer对象.响应也可能是错误的.

以下方法将直接返回Customer实体:

public Customer myCustomerObject(int id){...} 
Run Code Online (Sandbox Code Playgroud)

java rest

4
推荐指数
2
解决办法
6919
查看次数

提取大量的String文字是个好主意吗?

在我正在处理的遗留代码库中,有大量的String文字.其中很多都是重复的.例如,字符串"userID"用于500个地方.可能有一千种这样的文字以重复的方式使用.IntelliJ Idea静态代码分析表明我将它们提取为常量.如果IDE为我自动重构,没有我键入一行代码,我应该去吗?

通常,将许多这样的重复字符串文字提取为常量是一个好主意吗?这显然可以避免重复,提供单点访问,声明等.

但是,这些文字中的一些在访问时会出现.如果我将所有文字声明为常量(静态最终),那么所有这些文字将被加载在一起.在这种情况下,将所有这些文字声明为常量是一个好主意吗?你能提供一些指向垃圾收集的指针,在这种情况下的内存空间预防措施吗?在这种情况下使用的最佳做法是什么?

一些注意事项:我知道字符串文字被实习.所以我不会在最坏的情况下保存任何内存.此外,似乎jdk 7将这些字符串放在堆而不是permgen.我看到了夫妻 问题,像我,但觉得这是不同的.所以在这里发布.

谢谢

java string static-analysis memory-management constants

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