在我开始免责声明之前,我应该添加一些免责声明,我对Cocoa开发和C一般都比较新。
然而,我确实有Aaron Hillegass的'Cocoa Programming for Mac OS X 3rd edition'的副本,我正在使用它作为基础,如果有人有副本我在页面上使用'AmaZone'示例346作为模板和基础。
我尝试开发一个小型客户端应用程序,它接受搜索字符串,然后相应地显示数据库中的结果。
数据库将包含:文件列表,文件位置,描述&创建日期,所以目前字段数和类型将保持不变。
NSURL *myURL = [NSURL URLWithString:@"http://www.myserver.com/results.php"];
NSArray *sqlResults = [[NSArray alloc] initWithContentsOfURL:myURL];
之前我曾经使用过PHP,所以我看到这个之后的当前想法就是在查询数据库的服务器上创建一个php脚本,并创建一个XML输出。
使用XML响应,只需解析它。
这样可以吗?因为任何人都可以看到任何重大陷阱,我不能。
我知道有一些数据库捆绑,我已经看过Baseten for Postgres了,但对于这个相对较新,我不想介入。
或者,如果其他人有任何其他建议和想法,他们将不胜感激。
答案 0 :(得分:2)
如果你的数据库在服务器上,那么这是一种合理的方法,而且正是苹果公司用iTunes做的事情(只有他们使用WebObjects,而不是php,原因很充分)。
如果数据库在你的Mac OS X机器上,那么你应该看看CoreData(也在Aaron的书中,在不同的章节中)。
为了改进您的示例,您应该在NSURLConnection
上使用异步方法,这将涉及查看委托协议。