我正在开发一个多用户应用程序,它使用(postgresql-)数据库来存储其数据.我想知道我应该将多少逻辑转移到数据库中?
例如,当用户要保存他刚刚输入的一些数据时.应用程序是否应该将数据发送到数据库,数据库是否确定数据是否有效?或者应用程序应该是行中的智能部分并检查数据是否正常?
在我工作的最后一个(商业)项目中,数据库非常倾倒.没有约束,没有视图等,一切都由应用程序统治.我认为这非常糟糕,因为每次在代码中加入某个表时,都会有相同的代码来检查访问是否有效一遍又一遍地重复.
通过将逻辑转移到数据库(带有函数,triger和约束),我认为我们可以在应用程序中保存大量代码(以及许多潜在的错误).但我害怕将大部分业务逻辑放入数据库中将是一个回旋镖,有一天它将无法维护.
是否有一些现实生活中批准的指导方针?
如果发生任何错误,我试图找到从FOR循环中断/退出的方法.以下是批处理文件的内容.
@echo on
set myfile=D:\sample.txt
FOR /F "tokens=1,2 delims=," %%i in (%myfile%) do call :process "%%i"
:process
set recfile=%1%
echo %recfile%
echo "Step in Test1"
echo %errorlevel%
pause;
exit /B 0
If %errorlevel% NEQ 0 goto :fail1
:fail1
echo "Step in fail1"
pause;
exit /B 9993
:EOF
Run Code Online (Sandbox Code Playgroud)
Sample.txt有多条记录.如果发生任何错误,那么我希望退出批处理文件,而不是检查完整的sample.txt文件.例如,在语句echo%recfile%,如果我放置一些错误的命令ech%recfile%这是不正确的命令,那么我期望它应该进入fail1级别并退出.它成功地捕获了错误代码并进入fail1级别,但是在此声明之后,它再次检查sample.txt文件(下一条记录).有什么办法,如果我可以打破/退出FOR循环.
请指教.
谢谢,
我正在寻找一种在Java中将十六进制转换为ascii的方法.一个例子:
byte temps[] = new byte[4];
temps[0] = 0x74;
temps[1] = 0x65;
temps[2] = 0x73;
temps[3] = 0x74;
String foo = ..(temps);
System.out.print(foo);
Run Code Online (Sandbox Code Playgroud)
那应该输出"测试".有人有想法吗?
我感谢每一个帮助!
我正在使用Visual Studio 2008并尝试发布Web应用程序项目,但在尝试在项目中添加文件时它仍然失败.以下是该消息的示例;
发布文件夹JavaScript ...无法将"JavaScript/hoverIntent.js"添加到网站.无法添加文件'JavaScript\hoverIntent.js'.无法加密指定的文件.
这也适用于图像文件.我很遗憾为什么会这样.我应该补充一点,我使用的是Windows 7 build 7100,不确定这是否存在问题?
任何帮助非常感谢
我的意思是,而不是自己写这个:
public interface Func<TInput, TResult>
{
TResult call(TInput target) throws Exception;
}
public interface Action<T>
{
void call(T target) throws Exception;
}
Run Code Online (Sandbox Code Playgroud) WebResponse response;
try
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Timeout = 20000;
response = request.GetResponse();
request = (HttpWebRequest)WebRequest.Create(url2);
response = request.GetResponse();
}
catch(Exception ex)
{
//do something
}
finally
{
}
Run Code Online (Sandbox Code Playgroud)
应该在哪里调用response.Close()?
在尝试每个GetResponse()之后?
在最后一次GetResponse()尝试 - 一次?
我在ASP.NET中创建一个网站,希望能够拥有一个用户配置文件,可以通过最终用户ID的URL访问.唯一标识符显然是一个糟糕的选择,因为它很长并且(如果我错了,请纠正我)不是真正的URL友好.
我想知道我是否在ASP页面上创建了一个唯一的idnetifier,然后使用CRC(或类似的东西)对其进行哈希处理,如果它仍然像GUID一样独特(或者甚至是唯一的).
例如:
GUID 6f1a7841-190b-4c7a-9f23-98709b6f8848等于CRC E6DC2D44.
谢谢
有没有办法删除指定目录的所有文件和子目录而不迭代它们?
非优雅的解决方案:
public static void EmptyDirectory(string path)
{
if (Directory.Exists(path))
{
// Delete all files
foreach (var file in Directory.GetFiles(path))
{
File.Delete(file);
}
// Delete all folders
foreach (var directory in Directory.GetDirectories(path))
{
Directory.Delete(directory, true);
}
}
}
Run Code Online (Sandbox Code Playgroud) 当用户点击左上角的导航栏按钮时,我想阻止视图退出.如果我能做到这一点,我可以问他们是否想要保存他们的工作或丢弃它.
我试过这个.但它并没有给我左侧的漂亮箭头,而只是给了我一个按钮.
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil];
Run Code Online (Sandbox Code Playgroud)
我也试过了.
self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil];
Run Code Online (Sandbox Code Playgroud)
但那没用.我没有看到覆盖这个选择器的方法?别人都有运气.
干杯,约翰.
如何同时将输出打印到终端和文件?
$ perl foo.pl > foout.txt
Run Code Online (Sandbox Code Playgroud)
不允许我看到实时流程.
有没有什么方法可以实时看到输出过程并在文件的屏幕输出结束?