Android课程设计阿点

基于Android平台的学生信息管理系统1

一、系统需求分析1

二、系统设计2

2.1系统模块设计2

2.2系统总体设计2

2.3系统数据库设计2

(学生信息表)2

(课程信息表)2

(成绩信息表)3

三、系统详细设计与实现3

3.1主界面3

3.2学生信息界面5

3.3课程信息界面10

3.4成绩信息界面14

四、系统测试17

4.1测试17

4.2测试结果17

五、体验心得18

附件Java主要源代码19

基于Android平台的学生信息管理系统

一、系统需求分析

随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。面对庞大的信息量需要有学生管理系统来提高学生管理工作的效率。通过这样的系统可以做到信息的规范管理、科学统计和快速查询、修改、增加、删除等,从而减少管理方面的工作量。

本系统主要用于学校学生信息管理,总体任务是实现学生信息关系的系统化、规范化和自动化,其主要任务是用计算机对学生各种信息进行日常管理,如查询、修改、增加、删除。

开发学生信息管理系统手机客户端旨在方便管理学生信息,使同学android智能手机就可以管理学生信息,真正做到互联网的全方位覆盖。管理学生信息系统适用于具有android智能手机的用户,在使用本软件后,学生信息管理将更加方便快捷。

1.2用例分析

1.3数据逻辑模型

二、系统设计

2.1系统模块设计

根据对系统的需求分析,本系统将分为3个模块:

l学生信息:

管理学生的基本信息,包括个人信息的添加、修改、删除。

l课程信息:

管理课程的基本信息,包括课程信息的添加、修改和删除。

l成绩信息:

管理学生的选课的成绩信息,包括成绩的登记与修改。

2.2系统总体设计

学生信息管理系统E-R图

2.3系统数据库设计

(学生信息表)

字段名

数据类型

长度

主键

索引

外键

可空

说明

sncm

int

9

学号

sname

Varchar

20

学生姓名

ssex

Vachar

10

性别

sage

varchar

年龄

sphone

11

手机号

(课程信息表)

cnum

varchar(10)

课程编码

cname

课程名称

credit

Smallint

学分

(成绩信息表)

score

分数

三、系统详细设计与实现

3.1主界面

运行程序后会进入主界面,主界面可以选择进入学生信息模块、课程信息模块以及成绩信息模块(直接点击进行跳转),方便操作,程序的主要功能一目了然。

主要代码

android:id="@+id/students"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignParentTop="true"

android:layout_centerHorizontal="true"

android:layout_marginTop="115dp"

android:text="学生信息"/>

android:id="@+id/home_xinxi"

android:layout_marginTop="40dp"

android:text="学生成绩管理系统"

android:textAppearance="android:attr/textAppearanceLarge"/>

android:id="@+id/cs"

android:layout_alignLeft="@+id/courses"

android:layout_below="@+id/courses"

android:layout_marginTop="36dp"

android:text="成绩信息"/>

android:id="@+id/courses"

android:layout_alignLeft="@+id/students"

android:layout_below="@+id/students"

android:layout_marginTop="30dp"

android:text="课程信息"/>

