课程表课程设计_工程经济学课程设计

课程表课程设计_工程经济学课程设计一、需求分析由于大学上课教室分散,学生经常会忘记自己的课程或是上课的教室。这在一定程度上促进学生课表软件的开发。使其可以帮助学生记录自己的课程和对自己课程的掌握。因为手机相对笔记本电脑更加具有便携性

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、需求分析

由于大学上课教室分散,学生经常会忘记自己的课程或是上课的教室。这在一定程度上促进学生课表软件的开发。使其可以帮助学生记录自己的课程和对自己课程的掌握。因为手机相对笔记本电脑更加具有便携性,可以随时随地的打开并使用它。相对于笔记本电脑的开机并打开软件所用的时间,其需要的时间更短,所以手机端的学生课表备受学生用户的青睐。通过手机管理课表也是目前比较流行的方式,该款软件是基于Android Studio平台与SQLite数据库开发的一款学生课表软件。

UML需求用例图

课程表课程设计_工程经济学课程设计

 

 

二、系统设计

通过对Android技术的相关研究,了解Android源码实现原理以及过程,从而设计出一款能够使用的课程表。

这款课程表实现的相关内容如下:

 简洁、实用的操作界面

 课程的增加

 课程的删除

 课程的修改

 课程的查看

 

 

 

三、系统测试

1、课程的增加

添加课程时,数据由用户输入,点击确定按钮,判断数据是否合法(及用户名是否为空),合法则插入到数据库;不合法,提示课程信息有误,让用户重新输入。

课程表课程设计_工程经济学课程设计

 

 课程表课程设计_工程经济学课程设计

 

 

2、课程的删除

当用户选定一个课程时,单击课程菜单,点击删除按钮,则从数据库中删除此条记录。数据删除流程

课程表课程设计_工程经济学课程设计

 

 课程表课程设计_工程经济学课程设计

 

 

3、课程的修改

编辑课程时,输入修改后的数据,点击确定按钮,判断数据是否合法,合法,则更新数据库;不合法,则返回错误信息。

课程表课程设计_工程经济学课程设计

 

 课程表课程设计_工程经济学课程设计

 

 

4、课程的查看

 

四、系统实现

连立数据库,在数据库中创建表用来存储课程数据,其中包括课程名,星期几,课程开始结束时间,教师和教室。

 课程表课程设计_工程经济学课程设计

 

 

数据库有关代码

//从数据库加载数据
private void loadData() {
    //ArrayList<Course> coursesList = new ArrayList<>(); //课程列表
    DbHelper helper = new DbHelper(this);
    try {
        Dao<Course,Integer> sdao = helper.getDao(Course.class);
        List<Course> sl = sdao.queryForAll();
        //使用从数据库读取出来的课程信息来加载课程表视图
        for (Course course : sl) {
            createCourseView(course);
        }

    } catch (SQLException e) {
        e.printStackTrace();
    }
}

//保存数据到数据库
private void saveData(Course course) {
    try {
        Dao<Course,Integer> sdao = helper.getDao(Course.class);
        sdao.create(course);
    } catch (SQLException e) {
        e.printStackTrace();
    }

}

//更新数据到数据库
private void updataData(Course course) {
    try {
        Dao<Course,Integer> sdao = helper.getDao(Course.class);
        sdao.updateId(course,Integer.valueOf(course.getId()));
    } catch (SQLException e) {
        e.printStackTrace();
    }
}

//删除数据到数据库
private void delData(Course course) {
    try {
        Dao<Course,Integer> sdao = helper.getDao(Course.class);
        sdao.deleteById(Integer.valueOf(course.getId()));
    } catch (SQLException e) {
        e.printStackTrace();
    }
}

 

 

 

 

 

 

五、总结

对于安卓,由于平时对手机这方面很感兴趣,所以在学习的时候,带着兴趣去学习的。当然,对一门新的android开发领域,在学习过程中,比想象要困难。为了在短时间内投入到开发,完成项目。需要花大量的时间去学习,动手编程。以最快的速度学习Android,掌握开发中的各种控件的使用,理解了Android开发框架,学习SQLite数据库的使用。

这次综合课程设计是对自己的一个挑战,对于安卓,在经过努力,最终一步步都解决了。完成综合课程设计设计,让我受益匪浅,我相信它会对我以后的人生和工作起到很好的促进。

附件1

课设题目  基于Android的课程表应用软件

技术说明

技术名称

分类

 

应用与实现

1

UI设计

课程表布局,以及菜单界面,多种布局的嵌套及控件的使用,

2

SQLite数据库

课表添加与删除修改

3

Activity组件的应用

添加课表单周双周课表添加与跳转

4

ListView的使用

使用listview加载数据库课表信息进行显示

 

 

UML类图

 课程表课程设计_工程经济学课程设计

 

 

 

代码

清单文件:

