xUtils DbUtils数据库

使用xUtils的DbUtils来操作数据,github地址:https://github.com/zst1303939801/xUtils

示例:

存:

     按照对象存储(大量数据使用本地数据库,小数据使用SharedPreferences)

/* 保存到本地数据库 */
	private void saveToDb() {
		LogUtils.d("WeiListenPlayingActivity",
				"###保存下载数据到数据库:栏目id:" + channelProgramInfoDomain.getChannelID() + ",栏目名字:"
						+ channelProgramInfoDomain.getChannelName() + ",栏目图片:" + channelProgramInfoDomain.getChannelPic()
						+ ",音频id:" + channelProgramInfoDomain.getProgramID() + ",音频大小:" + programTotal);
		try {
			DbUtils db = DbUtils.create(WeiListenPlayingActivity.this);
			// 存栏目表
			MyDownloadChannel myDownloadChannel = new MyDownloadChannel();
			myDownloadChannel.setChannelID(channelProgramInfoDomain.getChannelID());
			myDownloadChannel.setChannelName(channelProgramInfoDomain.getChannelName());
			myDownloadChannel.setChannelPic(channelProgramInfoDomain.getChannelPic());
			db.saveOrUpdate(myDownloadChannel);//保存和覆盖
			//存音频表
			MyDownloadProgram myDownloadProgram = new MyDownloadProgram();
			myDownloadProgram.setProgramId(channelProgramInfoDomain.getProgramID());
			myDownloadProgram.setChannelId(channelProgramInfoDomain.getChannelID());
			myDownloadProgram.setProgramName(channelProgramInfoDomain.getProgramName());
			myDownloadProgram.setProgramPlayCnt(channelProgramInfoDomain.getProgramPlayCnt());
			myDownloadProgram.setProgramUrl(channelProgramInfoDomain.getProgramURL());
			myDownloadProgram.setChannelSpace(programTotal);
			myDownloadProgram.setProgramLocal(sdTarget);
			db.save(myDownloadProgram);//自增长保存
		} catch (DbException e) {
			e.printStackTrace();
		}
	}


javaBean对象:自增长加上@Id

package com.huiting.domain.db;

import com.lidroid.xutils.db.annotation.Id;

/**
 * 我的下载音频
 * @author zst
 *
 */
public class MyDownloadProgram {
    @Id
    private int _id;//自增主键
    private String programId;//音频id
    private String channelId;//栏目id
    private String programName;//音频名字
    private long programPlayCnt;//音频播放数
    private String programUrl;//音频播放地址
    private double channelSpace;// 栏目中音频占用空间
    private String programLocal;// 下载的音频本地路径
    
    
    public String getProgramLocal() {
        return programLocal;
    }
    public void setProgramLocal(String programLocal) {
        this.programLocal = programLocal;
    }
    public String getChannelId() {
        return channelId;
    }
    public void setChannelId(String channelId) {
        this.channelId = channelId;
    }
    public long getProgramPlayCnt() {
        return programPlayCnt;
    }
    public void setProgramPlayCnt(long programPlayCnt) {
        this.programPlayCnt = programPlayCnt;
    }
    public String getProgramId() {
        return programId;
    }
    public void setProgramId(String programId) {
        this.programId = programId;
    }
    public String getProgramName() {
        return programName;
    }
    public void setProgramName(String programName) {
        this.programName = programName;
    }
    
    public String getProgramUrl() {
        return programUrl;
    }
    public void setProgramUrl(String programUrl) {
        this.programUrl = programUrl;
    }
    public double getChannelSpace() {
        return channelSpace;
    }
    public void setChannelSpace(double channelSpace) {
        this.channelSpace = channelSpace;
    }
    
    
}

------------------

package com.huiting.domain.db;

import com.lidroid.xutils.db.annotation.Id;
import com.lidroid.xutils.db.annotation.NoAutoIncrement;

/**
 * 我的下载栏目名
 * 
 * @author zst
 *
 */
public class MyDownloadChannel {
    @Id 
    private String channelID;// 栏目id
    private String channelPic;// 栏目图片
    private String channelName;// 栏目名字
    
    public String getChannelID() {
        return channelID;
    }

    public void setChannelID(String channelID) {
        this.channelID = channelID;
    }

    public String getChannelPic() {
        return channelPic;
    }

    public void setChannelPic(String channelPic) {
        this.channelPic = channelPic;
    }

    public String getChannelName() {
        return channelName;
    }

    public void setChannelName(String channelName) {
        this.channelName = channelName;
    }
}







取:

     按照对象整体来取的

/* 初始化数据 */
	private void initData() {
		//取出本地数据库的值
		DbUtils db = DbUtils.create(getActivity());
		List<MyDownloadChannel> myDownloadChannels = null;
		try {
			myDownloadChannels = db.findAll(MyDownloadChannel.class);//去除对象所有值
			LogUtils.d("MineMyWeiListenDownloadFragment", "取出下载栏目列表"+myDownloadChannels);
		} catch (DbException e) {
			e.printStackTrace();
		}
		
		if(myDownloadChannels == null || myDownloadChannels.size() <= 0 ) {
			tvNoData.setVisibility(View.VISIBLE);
		}else {
			listView.setVisibility(View.VISIBLE);
			
			myDownloadAlbumListViewAdapter = new MyDownloadAlbumListViewAdapter(getActivity());
			listView.setAdapter(myDownloadAlbumListViewAdapter);
			myDownloadAlbumListViewAdapter.setAllList(myDownloadChannels);
			myDownloadAlbumListViewAdapter.notifyDataSetChanged();
		}
	}
其它知识点:

1、待续....

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Beluga_白鲸

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值