package com.andbase.demo.activity; import java.util.List; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.TextView; import com.ab.activity.AbActivity; import com.ab.view.titlebar.AbTitleBar; import com.andbase.R; import com.andbase.demo.dao.UserInsideDao; import com.andbase.demo.model.LocalUser; import com.andbase.demo.model.Stock; import com.andbase.global.MyApplication; /** * 名称:DBOne2OneActivity * 描述:一对一关联 * @author 还如一梦中 * @date 2011-12-13 * @version */ public class DBOne2OneActivity extends AbActivity { private MyApplication application; //定义数据库操作实现类 private UserInsideDao userDao = null; private TextView sourseData = null; private TextView resultData = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setAbContentView(R.layout.db_show); AbTitleBar mAbTitleBar = this.getTitleBar(); mAbTitleBar.setTitleText(R.string.db_one2one_name); mAbTitleBar.setLogo(R.drawable.button_selector_back); mAbTitleBar.setTitleBarBackground(R.drawable.top_bg); mAbTitleBar.setTitleTextMargin(10, 0, 0, 0); mAbTitleBar.setLogoLine(R.drawable.line); application = (MyApplication)abApplication; Button insertBtn = (Button)this.findViewById(R.id.insertBtn); Button queryBtn = (Button)this.findViewById(R.id.queryBtn); Button deleteBtn = (Button)this.findViewById(R.id.deleteBtn); sourseData = (TextView)this.findViewById(R.id.sourseData); resultData = (TextView)this.findViewById(R.id.resultData); //初始化数据库操作实现类 userDao = new UserInsideDao(DBOne2OneActivity.this); //测试数据 final LocalUser mLocalUser = new LocalUser(); mLocalUser.setuId("99"); mLocalUser.setName("测试内容"); Stock mStock = new Stock(); mStock.setuId("99"); mStock.setText1("关联内容"); mLocalUser.setStock(mStock); insertBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //保存 //显示插入的数据 sourseData.setText("插入数据:"); sourseData.append("\nlocal_user{"); sourseData.append("\nuId:"+mLocalUser.get_id()); sourseData.append(",name:"+mLocalUser.getName()); sourseData.append(",\nstock:{"); sourseData.append("uId:"+mLocalUser.getStock().getuId()); sourseData.append(",text1:"+mLocalUser.getStock().getText1()); sourseData.append("}\n}"); //(1)获取数据库 userDao.startWritableDatabase(false); //(2)执行查询 long id = userDao.insert(mLocalUser); //(3)关闭数据库 userDao.closeDatabase(); } }); queryBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { queryData(); } }); deleteBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //保存 //(1)获取数据库 userDao.startWritableDatabase(false); //(2)执行查询 userDao.deleteAll(); //(3)关闭数据库 userDao.closeDatabase(); } }); } public void queryData(){ //查询出结果检查是否成功了 userDao.startReadableDatabase(); List<LocalUser> mLocalUserList = userDao.queryList(); userDao.closeDatabase(); resultData.setText("查询结果为:"); if(mLocalUserList==null || mLocalUserList.size()==0){ resultData.append("查询结果为:0"); }else{ for(LocalUser localUser:mLocalUserList){ Stock stock = localUser.getStock(); resultData.append("\nlocal_user{\n_id:"+localUser.get_id()+",uId:"+localUser.getuId()+",name:"+localUser.getName()); if(stock!=null){ resultData.append("\n,stock{_id:"+stock.get_id()+",uId:"+stock.getuId()+",text1:"+stock.getText1()+"}"); } resultData.append("\n}"); resultData.append("\n-----------------------"); } } } }