FMDB_news
所属分类:数值算法/人工智能
开发工具:Objective-C
文件大小:0KB
下载次数:0
上传日期:2017-02-21 08:10:36
上 传 者:
sh-1993
说明: FMDB数据库 缓 存 ,数据库保 存 新闻。新闻 缓 存 至数据库。断网查看新闻。
(FMDB database cache, the database stores news. The news is cached to the database. Cut off the network to view the news.)
文件列表:
FMDB_news/ (0, 2017-02-21)
FMDB_news/FMDB_news.xcodeproj/ (0, 2017-02-21)
FMDB_news/FMDB_news.xcodeproj/project.pbxproj (37859, 2017-02-21)
FMDB_news/FMDB_news.xcodeproj/project.xcworkspace/ (0, 2017-02-21)
FMDB_news/FMDB_news.xcodeproj/project.xcworkspace/contents.xcworkspacedata (154, 2017-02-21)
FMDB_news/FMDB_news/ (0, 2017-02-21)
FMDB_news/FMDB_news/AppDelegate.h (268, 2017-02-21)
FMDB_news/FMDB_news/AppDelegate.m (2506, 2017-02-21)
FMDB_news/FMDB_news/Assets.xcassets/ (0, 2017-02-21)
FMDB_news/FMDB_news/Assets.xcassets/AppIcon.appiconset/ (0, 2017-02-21)
FMDB_news/FMDB_news/Assets.xcassets/AppIcon.appiconset/Contents.json (585, 2017-02-21)
FMDB_news/FMDB_news/Base.lproj/ (0, 2017-02-21)
FMDB_news/FMDB_news/Base.lproj/LaunchScreen.storyboard (1664, 2017-02-21)
FMDB_news/FMDB_news/Base.lproj/Main.storyboard (1575, 2017-02-21)
FMDB_news/FMDB_news/DataBase.h (844, 2017-02-21)
FMDB_news/FMDB_news/DataBase.m (4790, 2017-02-21)
FMDB_news/FMDB_news/Info.plist (1331, 2017-02-21)
FMDB_news/FMDB_news/Model/ (0, 2017-02-21)
FMDB_news/FMDB_news/Model/DynamicModel.h (549, 2017-02-21)
FMDB_news/FMDB_news/Model/DynamicModel.m (192, 2017-02-21)
FMDB_news/FMDB_news/Model/NewsDetailModel.h (317, 2017-02-21)
FMDB_news/FMDB_news/Model/NewsDetailModel.m (200, 2017-02-21)
FMDB_news/FMDB_news/NewsDetailController.h (269, 2017-02-21)
FMDB_news/FMDB_news/NewsDetailController.m (7145, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/ (0, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/AFNetworking/ (0, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/AFNetworking/AFHTTPSessionManager.h (19805, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/AFNetworking/AFHTTPSessionManager.m (14823, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/AFNetworking/AFNetworkReachabilityManager.h (8068, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/AFNetworking/AFNetworkReachabilityManager.m (9805, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/AFNetworking/AFNetworking.h (1599, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/AFNetworking/AFSecurityPolicy.h (5900, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/AFNetworking/AFSecurityPolicy.m (12991, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/AFNetworking/AFURLRequestSerialization.h (22823, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/AFNetworking/AFURLRequestSerialization.m (50612, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/AFNetworking/AFURLResponseSerialization.h (12238, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/AFNetworking/AFURLResponseSerialization.m (27085, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/AFNetworking/AFURLSessionManager.h (30165, 2017-02-21)
FMDB_news/FMDB_news/ThirdFramework/AFNetworking/AFURLSessionManager.m (55123, 2017-02-21)
... ...
# FMDB_news
数据库缓存,数据库保存新闻。新闻缓存至数据库。FMDB使用,FMDB存储新闻
[GitHub: https://github.com/Zws-China/FMDB_news](https://github.com/Zws-China/FMDB_news)
# PhotoShoot
![image](https://github.com/Zws-China/.../blob/master/FMDB.gif)
# How To Use
```ruby
-(void)initDataBase{
// 获得Documents目录路径
NSString *documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
// 文件路径
NSString *filePath = [documentsPath stringByAppendingPathComponent:@"newsSql.sqlite"];
NSLog(@"%@",filePath);
// 实例化FMDataBase对象
_db = [FMDatabase databaseWithPath:filePath];
[_db open];
// 初始化数据表
NSString *newsSql = @"CREATE TABLE IF NOT EXISTS 'news' ('cellTitle' VARCHAR(255),'source' VARCHAR(255),'imageUrl' VARCHAR(255),'newsUrl' VARCHAR(255),'newsID'VARCHAR(255)PRIMARY KEY) ";
[_db executeUpdate:newsSql];
NSString *newsDetailSql = @"CREATE TABLE IF NOT EXISTS 'newsDetail' ('newsUrl' VARCHAR(255)PRIMARY KEY,'dataContent' VARCHAR(255)) ";
[_db executeUpdate:newsDetailSql];
[_db close];
}
#pragma mark - 接口
- (void)addNews:(DynamicModel *)dynamicModel {
[_db open];
[_db executeUpdate:@"INSERT INTO news(cellTitle,source,imageUrl,newsUrl,newsID)VALUES(?,?,?,?,?)",dynamicModel.cellTitle,dynamicModel.source,dynamicModel.imageUrl,dynamicModel.newsUrl,dynamicModel.newsID];
[_db close];
}
/*
- (void)deleteNews:(DynamicModel *)dynamicModel {
[_db open];
[_db executeUpdate:@"DELETE FROM news WHERE newsID = ?",dynamicModel.newsID];
[_db close];
}
- (void)updateNews:(DynamicModel *)dynamicModel {
[_db open];
[_db executeUpdate:@"UPDATE 'news' SET cellTitle = ? WHERE newsID = ? ",@"修改的名称",dynamicModel.newsID];
// [_db executeUpdate:@"UPDATE 'news' SET person_age = ? WHERE person_id = ? ",@(person.age),person.ID];
// [_db executeUpdate:@"UPDATE 'news' SET person_number = ? WHERE person_id = ? ",@(person.number + 1),person.ID];
[_db close];
}
*/
- (NSMutableArray *)getAllNews {
[_db open];
NSMutableArray *dataArray = [[NSMutableArray alloc] init];
FMResultSet *res = [_db executeQuery:@"SELECT * FROM news"];
while ([res next]) {
DynamicModel *model = [[DynamicModel alloc] init];
model.cellTitle = [res stringForColumn:@"cellTitle"];
model.source = [res stringForColumn:@"source"];
model.imageUrl = [res stringForColumn:@"imageUrl"];
model.newsUrl = [res stringForColumn:@"newsUrl"];
model.newsID = [res stringForColumn:@"newsID"];
[dataArray addObject:model];
}
[_db close];
return dataArray;
}
#pragma mark - 新闻详情
- (void)addNewsDetail:(NewsDetailModel *)newsDetailModel {
[_db open];
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:newsDetailModel.dataContent options:NSJSONWritingPrettyPrinted error:nil];
NSString *jsonStr = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
[_db executeUpdate:@"INSERT INTO newsDetail(newsUrl,dataContent)VALUES(?,?)",newsDetailModel.newsUrl,jsonStr];
[_db close];
}
- (NSDictionary *)getNewsDetailWithNewsUrl:(NSString *)newsUrl {
[_db open];
FMResultSet *set = [_db executeQuery:@"SELECT * FROM newsDetail"];
while ([set next]) {
NSString *str = [set stringForColumn:@"newsUrl"];
if ([newsUrl isEqualToString:str]) {
NSString *jsonStr = [set stringForColumn:@"dataContent"];
NSData *jsonData = [jsonStr dataUsingEncoding:NSUTF8StringEncoding];
NSError *err;
NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:&err];
if(err) {
return nil;
}
return dic;
}
}
[_db close];
return nil;
}
```
近期下载者:
相关文件:
收藏者: