我们有一个基于Java的Web应用程序。 出于我们的内部目的,动物名称作为AnimalName_GenusName存储在数据库中。
例如:Dog_Canis
我们使用Dog_Canis
这样的信息发送到“呼叫”网页。
public class Animal {
private String name;
private Long id;
private String genusName;
private String species;
//.......
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGenusName() {
return genusName;
}
public void setGenusName(String genusName) {
this.genusName = genusName;
}
//......
}
现在,我们希望将信息显示到调用网页,并删除Genus名称。
要求是有一组模块来显示信息,以及一组模块,用于在保存时删除附加到它的属名。
我们计划在将信息发送到呼叫页面时删除过滤器并删除信息。我们可以通过定义匹配的URL或Servlet来定义过滤器中涉及的模块。
这是正确的方法,对于10个其他列的100000数据执行此操作的成本是多少?
还有其他更好的方法吗?我想知道在动物类中使用不同的方法来提供剥离的信息。但这意味着所有模块都必须重新考虑,而不是一个不错的选择。
答案 0 :(得分:2)
更好的方法是将“AnimalName”和“GenusName”存储在不同的列中,因为它们是根本不同的数据。这可能是很多初期投资,但如果您的应用程序将会存在很长时间,那么它是值得的。
由于您不打算这样做,我会尝试尽可能靠近数据库进行剥离。离您获得的数据库越远,您就越有可能需要复制工作(例如,如果您编写新客户端)。
除了你,你可以确定性能影响。我们没有足够的有关您的代码或硬件的信息。