<?xml version=”1.0″ encoding=”utf-8″?>
<manifest xmlns:android=”http://schemas.android.com/apk/res/android”
    xmlns:tools=”http://schemas.android.com/tools”
    package=”com.example.lcu_kcb”>
    <uses-permission android:name=”android.permission.CAMERA” />
    <uses-permission android:name=”android.permission.MOUNT_UNMOUNT_FILESYSTEMS” />
    <uses-permission android:name=”android.permission.INTERNET”/>
    <uses-permission android:name=”android.permission.WRITE_EXTERNAL_STORAGE”/>
    <application
        android:allowBackup=”true”
        android:icon=”@drawable/tb”
        android:label=”阿健课程表”
        android:supportsRtl=”true”
        android:theme=”@style/AppTheme”
        tools:ignore=”GoogleAppIndexingWarning”>

        <activity android:name=”com.example.lcu_kcb.MainActivity”>
            <intent-filter>
                <action android:name=”android.intent.action.MAIN” />

                <category android:name=”android.intent.category.LAUNCHER” />
            </intent-filter>
        </activity>
        <activity
            android:label=”新建课程”
            android:name=”com.example.lcu_kcb.AddCourseActivity”
            android:theme=”@style/Theme.AppCompat.Light.Dialog”/>

        <activity
            android:name=”com.example.lcu_kcb.Alter_Course”
            android:label=”修改课程”
            android:theme=”@style/Theme.AppCompat.Light.Dialog”/>

        <activity
            android:name=”com.example.lcu_kcb.AboutActivity”
            android:label=”关于”
            android:theme=”@style/Theme.AppCompat.Light.Dialog”/>

        <activity
            android:label=”课程详细信息”
            android:name=”com.example.lcu_kcb.MessageCourseActivity”
            android:theme=”@style/Theme.AppCompat.Light.Dialog”/>
        <activity
            android:name=”com.example.lcu_kcb.SingleWeek”
            android:label=”单周课程”
            />
        <activity
            android:name=”com.example.lcu_kcb.DoubleWeek”
            android:label=”双周课程”
            />
        <meta-data
            android:name=”com.google.android.gms.version”
            android:value=”@integer/google_play_services_version” />
        <provider
            android:name=”android.support.v4.content.FileProvider”
            android:authorities=”com.example.write.fileprovider”
            android:exported=”false”
            android:grantUriPermissions=”true”>
            <meta-data
                android:name=”android.support.FILE_PROVIDER_PATHS”
                android:resource=”@xml/provider_paths”/>
        </provider>
    </application>
</manifest>

 

布局文件:

 

1. 截图  如上:

Java原码

……

类说明

类名

说明

AboutActivity

实现关于页面类

AddcourseActivity

实现增加课程类

Alter-course

实现增加单周课程类

Course

实现课程类

DbHelper

数据库实现类

Doubleweek

实现增加双周课程类

MainActivity

实现主要页面类

MessageCourseActivity

实现课程信息类

Singleweek

实现课程视图类

SpinnerActivity

实现选择周类

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/168223.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • tfs使用教程_tf.truncated_normal

    tfs使用教程_tf.truncated_normal一、如何删除工作项   1、使用Tfs管理员账户登录   2、使用Cmd打开命令行窗口        如果是32位系统,cd”C:/ProgramFiles/MicrosoftVisualStudio10.0/Common7/IDE”        64位系统则       cd”C:/ProgramFiles(x86)/MicrosoftVisualStudio10.0/Common7/IDE”   3、使用witadmin.exedestroywi命令,按下面的方式

    2022年9月23日
    0
  • 【Redis】五种数据类型及其使用场景

    Redis数据类型五种类型与类比java的模型string–>Stringhash–>Hashmaplist–>LinkListset–>HashSetsorted_set–>TreeSetString类型redis数据存储格式redis自身是一个Map类型的存储方式,其中所有的数据都是采用key:value的形式存储我们讨论的数据类型指的是存储的数据的类型,也就是value部分的类型,key部分永远都是字符串St

    2022年4月9日
    74
  • 随笔:近期仍在流行的QQ盗号网页简析「建议收藏」

    随笔:近期仍在流行的QQ盗号网页简析「建议收藏」前言:被盗号的人们,你们的防护意识有那么弱吗?声明:本文提到的技术,仅可用作网络安全加固等合法正当目的。本文作者无法鉴别判断读者阅读本文的真实目的,敬请读者在本国法律所允许范围内阅读本文,读者一旦因非

    2022年7月3日
    228
  • IDEA- idea代码调试debug

    IDEA有很多的快捷键,下面整理Debug的快捷键,方便自己使用!

    2022年2月26日
    49
  • CTF—逆向入门题目(超详细)

    CTF—逆向入门题目(超详细)0x00:介绍以下为一些简单的Windows逆向入门题目,帮助一些刚接触逆向又无法下手的朋友,如果对安卓逆向感兴趣的朋友可以看一下我的这一篇安卓逆向入门题目哦:https://blog.csdn.net/CharlesGodX/article/details/866029580×01:题目1.Bugkuctf平台中的逆向题easy_vb:打开文件发现需要输入注册码获取flag…

    2022年6月19日
    101
  • js 判断是否字符串_js字符串查找

    js 判断是否字符串_js字符串查找整理js中可以用到的判断一个字符串中是否包含另外一个字符的方法String对象方法1、indexOfindexOf返回指定字符串在该字符中首次出现的位置,如果没有找到,则返回-1indexOf接收两个参数,第一是需要搜索的字符串,第二个参数是检索的位置,默认为0letstr=’abcde’;//例如,从str第三位开始搜索’a’console.log(str.indexOf(‘a’,2));//-1console.log(str.indexOf(‘a’))//02、

    2022年10月6日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号