afinal框架的Demo

Afinal是一个android的ioc,orm框架,内置了四大模块功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通过finalActivity,我们可以通过注解的方式进行绑定ui和事件。通过finalBitmap,我们可以方便的加载bitmap图片,而无需考虑oom等问题。通过finalDB模块,我们一行代码就可以对android的sqlite数据库进行增删改查。通过FinalHttp模块,我们可以以ajax形式请求http数据。详情请通过以下网址查看。
github地址

这里的afinalDemo只包括数据库的创建,注意的表名和ID、普通的网络get请求方法
第一步:创建实体类
第二步:继承FinalActivity实例化final

package com.zhansy.myafinal;

import java.util.Date;

import net.tsz.afinal.annotation.sqlite.Id;
import net.tsz.afinal.annotation.sqlite.Table;

//创建的表名为user_test
@Table(name = "user_test")
public class User {
    private int id;
    /*//设置name为主键Id(column="name")
    @Id(column="name")*/
    private String name;
    private String email;
    private Date registerDate;
    private Double money;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public Date getRegisterDate() {
        return registerDate;
    }

    public void setRegisterDate(Date registerDate) {
        this.registerDate = registerDate;
    }

    public Double getMoney() {
        return money;
    }

    public void setMoney(Double money) {
        this.money = money;
    }

}
package com.zhansy.myafinal;

import java.util.Date;
import java.util.List;

import net.tsz.afinal.FinalActivity;
import net.tsz.afinal.FinalDb;
import net.tsz.afinal.FinalHttp;
import net.tsz.afinal.annotation.view.ViewInject;
import net.tsz.afinal.http.AjaxCallBack;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;

public class AfinalOrmDemoActivity extends FinalActivity {

    @ViewInject(id = R.id.textView)
    TextView textView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO 自动生成的方法存根
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        // 创建名为zhansy.db的数据库
        FinalDb db = FinalDb.create(this, "zhansy.db");

        User user = new User();
        user.setEmail("[email protected]");
        user.setName("探索者");
        user.setRegisterDate(new Date());
        // 保存到数据库中
        db.save(user);

        List<User> userList = db.findAll(User.class);// 查询所有的用户

        Log.e("AfinalOrmDemoActivity",
                "用户数量:" + (userList != null ? userList.size() : 0));

        // textView.setText(userList.get(0).getName()+":"+user.getRegisterDate());

        // 普通get方法
        FinalHttp fh = new FinalHttp();
        fh.get("http://www.baidu.com", new AjaxCallBack<Object>() {

            @Override
            public void onFailure(Throwable t, int errorNo, String strMsg) {
                // TODO 自动生成的方法存根
                // 加载失败的时候回调
                super.onFailure(t, errorNo, strMsg);
            }

            @Override
            public void onLoading(long count, long current) {
                // TODO 自动生成的方法存根
                textView.setText(current + "/" + count);
            }

            @Override
            public void onStart() {
                // TODO 自动生成的方法存根
                // 开始http请求的时候回调
                super.onStart();
            }

            @Override
            public void onSuccess(Object t) {
                // TODO 自动生成的方法存根
                textView.setText((CharSequence) (t == null ? "null" : t));
            }

        });

    }
}

猜你喜欢

转载自blog.csdn.net/azhansy/article/details/49329281