protectedvoidonCreate(BundlesavedInstanceState){

//TODOAuto-generatedmethodstub

super.onCreate(savedInstanceState);

setContentView(R.layout.student_layout);

setTitle("学生信息管理");

search=(Button)this.findViewById(R.id.search_student_button);

search_text=(EditText)this.findViewById(R.id.to_search_student);

listView=(ListView)findViewById(R.id.student_listview);

add_student=(Button)this.findViewById(R.id.add_student);

delete_student=(Button)this.findViewById(R.id.delete_student);

db=newMyDB(StudentsActivity.this);

updatelistview();

listView.setOnItemClickListener(newOnItemClickListener(){

publicvoidonItemClick(AdapterView<>parent,Viewview,

intposition,longid){

ListViewmyListView=(ListView)parent;

HashMapitem=(HashMap)myListView.getItemAtPosition(position);

popview(item,"modify");//添加弹出窗口

}

});

search.setOnClickListener(newOnClickListener(){

publicvoidonClick(Viewv){

3.2学生信息界面

学生信息界面主要显示学生的信息,可以在此界面对学生的信息进行查询、添加、删除和修改。

添加时直接点击添加,会弹出添加界面,进行添加即可

查询时搜索学号即可查询信息

删除时输入学号进行删除

修改时点击信息会弹出界面,直接进行修改即可

android:id="@+id/nono"

android:orientation="horizontal">

android:id="@+id/lll"

android:layout_width="100dp"

android:layout_height="40dp"

android:text="搜索学号:"/>

android:id="@+id/to_search_student"

android:layout_width="160dp"

android:ems="10"

android:inputType="number"/>

android:id="@+id/search_student_button"

android:text="查询"/>

android:id="@+id/delete_student"

android:layout_weight="0.79"

android:text="删除"/>

android:id="@+id/add_student"

android:text="添加"/>

android:id="@+id/stu_head"

android:id="@+id/student_view_snum"

android:layout_width="80dp"

android:layout_height="30dp"

android:text="学号"/>

android:id="@+id/student_view_sname"

android:layout_width="50dp"

android:text="姓名"/>

android:id="@+id/student_view_ssex"

android:layout_width="30dp"

android:text="性别"/>

android:id="@+id/student_view_sage"

android:text="年龄"/>

android:id="@+id/student_view_sphone"

android:text="电话"/>

publicvoidAddStudent(Studentstudent){

Stringsql="insertintoStudents(Snum,Sname,Ssex,Sage,Sphone)values(,,,,)";

Object[]bindArgs={student.getSnum(),student.getSname(),student.getSsex(),student.getSage(),student.getSphone()};

mydb=this.dBhelper.getWritableDatabase();

mydb.execSQL(sql,bindArgs);

publicvoiddelStudents(Stringsnumber){

SQLiteDatabasedb=this.dBhelper.getWritableDatabase();

Stringsql="deletefromStudentswhereSnum=";//删students表中的某个学生

Object[]bindArgs={snumber};

db.execSQL(sql,bindArgs);

try{

sql="deletefromCSwhereSnum=";//删CS成绩表中该学生的全部成绩

}catch(Exceptione){

//TODO:handleexception

publicvoiddelALLStudents(){

Stringsql="deletefromStudents";//删students表中的某个学生

Object[]bindArgs={};

sql="deletefromCS";//删CS成绩表中该学生的全部成绩

publicvoidupdateStudent(Studentstudent){

Stringsql="updateStudentssetSname=,Ssex=,Sage=,Sphone=whereSnum=";

Object[]bindArgs={student.getSname(),

student.getSsex(),student.getSage(),student.getSphone(),student.getSnum()};

publicListfindALLStudent(){

Stringsql="select*fromStudentsorderbySnumasc";

String[]selectionArgs={};

mydb=this.dBhelper.getReadableDatabase();

Cursorcursor=mydb.rawQuery(sql,selectionArgs);

Liststudents=newArrayList();

while(cursor.moveToNext()){

Studentstudent=newStudent(cursor.getString(0),cursor.getString(1),

cursor.getString(2),cursor.getInt(3),cursor.getString(4));

students.add(student);

returnstudents;

publicStudentfindStudent(Stringsnumber){

Stringsql="select*fromStudentswhereSnum=";

String[]selectionArgs={snumber};

if(cursor.moveToFirst()){

returnnewStudent(cursor.getString(0),cursor.getString(1),

returnnull;

3.3课程信息界面

课程信息界面可以查看课程信息,进行课程编码、课程名称、课程学分的增删改查。

添加课程信息:过程和学生信息的一样

删除课程信息

修改课程信息

android:id="@+id/ccc"

android:text="搜索课程编码:"/>

android:id="@+id/to_search_Course"

android:ems="10"/>

android:id="@+id/search_course_button"

android:id="@+id/delete_course"

android:id="@+id/add_course"

android:id="@+id/course_view_cnum"

android:layout_width="108dp"

android:text="课程编码"/>

android:id="@+id/course_view_cname"

android:layout_width="112dp"

android:text="课程名称"/>

android:id="@+id/course_view_credit"

android:layout_width="56dp"

android:text="学分"/>

publicvoidAddCourse(Coursecourse){

Stringsql="insertintoCourses(Cnum,Cname,Ccredit)values(,,)";

Object[]bindArgs={course.getCnum(),course.getCname(),course.getCcredit()};

publicvoiddelCourse(Stringcnumber){

Stringsql="deletefromCourseswhereCnum=";

Object[]bindArgs={cnumber};

sql="deletefromCSwhereCnum=";

publicvoiddelALLCourse(){

Stringsql="deletefromCourses";

sql="deletefromCS";

publicvoidupdateCourse(Coursecourse){

Stringsql="updateCoursessetCname=,Ccredit=whereCnum=";

Object[]bindArgs={course.getCname(),course.getCcredit(),course.getCnum()};

3.4成绩信息界面

成绩界面可以查看学生的成绩,学生的成绩以学号+课程编码+分数的形式显示。同样的,在这个界面同样可以对学生的成绩信息进行增删改查。

增加学生成绩信息;

删除学生成绩信息;

修改学生成绩信息;

android:id="@+id/llllbn"

android:id="@+id/bfgbfd"

android:text="学号+课程编码:"/>

android:id="@+id/to_search_CS_S"

android:ems="5"

android:id="@+id/to_search_CS_C"

android:ems="5"/>

android:id="@+id/search_cs_button"

android:id="@+id/delete_cs"

android:id="@+id/add_cs"

android:id="@+id/cs_head"

android:id="@+id/cs_view_snum"

android:id="@+id/cs_view_cnum"

android:id="@+id/cs_view_score"

android:text="分数"/>

publicvoidAddCS(CScs)throwsException{

if(findStudent(cs.getSnum())!=null&&findCourse(cs.getCnum())!=null){

Stringsql="insertintoCS(Snum,Cnum,Score)values(,,)";

Object[]bindArgs={cs.getSnum(),cs.getCnum(),cs.getScore()};

else{

thrownewException("can'taddthisscore");

publicvoiddelCS(Stringsnumber,Stringcnumber){

Stringsql="deletefromCSwhereSnum=andCnum=";

Object[]bindArgs={snumber,cnumber};

publicvoiddelALLCS(){

Stringsql="deletefromCS";

publicvoidupdateCS(CScs){

Stringsql="updateCSsetScore=whereSnum=andCnum=";

Object[]bindArgs={cs.getScore(),cs.getSnum(),cs.getCnum()};

四、系统测试

4.1测试

1.测试系统能否正常运行

2.测试数据库能否顺利连接

3.测试系统各个页面能否正常跳转

4.测试增删改查功能能否正常使用

5.测试学生信息是否正常显示

4.2测试结果

系统能够正常运行;数据库顺利连接;页面跳转正常;增删改查能够正常使用;学生信息显示正常。

五、体验心得

通过这次的程序设计,我学到了很多,首先就是能够更加熟练的使用和深入的了解Java语言这门通用的计算机语言,还有就是可以自己编写程序了,还是很有成就感的。还有就是光靠书本的知识的确不行,还是要理论联系实践才行。因此不断的练习是必要的,上机实践更重要。通过这次的程序编写让我对编程产生了更大的兴趣,我相信以后我们都会越来越好的。

我从一开始的懵懂到现在的有点理解可以说和老师的教导分不开的。虽然俗语说师傅领进门,修行靠个人,所以师傅的作用还是不可取代的,以前上课时老师教的代码给了我很大的帮助,非常感谢老师!

附件Java主要源代码

StudentActivity.java(对学生信息界面的操作):

publicclassStudentsActivityextendsActivity{

privateButtonsearch=null;

privateEditTextsearch_text=null;

privateListViewlistView=null;

privateMyDBdb=null;

privateButtonadd_student=null;

privateButtondelete_student=null;

@Override

add_student.setOnClickListener(newOnClickListener(){

HashMapitem=null;

popview(item,"add");

delete_student.setOnClickListener(newOnClickListener(){

if(search_text.getText().toString().equals("0000")){

db.delALLStudents();

db.delStudents(search_text.getText().toString());

search_text.setText("");

Toast.makeText(StudentsActivity.this,"deletestudenterror!",Toast.LENGTH_SHORT).show();

privatevoidpopview(HashMapitem,finalStringmode){

//取得自定义View

LayoutInflaterlayoutInflater=LayoutInflater.from(StudentsActivity.this);

ViewmyLoginView=layoutInflater.inflate(R.layout.student_edit,null);

finalEditTextmodify_snum=(EditText)myLoginView.findViewById(R.id.modify_snum_txt);

finalEditTextmodify_sname=(EditText)myLoginView.findViewById(R.id.modify_sname_txt);

finalEditTextmodify_sage=(EditText)myLoginView.findViewById(R.id.modify_sage_txt);

finalEditTextmodify_sphone=(EditText)myLoginView.findViewById(R.id.modify_sphone_txt);

finalRadioButtonmaleButton=(RadioButton)myLoginView.findViewById(R.id.radio_button_male);

finalRadioButtonfemaleButton=(RadioButton)myLoginView.findViewById(R.id.radio_button_female);

modify_snum.setText("");

modify_sname.setText("");

modify_sage.setText("0");

modify_sphone.setText("");

modify_snum.setEnabled(true);

if(mode.equals("modify")){

modify_snum.setText(item.get("Snum").toString());

modify_snum.setEnabled(false);

modify_sname.setText(item.get("Sname").toString());

modify_sage.setText(item.get("Sage").toString());

modify_sphone.setText(item.get("Sphone").toString());

if(item.get("Ssex").toString().equals("男")){

maleButton.setChecked(true);

femaleButton.setChecked(true);

DialogalertDialog=newAlertDialog.Builder(StudentsActivity.this).

setView(myLoginView).

setPositiveButton("确认",newDialogInterface.OnClickListener(){

publicvoidonClick(DialogInterfacedialog,intwhich){

Stringsnum=modify_snum.getText().toString();

Stringsname=modify_sname.getText().toString();

Stringsphone=modify_sphone.getText().toString();

intsage=Integer.valueOf(modify_sage.getText().toString());

Stringssex="女";

if(maleButton.isChecked()){

ssex="男";

if(snum.equals("")){

Toast.makeText(StudentsActivity.this,"can'taddastudentwithoutSnum!",Toast.LENGTH_SHORT).show();

return;

Studentstudent=newStudent(snum,sname,ssex,sage,sphone);

db.updateStudent(student);

db.AddStudent(student);

Toast.makeText(StudentsActivity.this,"addstudenterror",Toast.LENGTH_SHORT).show();

Toast.makeText(StudentsActivity.this,"updatestudenterror",Toast.LENGTH_SHORT).show();

}).

setNegativeButton("撤销",newDialogInterface.OnClickListener(){

Toast.makeText(StudentsActivity.this,"",Toast.LENGTH_SHORT).show();

create();

alertDialog.show();

Toast.makeText(StudentsActivity.this,"runingwrong!",Toast.LENGTH_SHORT).show();

privatevoidupdatelistview(){

Stringstring=search_text.getText().toString();

List>data=newArrayList>();

if(!string.equals("")){

Studentstudent=db.findStudent(string);

students=db.findALLStudent();

Iteratorit=students.iterator();

while(it.hasNext()){

HashMaphashMap=newHashMap();

Studentstudent=it.next();

hashMap.put("Snum",student.getSnum());

hashMap.put("Sname",student.getSname());

hashMap.put("Ssex",student.getSsex());

hashMap.put("Sage",student.getSage());

hashMap.put("Sphone",student.getSphone());

data.add(hashMap);

SimpleAdapteradapter=

newSimpleAdapter(StudentsActivity.this,data,R.layout.student_view,

newString[]{"Snum","Sname","Ssex","Sage","Sphone"},

newint[]{R.id.student_view_snum,R.id.student_view_sname,R.id.student_view_ssex,R.id.student_view_sage,R.id.student_view_sphone});

listView.setAdapter(adapter);

Toast.makeText(StudentsActivity.this,"can'tfindthisstudent!",Toast.LENGTH_SHORT).show();

CourseActivity.java(对学生信息界面的操作):

publicclassCourseActivityextendsActivity{

privateButtonadd_course=null;

privateButtondelete_course=null;

setContentView(R.layout.course_layout);

setTitle("课程信息管理");

search=(Button)this.findViewById(R.id.search_course_button);

search_text=(EditText)this.findViewById(R.id.to_search_Course);

listView=(ListView)findViewById(R.id.course_listview);

add_course=(Button)this.findViewById(R.id.add_course);

delete_course=(Button)this.findViewById(R.id.delete_course);

db=newMyDB(CourseActivity.this);

add_course.setOnClickListener(newOnClickListener(){

delete_course.setOnClickListener(newOnClickListener(){

db.delALLCourse();

db.delCourse(search_text.getText().toString());

Toast.makeText(CourseActivity.this,"deletecourseerror!",Toast.LENGTH_SHORT).show();

LayoutInflaterlayoutInflater=LayoutInflater.from(CourseActivity.this);

ViewmyLoginView=layoutInflater.inflate(R.layout.course_edit,null);

finalEditTextmodify_cnum=(EditText)myLoginView.findViewById(R.id.modify_cnum_txt);

finalEditTextmodify_cname=(EditText)myLoginView.findViewById(R.id.modify_cname_txt);

finalEditTextmodify_credit=(EditText)myLoginView.findViewById(R.id.modify_credit_txt);

modify_cnum.setText("");

modify_cname.setText("");

modify_credit.setText("0");

modify_cnum.setEnabled(true);

modify_cnum.setText(item.get("Cnum").toString());

modify_cnum.setEnabled(false);

modify_cname.setText(item.get("Cname").toString());

modify_credit.setText(item.get("Ccredit").toString());

DialogalertDialog=newAlertDialog.Builder(CourseActivity.this).

Stringcnum=modify_cnum.getText().toString();

Stringcname=modify_cname.getText().toString();

floatcredit=Float.valueOf(modify_credit.getText().toString());

if(cnum.equals("")){

Toast.makeText(CourseActivity.this,"can'taddacoursewithoutCnum!",Toast.LENGTH_SHORT).show();

Coursecourse=newCourse(cnum,cname,credit);

db.updateCourse(course);

db.AddCourse(course);

Toast.makeText(CourseActivity.this,"addcourseerror",Toast.LENGTH_SHORT).show();

Toast.makeText(CourseActivity.this,"updatecourseerror",Toast.LENGTH_SHORT).show();

Toast.makeText(CourseActivity.this,"",Toast.LENGTH_SHORT).show();

Toast.makeText(CourseActivity.this,"runingwrong!",Toast.LENGTH_SHORT).show();

Listcourses=newArrayList();

Coursecourse=db.findCourse(string);

courses.add(course);

courses=db.findALLCourse();

Iteratorit=courses.iterator();

Coursecourse=it.next();

hashMap.put("Cnum",course.getCnum());

hashMap.put("Cname",course.getCname());

hashMap.put("Ccredit",course.getCcredit());

newSimpleAdapter(CourseActivity.this,data,R.layout.course_view,

newString[]{"Cnum","Cname","Ccredit"},

newint[]{R.id.course_view_cnum,R.id.course_view_cname,R.id.course_view_credit});

Toast.makeText(CourseActivity.this,"can'tfindthiscourse!",Toast.LENGTH_SHORT).show();

CSActivity.java(对成绩信息界面的操作):

publicclassCSActivityextendsActivity{

privateEditTextsearch_s=null;

privateEditTextsearch_c=null;

privateButtonadd_cs=null;

privateButtondelete_cs=null;

setContentView(R.layout.cs_layout);

setTitle("成绩信息管理");

search=(Button)this.findViewById(R.id.search_cs_button);

search_s=(EditText)this.findViewById(R.id.to_search_CS_S);

search_c=(EditText)this.findViewById(R.id.to_search_CS_C);

listView=(ListView)findViewById(R.id.cs_listview);

add_cs=(Button)this.findViewById(R.id.add_cs);

delete_cs=(Button)this.findViewById(R.id.delete_cs);

db=newMyDB(CSActivity.this);

add_cs.setOnClickListener(newOnClickListener(){

delete_cs.setOnClickListener(newOnClickListener(){

if(search_s.getText().toString().equals("0000")){

db.delCS(search_s.getText().toString(),search_c.getText().toString());

//(search_text.getText().toString());

search_s.setText("");

search_c.setText("");

Toast.makeText(CSActivity.this,"deletescoreerror!",Toast.LENGTH_SHORT).show();

LayoutInflaterlayoutInflater=LayoutInflater.from(CSActivity.this);

ViewmyLoginView=layoutInflater.inflate(R.layout.cs_edit,null);

finalEditTextmodify_score=(EditText)myLoginView.findViewById(R.id.modify_score_txt);

modify_score.setText("0");

modify_score.setText(item.get("Score").toString());

DialogalertDialog=newAlertDialog.Builder(CSActivity.this).

floatscore=Float.valueOf(modify_score.getText().toString());

if(snum.equals("")||cnum.equals("")){

Toast.makeText(CSActivity.this,"can'taddascorewithoutSnum&Cnum!",Toast.LENGTH_SHORT).show();

//Studentstudent=newStudent(snum,sname,ssex,sage,sphone);

CScs=newCS(snum,cnum,score);

db.updateCS(cs);

db.AddCS(cs);

Toast.makeText(CSActivity.this,"addscoreerror",Toast.LENGTH_SHORT).show();

Toast.makeText(CSActivity.this,"updatescoreerror",Toast.LENGTH_SHORT).show();

Toast.makeText(CSActivity.this,"",Toast.LENGTH_SHORT).show();

Toast.makeText(CSActivity.this,"runingwrong!",Toast.LENGTH_SHORT).show();

Strings=search_s.getText().toString();

Stringc=search_c.getText().toString();

ListCss=newArrayList();

List>data1=newArrayList>();

if(s.equals("")&&c.equals("")){

Css=db.findALLCS();

elseif(s.equals("")&&(!c.equals(""))){

Css=db.findCSbyCnum(c);

elseif((!s.equals(""))&&c.equals("")){

Css=db.findCSbySnum(s);

}else{

CScs=db.findCS(c,s);

Css.add(cs);

Iteratorit=Css.iterator();

inti=0;

CScs=it.next();

hashMap.put("Snum",cs.getSnum());

hashMap.put("Cnum",cs.getCnum());

hashMap.put("Score",cs.getScore());

data1.add(hashMap);

i=i+1;

Toast.makeText(CSActivity.this,"一共:"+i,Toast.LENGTH_SHORT).show();

newSimpleAdapter(CSActivity.this,data1,R.layout.cs_view,

newString[]{"Snum","Cnum","Score"},

newint[]{R.id.cs_view_snum,R.id.cs_view_cnum,R.id.cs_view_score});

Toast.makeText(CSActivity.this,"can'tfindthisscore!",Toast.LENGTH_SHORT).show();

MyDBhelper.java(创建数据库):

publicclassMyDBhelperextendsSQLiteOpenHelper{

privatestaticfinalStringname="contants";//数据库名称

privatestaticfinalintversion=1;//数据库版本

publicMyDBhelper(Contextcontext){

super(context,name,null,version);

//TODOAuto-generatedconstructorstub

publicvoidonCreate(SQLiteDatabasedb){

Stringstudents="createtableifnotexistsStudents(Snumvarchar(10)primarykey,Snamevarchar(6),Ssexvarchar(2),Sageinteger(3),Sphonevarchar(12))";

Stringcourses="createtableifnotexistsCourses(Cnumvarchar(4)primarykey,Cnamevarchar(10),Ccreditreal(3))";

Stringcs="createtableifnotexistsCS(Snumvarchar(10),Cnumvarchar(4),Scorereal(3),primarykey(Snum,Cnum))";

db.execSQL(students,bindArgs);

db.execSQL(courses,bindArgs);

db.execSQL(cs,bindArgs);

publicvoidonUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion){

db.execSQL("DROPTABLEIFEXISTSStudents");

db.execSQL("DROPTABLEIFEXISTSCourses");

db.execSQL("DROPTABLEIFEXISTSCS");

this.onCreate(db);

MyDB.java(对数据库进行增删改查):

publicclassMyDB{

privateMyDBhelperdBhelper;

privateSQLiteDatabasemydb;

publicMyDB(Contextcontext){

this.dBhelper=newMyDBhelper(context);

/*增*/

/*删*/

/*改*/

/*查*/

publicCoursefindCourse(Stringcnumber){

Stringsql="select*fromCourseswhereCnum=";

String[]selectionArgs={cnumber};

returnnewCourse(cursor.getString(0),cursor.getString(1),cursor.getFloat(2));

publicCSfindCS(Stringcnumber,Stringsnumber){

Stringsql="select*fromCSwhereSnum=andCnum=";

String[]selectionArgs={snumber,cnumber};

returnnewCS(cursor.getString(0),cursor.getString(1),cursor.getFloat(2));

publicListfindCSbyCnum(Stringcnumber){

Stringsql="select*fromCSwhereCnum=";

Listcss=newArrayList();

CScs1=newCS(cursor.getString(0),cursor.getString(1),cursor.getFloat(2));

css.add(cs1);

returncss;

publicListfindCSbySnum(Stringsnumber){

Stringsql="select*fromCSwhereSnum=";

/*findALL函数*/

publicListfindALLCourse(){

Stringsql="select*fromCoursesorderbyCnumasc";

Coursecourse=newCourse(cursor.getString(0),cursor.getString(1),cursor.getFloat(2));

THE END
1.Android学生盐系统完整实战教程.zip简介:本书详细介绍了Android学生选课系统从设计到实现的全过程。该系统在Android Studio平台上构建,使用SQLite数据库进行数据存储,并涵盖了课程管理、学生信息管理、选课等核心功能。书中深入解析了SQLite数据库应用、用户界面与交互设计、学生选课功能实现、通信与数据传输、安全与优化、测试与调试等关键环节,是学习Androidhttps://blog.csdn.net/weixin_35756637/article/details/142322138
2.githubAndroid学生盐系统学生盐系统源代码githubAndroid学生选课系统 学生选课系统源代码 软件架构 Python 版本:Python 3.0以上版本; Django版本:Django2.0.2以上版本; 操作系统:Windows 10; 数据库:Mysql数据库; 安装教程 连接Mysql数据库的配置信息Sun项目文件夹下Sun/settings.py文件内 这里是主要部分代码配置: DATABASES = { ‘default’: { ‘ENGINE’:https://blog.51cto.com/u_16099186/11870004
3.基于Android的盐系统的研究与实现期刊摘要:论文实现了一个基于Android智能操作系统的选课系统。该系统使用方便灵活,实现了高校选课流程中的所有功能,为学生提供了利用手机、平板等移动终端进行选课的环境,有着良好的用户体验。本系统服务器采用开源的tomcat服务器,以MySQL作为后台数据库,网络数据交互遵照HTTP协议。最后,文章对系统的扩展及优化提出了一种解决方https://d.wanfangdata.com.cn/Periodical_wxhlkj201409075.aspx
4.学生基本信息管理(精选十篇)⒊系统参数设定:系统开关、选课开关、学期、选课轮次等各类参数设定。⒋用户权限管理:院部、学生、教师、教务员等系统用户设置与权限管理;用户列表、用户密码查询打印。五.院部管理员权限 ⒈培养计划管理:查询、变更、复制、删除等。 ⒉教学任务管理:查询班级开课情况、添加教学任务、指定授课教师、合班编排、查询合班https://www.360wenmi.com/f/cnkey808f78i.html
5.盐系统:构建学生高效盐的新桥梁多平台兼容性随着移动设备的普及,选课系统也必须适应多种设备。系统支持多种操作系统和浏览器,无论是Windows、MacOS还是iOS、Android,用户都能随时随地进行选课。 智能选课推荐为了帮助学生做出更好的选课决策,选课系统内置了智能选课推荐功能。系统通过分析学生的学习历史和偏好,推荐最适合的课程,提高选课的准确性和满意度http://www.guomiaoyuan.com/article_112.html
6.简单实现Android学生管理系统(附源码)Android本文实例讲述了Android实现学生管理系统,分享给大家供大家参考。具体如下:(1)管理系统实现的功能主要是:学生、教师的注册登录,和选课,以及修改学生的成绩等基本简单的功能,最主要的是实现一些Dialog的使用。 界面如下:(2)主要代码如下:(个人留作笔记,如需要完整代码,在最下边免费下载)https://www.jb51.net/article/76246.htm
7.顺通高校学生网上盐管理系统首页结合学生选课管理的实际需要,完成了对学生网上选课管理系统的需求分析、功能模块划分、数据库模块分析等,并由此设计了后台数据库以及前端应用程序。 制造商 慈溪市顺通网络技术有限公司 浙江 > 慈溪主要功能 教务/学生信息管理系统 软件类型 商业软件 部署方式 云 操作系统 Windows | Android | 其他https://www.ruanfujia.com/software/10521187/
8.江南大学范文10篇(全文)调查显示, 高校大学生都拥有手机, 81.9%的学生拥有笔记本电脑, 4.3%的学生拥有PSP, 45.5%的学生拥有MP3、MP4, 18.7%的学生拥有电子词典, 相比之下, 手机和笔记本电脑的普及率明显要高。而在进一步调查中, 对于手机操作系统的统计显示, Android系统的拥有量为69.6%, IOS系统的拥有量为11.7%, windows及其他操作系统https://www.99xueshu.com/w/ikeypg5jbztz.html
9.安师大开发教务系统安卓/iOS客户端,WP呢从上个学期开始,安徽师范大学的学生们就都松了一口气,因为学校自主开发了新的教务系统,终于避免了正方教务系统常出现那些杀千刀的情况。同学们纷纷表示:妈妈再也不用担心我的选课。而且教务系统还开发了移动版,为手机浏览器做了专门的页面优化。 最近,更让人惊喜的是,在教务系统主页又悄悄上线了Android和iOS版的客户https://www.ithome.com/html/it/78730.htm
10.小学儿童生命安全教育虚拟仿真实验教学项目在各种实验项目的开展过程中,大量采用学习活动管理系统(LAMS)提高了实验教学手段的先进性,积极建立以学生为中心的实验教学模式,学生通过查询学习活动管理系统,能够很方便的了解当前实验的进展情况、下一步的实验内容、其他同学的实验结果等相关信息,融合多种方式辅助实验教学。初步实现了学生网上选课、预约实验项目和时间(https://edu.hjnu.edu.cn/info/1178/1086.htm
11.合肥市中小学生课后服务管理系统招标公告1.项目名称:合肥市中小学生课后服务管理系统。 2.项目概况:合肥市中小学生课后服务管理系统使用市教育局云平台服务器。系统需建设PC端和手机APP端(android、ios双系统),分市、县(市)区教育主管部门管理端口,学校端口,教师端口,学生家长以及监管端口,满足家长选课、缴费、评价,机构入驻系统、发布课程师资、入校服务,学https://jyj.hefei.gov.cn/jydt/tzgg/18028003.html
12.StudentCourseSelectionManagementSystem3java源码下载平台学生选课管理系统是一种基于Java的小程序设计,旨在帮助学生进行课程选择和安排。该系统主要包括以下几个功能模块:1. 用户管理:系统管理员可以添加、修改和删除用户信息,包括用户名、密码、学号等。同时,系统还可以设置不同角色的用户权限,如学生、教师、管理员等。2. https://java.code.coder100.com/index/index/content/id/63755
13.基于android平台教务系统毕业设计文献综述面对庞大的信息量,就需要有基于android平台教务系统来提高学生信息管理工作效率。通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。由于计算机和网络的普及,若建立一个C/S或B/S结构的基于android平台教务系统,学生便可以通过网络来选课并且查询自己的有关信息,使得学生信息管理工作http://www.biyezuopin.vip/onews.asp?id=5325
14.基于Android平台的大学生实用软件设计开发AET(2)自习室一位难求是众多高校学子都很苦恼的问题,经常有些同学跑遍整个教学楼却没有找到一个空闲的位子。如何利用智能手机迅速查找自习室,是广大在校学生的迫切需求。 (3)教务网络管理系统提供学生成绩查询、网上选课、网上评教等功能,但该系统在手机登录操作繁琐,不便于学生快捷操作。学生们渴望有个快捷登录教务网络管http://www.chinaaet.com/article/3000015385
15./GraduationProject:Java毕业设计,小程序毕业设计,Android家具商城系统SpringBoot+Vue+MySql springboot学生综合成绩测评系统SpringBoot+Vue+MySql 医患档案管理系统SpringBoot+Vue+MySql 学生考勤管理系统SpringBoot+Vue+MySql springboot农机电招平台SpringBoot+Vue+MySql 学生选课系统SpringBoot+Vue+MySql springboot私人健身与教练预约管理系统SpringBoot+Vue+MySql https://github.com/gdutxujun94/GraduationProject
16.人才培养兴安职业技术学院⑶考核内容:办公软件类考试,操作技能部分包括汉字录入、Windows 系统使用、文字排版、电子表格、演示文稿公共选修课模块包含职业能力、艺术审美、身心健康、语言文化、等课程,第二至四学期学生每学期可任选1-专业任选课每门课程2-4学分。专业选修课安排在第2至4学期。其中第2学期至少选够2学分,第3学期至少https://www.nmxzy.cn/contents/266/2247.html