我有一个动态的Web项目,我正在努力将jsp/servlet应用程序从JRun迁移到Tomcat.
我收到错误:com.ibm.ivj.eab.dab.DatastoreJDBC无法解析为类型.
我有*.class文件位于com/ibm/ivj/eab/dab文件夹中(具体是我发现它们的方式).我尝试创建一个jar文件并通过"添加外部Jar"将其添加到构建路径,我还尝试添加"外部类文件夹"并指向包含所讨论的"com"目录的文件夹.
但错误仍然存在.奇怪的是,如果我开始输入包名eclipse实际上为我自动完成了这个类!(如下图).任何想法将不胜感激.也许这些类是针对一个更老的java版本编译的,这会引起麻烦?也许我需要做些什么来确保类最终在WEB-INF/lib目录中?
一世
我已经继承了一些代码,想要大家运行这个修改,我关心的是内存管理.
我们假设我有一个"基础"表单,其中包含一组打开"对话框"表单的按钮.打开对话框表单的推荐模式是什么?目前我们显示"对话框"表单(在"基本"表单代码中,单击按钮时):
ChangePasswordForm frm = new ChangePasswordForm();
frm.ShowDialog();
Run Code Online (Sandbox Code Playgroud)
然后关闭它(在"对话框"表单代码中):
private void bCancel_Click(object sender, EventArgs e)
{
this.Close();
//this.Dispose(); <-- this is what I am considering adding.
}
Run Code Online (Sandbox Code Playgroud)
我添加的Dispose理由是,我担心如果显示和关闭,每次一个很多次这种形式新形式的实例被创建和它的资源从来没有真正释放-这是正确的?此外,如果表单右上角有"关闭"X,我是否应该在FormClosed事件中调用Dispose()?
提前致谢.
我最近重构了一些代码,现在有一个静态实用程序类,其方法如下:
const int x = 1;
public static string doWork(ref DataTable dt)
{
decimal total = 0;
foreach (DataRow row in dt.Select("COST_ID = " + x))
{
decimal annual = decimal.Parse(row["Cost"].ToString());
total += decimal.Round(annual, 2);
}
return String.Format("{0:C}", total);
}
Run Code Online (Sandbox Code Playgroud)
我为了清晰起见简化了这个例子......
我可能会遇到任何不良影响这样做,并在ASP.NET应用程序背后的代码中调用doWork方法被许多用户击中?任何人都知道或有一个参考,我可以阅读有关静态方法的性能如何工作的方法?这会成为任何类型的瓶颈吗?
编辑:
是的我道歉这不是一个很好的例子,所以让我们说更像这样的事情:
const int x = 1;
public static string doWork(ref DataTable dt)
{
foreach (DataRow row in dt.Select("COST_ID = " + x))
{
row["Cost"] = 0.0;
}
}
Run Code Online (Sandbox Code Playgroud)
你说的是A)我实际上甚至不需要这里的ref,因为Datatable已经通过ref和B传递了.通过"漏斗"对单个静态方法的所有调用来完全没有达到性能.
var popup = window.open('http://twitter.com');
popup;
if ($.browser.safari && !popup) {
alert('Please allow for popups on your browser.');
}
Run Code Online (Sandbox Code Playgroud)
我今天遇到了上面的代码,第二行"popup"的原因是什么(如果有的话)?
考虑以下代码:
private XmlDocument CreateMessage(string dirtyInput)
{
XmlDocument xd = new XmlDocument();
string str = @"<Message><Request>%REQ%</Request><Message>";
str = str.Replace("%REQ%", dirtyInput);
xd.LoadXml(str);
return xd;
}
Run Code Online (Sandbox Code Playgroud)
我应该采取哪些步骤来清理/验证这个 dirtyInput 字符串(它可能来自不受信任的来源)?
编辑:
为了提供更多上下文,此 XML“消息”随后(由我)发送到第三方 Web 服务。我最关心的是减轻有人可能向我传递一个字符串的风险,该字符串可能会利用我的 XML 解析器中的漏洞,甚至可能是目标 [第三方] 端(我向其发送此消息)的解析器中的漏洞。很明显,我可以专注于特殊的 XML 字符,例如 < > & 等 - 我是否还需要担心这些字符的转义/编码形式?可能的欺骗链接中提到的 SecurityElement.Escape 方法是否足以满足此目的?