目 录
摘 要 I
Abstract II
1 绪论 1
1.1 选题背景及意义 1
1.2 研究现状 1
1.2.1 教育系统发展现状 1
1.2.2 手机的应用市场发展现状 1
1.2.3 Android平台介绍 3
1.2.4 Android管理学生信息的意义 5
1.3.3 开发的环境及开发工具介绍 6
1.3 研究主要内容 6
2 相关技术介绍 7
2.1 Android的系统框架 7
2.2 Android的特性 7
2.3 Android的开发环境的搭建 8
2.4 Android的数据库 9
3 学生信息管理及沟通系统系统设计 13
3.1 学生信息管理及沟通系统概述 13
3.1.1开展该系统的原因 13
3.1.2 基本目标 13
3.2 系统需求分析 13
3.2.1 性能需求 14
3.2.2 功能需求 14
3.3 系统功能分析 14
3.4 可行性分析 15
3.4.1操作可行性 15
3.4.2技术可行性 15
3.4.3社会可行性 15
3.5 方案选择 15
3.6 任务概述 17
3.7 数据库的设计 17
3.8 系统流程图 20
4 学生信息管理及沟通系统功能实现 21
4.1 项目建立 21
4.2 类的创建 21
4.3.1 用户登录界面 22
4.3.2 用户注册界面 24
4.3.3 学生用户界面 24
4.3.4 教师用户界面 27
4.3.5 管理员界面 28
4.4 小结 30
5 学生信息管理及沟通系统系统测试 31
5.1 测试环境介绍 31
5.2 功能模块测试 31
5.3 系统性能分析 34
5.4 小结 34
总 结 35
致 谢 36
参考文献 37
3 学生信息管理及沟通系统系统设计
3.1 学生信息管理及沟通系统概述
3.1.1开展该系统的原因
由于现今的学生信息管理非常繁琐,需要管理人员耗费大量的工作时间,效率很低,因此为了提高工作效率,减轻工作的负担,决定改变开发学生信息管理及沟通系统软件。
3.1.2 基本目标
开发这个学生信息管理及沟通系统,为学校的管理员提供了便捷的学生信息管理条件,方便的进行查询,增删。此外,也允许学生,教师查看信息,及时的了解学校的动态。
学生界面实现:查询个人信息,查看系统公告,全体学生的成绩查询,开设课程查询和考试安排查询。
教师界面实现:查询个人信息,查看系统公告,全体学生的成绩查询,全体学生的信息查询。
管理员界面实现:查询学生信息,查询老师信息,录入学生成绩并可查询,添加教师,学生用户,发布公告,安排考试,课程管理。
3.2 系统需求分析
学生信息管理及沟通系统是一个学校不可缺少的一部分,它的内容对于学校的管理来说是至关重要的,因此,学生信息管理及沟通系统应该能够为用户提供充足人事管理的信息和查询手段,但一直以来人们使用传统的人工方式管理信息,这种管理方式存在着许多缺点,诸如效率低,保密性差等,而且时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。作为计算机应用的一部分,使用计算机对学生信息信息进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生信息管理的效率,也是学校的科学化、信息化管理,与世界接轨的重要条件。因此,开发一个学生信息管理及沟通系统是很有必要的,具有其特有的技术意义和管理意义。
3.2.1 性能需求
作为一个数据库系统,首先,系统要有很好的稳定性和可维护性,使得系统易于维护;其次,系统要有很好的可扩展性,能够在现有框架不变的前提下增加新的业务逻辑,进行二次开发;第三,系统要有很好的可移植性,在Windows系统下开发,适合觉得部分用户,以满足不同用户的需求;第四,系统要考虑使用该系统的所有用户的实际操作水平,尽可能使界面简洁、美观、操作简单。
3.2.2 功能需求
本软件由登陆界面需要分别进入学生界面,教师界面,管理员界面。
学生界面实现:查询个人信息,查看系统公告,全体学生的成绩查询,开设课程查询和考试安排查询。
教师界面实现:查询个人信息,查看系统公告,全体学生的成绩查询,全体学生的信息查询。
管理员界面实现:查询学生信息,查询老师信息,录入学生成绩并可查询,添加教师,学生用户,发布公告,安排考试,课程管理。
3.3 系统功能分析
该系统的开发目标是实现学生信息管理的方便化,信息化,规范化,能够使管理员便捷的管理,用户方便的查看自己需要的信息。所以,具体的功能要求如下:
学生信息的管理: 可存储学生的基本信息,可进行添加,删除操作。
教师信息的管理:可存储教师的基本信息,可添加,可删除,可查询学生的信息。
课程的管理:可查询当前开设的课程,可添加,可删除。
成绩的管理:可查询学生成绩,可添加,可删除。
考试安排的管理:可为相关的专业考试安排具体的考试地址,可删除。
消息发布机制的管理:可发布学生,教师相关的信息,供学生,教师注意,可删除,可添加。
登陆账号密码的管理:可根据相应注册的帐号密码以及对应的角色选择,三者共同确定,登录相应的应用界面,可添加,可删除。
package com.briup.systemofstudent;
import java.sql.Date;
import android.app.Activity;
import android.content.Intent;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CompoundButton;
import android.widget.EditText;
import android.widget.Switch;
import android.widget.Toast;
import android.widget.CompoundButton.OnCheckedChangeListener;
public class AddUserManActivity extends Activity{
private EditText nameEt,sexyEt,nationalEt,
majorEt,class1Et,idEt,dateEt,cardEt,addressEt;
private Button save,exit;
private SQLiteDatabase db;
private MySQLiteDataBaseHelper helper;
private Switch switcher;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_adduser);
switcher=(Switch)findViewById(R.id.switcher);
OnCheckedChangeListener listener=new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){
}
else{
startActivity(new Intent(AddUserManActivity.this,UserManActivity.class));
}
}
};
switcher.setOnCheckedChangeListener(listener);
nameEt=(EditText)findViewById(R.id.name);
sexyEt=(EditText)findViewById(R.id.sexy);
nationalEt=(EditText)findViewById(R.id.national);
majorEt=(EditText)findViewById(R.id.major);
class1Et=(EditText)findViewById(R.id.class1);
idEt=(EditText)findViewById(R.id.id);
dateEt=(EditText)findViewById(R.id.date);
cardEt=(EditText)findViewById(R.id.card);
addressEt=(EditText)findViewById(R.id.address);
helper =new MySQLiteDataBaseHelper(this, "account.db", null, 1);
db=helper.getReadableDatabase();
save=(Button)findViewById(R.id.save);
save.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
String name=nameEt.getText().toString();
String sexy=sexyEt.getText().toString();
String national=nationalEt.getText().toString();
String major=majorEt.getText().toString();
String class1=class1Et.getText().toString();
String id=idEt.getText().toString();
String date=dateEt.getText().toString();
String card=cardEt.getText().toString();
String address=addressEt.getText().toString();
insert(db, name,sexy,national,major,class1,id,date,card,address);
Toast.makeText(AddUserManActivity.this, "添加成功", Toast.LENGTH_SHORT).show();
AddUserManActivity.this.finish();
}
});
exit=(Button)findViewById(R.id.exit);
exit.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Toast.makeText(AddUserManActivity.this, "已退出", Toast.LENGTH_SHORT).show();
AddUserManActivity.this.finish();
}
});
}
public void mysave(View view){
String name=nameEt.getText().toString();
String sexy=sexyEt.getText().toString();
String national=nationalEt.getText().toString();
String major=majorEt.getText().toString();
String class1=class1Et.getText().toString();
String id=idEt.getText().toString();
String date=(String)(dateEt.getText().toString());
String card=cardEt.getText().toString();
String address=class1Et.getText().toString();
insert(db, name, sexy, national, major, class1, id, date, card, address);
Toast.makeText(this,"成功", Toast.LENGTH_SHORT).show();
AddUserManActivity.this.finish();
}
public void insert(SQLiteDatabase db,String name,String sexy,
String national,String major,String class1,String id,String date,String card,String address){
db.execSQL("insert into tb_student(_id,name,sexy,national,major,class,birthday,card,address) values(?,?,?,?,?,?,?,?,?)",
new String[]{id,name,sexy,national,major,class1,date,card,address});
}
}