文档章节

数据库增删改查模板

hlxxjava
 hlxxjava
发布于 2016/11/13 22:43
字数 450
阅读 47
收藏 0

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>

    import java.util.ArrayList;
    import java.util.List;

    import android.content.ContentValues;
    import android.content.Context;
    import android.database.Cursor;
    import android.database.sqlite.SQLiteDatabase;

    import com.template.studentinfosystem.db.StudentDBOpenHelper;
    import com.template.studentinfosystem.domain.Student;

    /**
     * 学生信息数据库的dao( data access objcet)
     * 增删改查
     */
    public class StudentDao {
        private StudentDBOpenHelper helper;

        /**
         * 只有一个有参的构造方法,要求必须传入上下文
         * @param context
         */
        public StudentDao(Context context) {
            helper = new StudentDBOpenHelper(context);
        }
        /**
         * 添加一个学生
         * @param name 姓名
         * @param sex 性别,male female
         * @return result 添加到数据库的那一行, -1添加失败
         */
        public long add(String name,String sex){
            SQLiteDatabase  db = helper.getWritableDatabase();
            //db.execSQL("insert into student (name,sex) values (?,?)", new Object[]{name,sex});
            ContentValues values =new ContentValues();
            values.put("name", name);
            values.put("sex", sex);
            long result = db.insert("student", null, values); //组拼sql语句实现的.带返回值
            db.close();//释放资源
            return result;
        }

        /**
         * 删除一个学生
         * @param name 姓名
         * @return result 删除了几行 0 代表删除失败
         */
        public int delete(String name){
            SQLiteDatabase  db = helper.getWritableDatabase();
            //db.execSQL("delete from student where name=?",new Object[]{name});
            int result = db.delete("student", "name=?", new String[]{name});
            db.close();//释放资源
            return result;
        }

        /**
         * 修改一个学生的性别
         * @param name 姓名
         * @param newsex 新的性别
         * @return 更新了几行 0更新失败
         */
        public int update(String name,String newsex){
            SQLiteDatabase  db = helper.getWritableDatabase();
            //db.execSQL("update student set sex =? where name=?",new Object[]{newsex,name});
            ContentValues values = new ContentValues();
            values.put("sex", newsex);
            int result = db.update("student", values, "name=?", new String[]{name});
            db.close();//释放资源
            return result;
        }
        /**
         * 查询学生的性别
         * @param name 学生的姓名
         * @return 学生性别 null代表学生不存在
         */
        public String find(String name){
            String sex = null;
            SQLiteDatabase  db = helper.getReadableDatabase();
            //结果集 游标
            //Cursor cursor = db.rawQuery("select sex from student where name=?", new String[]{name});
            Cursor cursor = db.query("student", new String[]{"sex"}, "name=?", new String[]{name}, null, null, null);
            boolean result = cursor.moveToNext();
            if(result){
                sex = cursor.getString(0);
            }
            cursor.close();//释放资源
            db.close();
            return sex;
        }
        /**
         * 获取全部的学生信息
         * @return
         */
        public List<Student> findAll(){
            List<Student> students =new ArrayList<Student>();
            SQLiteDatabase  db = helper.getReadableDatabase();
            //Cursor cursor = db.rawQuery("select name, sex from student", null);
            Cursor cursor =  db.query("student", new String[]{"name","sex"}, null, null, null, null, null);
            while(cursor.moveToNext()){
                String name = cursor.getString(0);
                String sex = cursor.getString(1);
                Student student = new Student();
                student.setName(name);
                student.setSex(sex);
                students.add(student);
            }
            cursor.close();
            db.close();
            return students;
        }

    }

 

© 著作权归作者所有

hlxxjava
粉丝 1
博文 7
码字总数 1481
作品 0
武汉
私信 提问
加载中

评论(0)

Fly的狐狸/jmoney

财务管理jfinal+beetl 本网站后台基于Jfinal开发,前台模板使用beetl,数据库为Mysql。 演示地址:http://www.jflyfox.com/jmoney 平台部署说明 下载jmoney项目:配置数据库文件/jmoney/src...

Fly的狐狸
2014/06/05
0
0
第二部分 DAO层设计模式

DAO设计模式: 分层操作:使项目目录清晰,便于以后的维护和拓展 1.把对数据库的操作(增删改查等)封装到一个包里(就是把Dbutils包里的方法封装到里面,当你换数据库的时候你只需要改DAO层里...

孙浩j
2017/12/03
0
0
金盆洗手/tjpcms

tjpcms官网:http://www.tjpcms.com tjpcms有什么用? 这是所有读者最核心的疑问!网上的开源框架多如牛毛,但往往讲了一大堆,读者也没搞清楚框架究竟能帮使用者做什么。tjpcms最核心的作用...

金盆洗手
2017/01/13
0
0
使用Freemarker模板自动生成代码

前言 因感概业务代码存在大量的增删改查功能,只是针对不同的表数据而已。故想有没有办法,在重复的相同代码中替换某些内容,于是按此思路搜寻,了解到有freemarker这个东西,一番学习后,特...

osc_da4rblss
2019/09/17
4
0
基于 Java 的 CMS 解决方案 - tjpcms

官网:http://www.tjpcms.com tjpcms 是一套基于 Java 的 CMS 解决方案,开源免费。其独有的实时配置增删改查的功能,是其区别于同类 cms 的最大特点,也是最大优势,极大减少了重复劳动。懂...

金盆洗手
2017/01/12
1.2W
6

没有更多内容

加载失败,请刷新页面

加载更多

君子动手不动口,阿里云喊你做云上体验官啦!

想要免费搭建云上博客?想要玩转全云端开发?想要挑战AI经典命题?想要7天进阶成为云计算专家?想要初始化你的云原生工程?快来阿里云 Hands-on Labs! Hands-on Labs 是阿里云全新推出的云上...

osc_18ydlfr7
6分钟前
16
0
CAD图纸转换成图片格式后,如何快速分享给同事?

我们常见的图片格式有PNG与JPG两种,这两种图片在很多平台上都能兼容,所以使用的几率特别高,很多办公室人员都会遇到把CAD图纸转换成PNG与JPG格式的工作。那么我们把CAD图纸转换成图片格式后...

真不莲
7分钟前
8
0
测试真的是一个无聊又没前途的岗位吗?是吗?不是吗?

同事小王:你第一份工作同事咋样?为什么离职? 测试小张:第一份工作就是测试,微软外包。别人在测试完了以后不知道干嘛,我抓紧时间看vs的源代码,抓紧时间看pheonix的源代码,抓紧时间看微...

osc_3zq7ptf4
7分钟前
13
0
怎么在电脑上进行视频截图?视频截图的简单步骤介绍

怎么在电脑上进行视频截图?小编最近在网上看到不少关于郑爽的话题文章,而不少文章都是通过视频截图的形式把她以前的影视作品截图下来,然后对她的演技和人品进行议论和评判。如果大家也想对...

玛哈菲亚
7分钟前
7
0
CAAI云课堂丨第十三期,北京交通大学人工智能研究院院长于剑开讲

     开启云端互动,CAAI带你与名师面对面。中国人工智能学会积极探索学术交流创新模式,围绕AI+学术、AI+技术以屏幕架起连接智能科技知识的桥梁,探索新型模式,开设CAAI云课堂等系列活...

osc_j5pkc521
8分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部