#import <UIKit/UIKit.h>
#import "T20140628024917NSNumber+Message.h"
#import "T20140628024917NSString+URLEncoding.h"
@interface T20140628024917ViewController : UITableViewController<NSURLConnectionDelegate>
@property (nonatomic,strong) NSMutableArray *listData;
//接收从服务器返回数据。
@property (strong,nonatomic) NSMutableData *datas;
// 查询所有
-(void)findAll;
@end
#import "T20140628024917ViewController.h"
@interface T20140628024917ViewController ()
@end
@implementation T20140628024917ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// 1、初始化数据
[self findAll];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
}
#pragma mark table dataSource
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return self.listData.count;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
// 1、初始化重用Cell
static NSString *reUseCell = @"reUseCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:reUseCell];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:reUseCell];
}
// 2、配置重用Cell数据
NSMutableDictionary* dict = self.listData[indexPath.row];
cell.textLabel.text = [dict objectForKey:@"Content"];
cell.detailTextLabel.text = [dict objectForKey:@"CDate"];
return cell;
}
-(void)findAll
{
NSString *strURL = [[NSString alloc] initWithFormat:@"http://127.0.0.1:8080/kujizu/test01.html"];
NSURL *url = [NSURL URLWithString:[strURL URLEncodedString]];
NSString *post = [NSString stringWithFormat:@"email=%@&type=%@&action=%@", @"<你的iosbook1.com用户邮箱>",@"JSON",@"query"];
NSData *postData = [post dataUsingEncoding:NSUTF8StringEncoding];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
[request setHTTPMethod:@"POST"];
[request setHTTPBody:postData];
NSURLConnection *connection = [[NSURLConnection alloc]
initWithRequest:request delegate:self];
if (connection) {
_datas = [NSMutableData new];
}
}
#pragma mark- NSURLConnection 回调方法
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
[_datas appendData:data];
}
-(void) connection:(NSURLConnection *)connection didFailWithError: (NSError *)error {
NSLog(@"%@",[error localizedDescription]);
}
- (void) connectionDidFinishLoading: (NSURLConnection*) connection {
NSLog(@"请求完成...");
NSDictionary* resDict = [NSJSONSerialization JSONObjectWithData:_datas options:NSJSONReadingAllowFragments error:nil];
if (resDict == nil) {
self.listData = [[NSMutableArray alloc] init];
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"错误信息" message:@"没有数据。" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil];
[alertView show];
}else{
NSNumber *resultCodeObj = [resDict objectForKey:@"ResultCode"];
if ([resultCodeObj integerValue] >=0){
self.listData = [resDict objectForKey:@"Record"];
[self.tableView reloadData];
} else {
NSString *errorStr = [resultCodeObj errorMessage];
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"错误信息" message:errorStr delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil];
[alertView show];
}
}
}
@end