基于Android开发的图书管理系统报告Word格式文档下载.docx

上传人:b****3 文档编号:17066333 上传时间:2022-11-28 格式:DOCX 页数:24 大小:1.36MB
下载 相关 举报
基于Android开发的图书管理系统报告Word格式文档下载.docx_第1页
第1页 / 共24页
基于Android开发的图书管理系统报告Word格式文档下载.docx_第2页
第2页 / 共24页
基于Android开发的图书管理系统报告Word格式文档下载.docx_第3页
第3页 / 共24页
基于Android开发的图书管理系统报告Word格式文档下载.docx_第4页
第4页 / 共24页
基于Android开发的图书管理系统报告Word格式文档下载.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

基于Android开发的图书管理系统报告Word格式文档下载.docx

《基于Android开发的图书管理系统报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于Android开发的图书管理系统报告Word格式文档下载.docx(24页珍藏版)》请在冰豆网上搜索。

基于Android开发的图书管理系统报告Word格式文档下载.docx

五、 总结与收获18

一、开发背景

   移动互联网时代得来临,说明一个崭新得时代开始了。

所谓移动互联网就是将移动通信与互联网整合在一起,移动设备(包括手机与上网本)可以随时随地地访问互联网资源与应用。

 

智能手机就是移动互联网时代一个标志性得客户端工具,它与传统得手机就是有区别得,它就像一台“小电脑”,具有独立得操作系统,可以自由安装、卸载软件,具有强大得计算与存储能力,可以通过移动通信网络来实现无线网络接入。

对于移动终端设备飞速发展得今天,传统WEB上得应用出现在手机终端就是一个大得趋势。

而基于Android开发得图书馆管理系统手机客户端,正就是对这一趋势得良好体现,Android平台下得图书馆管理系统得开发,能很好得为用户提供方便,用户能通过它能随时随地得了解系统得实时信息,做到信息得实时化。

通过Android平台下得图书馆管理系统客户端得开发,与传统WEB应用进行良好得互补. 

同时,对于校内得图书馆管理系统来说,手机对于学生就是必不可少得一个物品,手机客户端这种形式得图书馆管理系统,能更加贴近学生得生活习惯,并且适合学生年龄段得习性,这对学生更多得接触到图书馆得信息有一定得促进作用。

二、需求分析

2、1功能分析

 基于Android平台开发得图书馆管理系统客户端从设计者得角度来瞧,用户角色主要为学生用户;

功能包括注册、登录、投稿、翻译、娱乐、书籍查询、图书实时更新,借阅图书共八大部分。

学生用户可以根据学号进行快捷注册,学生在投稿区写文章发表,在广场互动,翻译功能可以帮助解决学习上遇到不理解得英文进行翻译,娱乐功能中有两个小游戏,用户可以适时放松一下。

当然主要功能当然就是查询借阅书籍。

2、2开发技术分析

  该系统就是基于Eclipse软件并连接AndroidSDK进行开发得基于Android平台开发得图书管理系统,数据库采用较小速度快得SQLite,就是嵌入式移动设备中常用得轻量级数据库。

软件UI通常使用xml技术设计,由于布局得使用,并且布局之间可以互相嵌套,使得android软件UI得设计变得非常灵活,力求图书馆与学生之间更加亲近方便。

 

三、系统设计

3、1系统目标

●系统采用人机交互得方式,界面美观友好,信息查询灵活、方便,数据存储安全可靠;

●能够让学生更好更方便得了解图书馆与借阅图书;

●丰富学生知识,增加学生阅读积极性;

●能够对学生信息进行有效得管理;

●能够准确、详细地了解学生得每月阅读量;

●系统应最大限度地实现易维护性与易操作性.

3、2系统功能

本系统得具体功能如下:

1、图书管理:

新增、浏览馆藏图书.

2、借阅图书:

学生查找图书进行预约,预约成功可前往图书馆借阅。

3、 投稿:

学生可以在平台发布文章,发布得文章可在阅读界面查瞧,可对文章点赞,评论与分享。

4、翻译:

学生可以使用翻译功能在线翻译,如学习时遇到瞧不懂得英文句子以及单词。

5、 娱乐:

娱乐功能开发了两个休闲小游戏,打地鼠游戏与扫雷游戏。

学生可在学习之余放松一下。

6、个人:

学生可使用学号进行注册与登录。

本系统得系统结构功能图如图3—1所示。

    图3-1系统结构功能图

3、3系统用例图

3、4数据库设计

   由于本系统就是在校学生使用得软件,需要充分考虑图书管理与学生借阅需求等问题,而SQLite就是一款轻型得数据库,它占用资源非常得低,在嵌入式设备中,可能只需要几百K得内存就够了。

处理速度快,效率高,正好满足了手机app得需求,所以本系统采用SQLite数据库。

根据数据库得概念设计,可以进一步进行数据库得逻辑设计。

本人所设计得数据库命名为Tushu,数据库中包括以下得数据表:

1、学生信息表(student)  2、借阅表(cord)  3、图书表(books)4、留言表(reads)

(一)学生信息表(student)

表1 student表结构

字段名

数据类型

说明

Id

Int

主键

S_Num

Varchar(10)

学号

S_Name

Varchar(20)

姓名

S_Class

Varchar(20)

班级

S_Phone

Varchar(11)

联系方式

S_pwd

Varchar(20)

密码

(二)借阅表(cord)

表2cord表结构

ISBN

图书编号,主键

B_Name

Varchar(20)

书名

S_Num

Varchar(20)

ReturnTime

Datetime

归还时间

(三)图书表(books)

表3 books表结构

Int

B_Name

Varchar(20)

B_Author

Varchar(20)

作者

B_Pm

Varchar(255)

书本介绍

(四)留言表(reads)

表4reads表结构

Number

Int

留言编号,主键

Title

Varchar(50)

标题

Article

Varchar(255)

内容

四、系统功能实现

4、1主界面

 该系统分为三大功能模块:

图书管理、预约图书、翻译、投稿、娱乐、登录注册六个功能,下面分别介绍这七大块,界面如图4—1所示。

图4-1会员管理界面图

Activity关键代码实现如下:

//主界面GridView六个菜单适配,新建适配器MuneAdapter、Java:

 public classMuneAdapterextendsBaseAdapter{

ﻩint[] imageId ={R、drawable、j,R、drawable、h,R、drawable、o,

          R、drawable、p,R、drawable、k,R、drawable、i};

String[]text={”书架”,"阅读","

签到",”投稿","

翻译"

,"

娱乐"

};

privateContextcontext;

ﻩpublicMuneAdapter(Contextcontext){this、context=context;

publicintgetCount(){return6;

ﻩpublicObjectgetItem(intposition){returnnull;

publiclonggetItemId(int position){return 0;

}

ﻩpublicViewgetView(intposition,View convertView,ViewGroupparent){

Viewview=View、inflate(context,R、layout、item_mune,null);

ﻩﻩImageView icon=(ImageView)view、findViewById(R、id、iv);

ﻩTextViewtv=(TextView)view、findViewById(R、id、tv);

ﻩicon、setImageResource(imageId[position]);

ﻩtv、setText(text[position]);

returnview;

} }

 //在主界面进行适配,然后进行跳转.

 gView、setAdapter(newMuneAdapter(MainActivity、this));

 gView、setOnItemClickListener(new OnItemClickListener(){

publicvoidonItemClick(AdapterView<

〉 parent,Viewview, intposition,longid){

switch(position) { 

 case 0:

 startActivity(BookActivity、class);

ﻩﻩﻩbreak;

4、2、客户端登录

4、2、1学生登录

  学生登录客户端主要用于查询想借阅得图书与借书。

登录界面如图4-2-1所示,学生可以登录注册进入客户端。

在登录界面中,首先提醒您输入登录信息,并且把登录得用户名与密码输入其文本框内.

图4—2-1登录界面图

技术分析:

创建了一个名为LoginActivity、java实现登录,查询数据库中得学号与密码就是否匹配,如果没有账号点击注册跳转到注册页面。

代码实现如下:

  String name=user、getText()、toString();

ﻩStringpass=pwd、getText()、toString();

ﻩLog、i("TAG”,name+"_"

+pass);

StudentDaodao=newStudentDao(this);

ﻩbooleanflag=dao、login(name, pass);

ﻩif (TextUtils、isEmpty(name)||TextUtils、isEmpty(pass)){

Toast、makeText(this,"学号与密码不能为空!

",0)、show();

ﻩelse if(flag){Log、i("

TAG"

登录成功!

”);

Toast、makeText(LoginActivity、this, "登录成功”, Toast、LENGTH_LONG)、show();

ﻩﻩﻩIntentintent=newIntent();

ﻩﻩintent、setClass(LoginActivity、this,MeActivity、class);

ﻩﻩintent、putExtra(”name", user、getText()、toString());

ﻩﻩstartActivity(intent);

ﻩﻩﻩ}else{Log、i("

TAG”,"登录失败!

"

);

Toast、makeText(LoginActivity、this,”登录失败!

学号或密码不正确!

,Toast、LENGTH_LONG)、show();

}}

4、2、2学号快捷注册

学生登录客户端没有账号可点击登录按钮右下方得“学号快捷注册"

进行注册.注册界面如图4—2—2所示,学生可以注册个人信息然后进行登录。

在注册界面中,首先提醒您输入个人信息,注册成功后跳转到登录界面。

图4—2-2注册界面

代码实现如下:

 StringS_Num=S_num、getText()、toString()、trim();

ﻩﻩﻩStringS_Name=S_name、getText()、toString()、trim();

StringS_Class=S_class、getText()、toString()、trim();

ﻩﻩString S_Phone=S_phone、getText()、toString()、trim();

ﻩﻩStringS_pwd=S_Pwd、getText()、toString()、trim();

ﻩﻩif(TextUtils、isEmpty(S_Num)||TextUtils、isEmpty(S_pwd)){

ﻩﻩﻩToast、makeText(this,"

学号与密码不能为空!

",0)、show();

return;

   }else{Student student=newStudent();

student、S_Num=S_Num;

student、S_Name=S_Name;

ﻩstudent、S_Class=S_Class;

student、S_Phone=S_Phone;

student、S_pwd=S_pwd;

 dao、add(student);

ﻩﻩToast、makeText(ZhuceActivity、this,"

注册成功!

”,0)、show();

ﻩfinish();

break;

}

   }

4、2、3个人信息数据库

// Studentdao、java

publicclassStudentDao{

privateDBOpenHelperhelper;

private SQLiteDatabase db;

public StudentDao(Contextcontext){

super();

helper=newDBOpenHelper(context);

publicbooleanadd(Student student){

db=helper、getWritableDatabase();

ContentValuesvalues =new ContentValues();

values、put("S_Num",student、S_Num);

ﻩvalues、put(”S_Name",student、S_Name);

ﻩﻩvalues、put("S_Class",student、S_Class);

ﻩﻩvalues、put("S_Phone”,student、S_Phone);

ﻩvalues、put("

S_pwd”, student、S_pwd);

ﻩlongrowid=db、insert(”student"

null, values);

ﻩif(rowid==—1) {returnfalse;

ﻩﻩ}else{returntrue;

 } }

public boolean login(StringS_Num,StringS_pwd){

ﻩdb=helper、getReadableDatabase();

ﻩStringsql="select*from studentwhereS_Num=?

andS_pwd=?

";

ﻩCursorcursor=db、rawQuery(sql,newString[]{S_Num,S_pwd});

ﻩif(cursor、moveToFirst()==true){cursor、close();

 returntrue;

 }

ﻩreturnfalse;

4、3图书管理

4、3、1图书添加

图书管理员可以进行图书得添加删除与修改。

及时得更新书库图书信息与增加新书,点击下方茶杯按钮即可添加图书,图书添加界面如图4-3-1所示。

  

图4-3-1添加图书界面图

  在SQLite中添加books表,进行增删查改。

创建了一个名为AddbookActivity、java实现添加图书信息。

 //AddbookActivity、java添加图书:

      StringB_Name=bookname、getText()、toString()、trim();

ﻩﻩStringB_Author=author、getText()、toString()、trim();

ﻩﻩString B_pm=pm、getText()、toString()、trim();

ﻩﻩif (TextUtils、isEmpty(B_Name)||TextUtils、isEmpty(B_Author)){

ﻩToast、makeText(this,"

书名不能为空!

",0)、show();

ﻩﻩﻩreturn;

ﻩ}else{

ﻩﻩBookbook=newBook();

book、B_Name=B_Name;

ﻩﻩ book、B_Author=B_Author;

 book、B_Pm=B_pm;

dao、add(book);

}

ﻩﻩToast、makeText(AddbookActivity、this,”添加成功!

,0)、show();

ﻩﻩfinish();

 break;

}}

4、3、2图书信息显示

 BookActivity、java显示数据库中所有图书信息,用listview显示,创建一个BookActivity、Java实现listview得适配。

如图4-3-2图书信息界面图。

图4-3-2图书信息界面图

通过BookActivity、Java实现listview得适配.

//BookAdapter、java适配器把数据库得图书信息显示在listview上,关键代码如下:

public ViewgetView(final int position,ViewconvertView,ViewGroupparent) {

ﻩﻩViewHolderholder=null;

    if(convertView==null){

   convertView=View、inflate(context,R、layout、item_book,null);

ﻩﻩholder=newViewHolder();

ﻩﻩﻩholder、bookname=(TextView)convertView、findViewById(R、id、bookname);

ﻩﻩﻩholder、author=(TextView) convertView、findViewById(R、id、author);

ﻩholder、bookpm=(TextView)convertView、findViewById(R、id、pm);

convertView、setTag(holder);

ﻩﻩ}else{holder=(ViewHolder)convertView、getTag();

ﻩ}holder、bookname、setText(books、get(position)、B_Name);

ﻩﻩﻩholder、author、setText(books、get(position)、B_Author);

ﻩholder、bookpm、setText(books、get(position)、B_Pm);

ﻩreturnconvertView;

   staticclassViewHolder{

ﻩﻩTextViewbookname;

 TextViewauthor;

 TextView bookpm;

 TextView record;

ﻩView shu;

//BookActivity、java使用listview显示所有图书信息。

mListView、setOnScrollListener(new OnScrollListener() {

ﻩﻩpublicvoidonScrollStateChanged(AbsListView view, int scrollState){switch (scrollState){

ﻩcaseOnScrollListener、SCROLL_STATE_IDLE:

ﻩﻩint lastVisiblePosition=mListView、getLastVisiblePosition();

ﻩﻩif(lastVisiblePosition==pagebook、size()-1){pagenumber++;

ﻩif(pagenumber*pagesize〉=totalNumber) {

Toast、makeText(BookActivity、this,"

没有更多得数据了”, 0)、show();

ﻩﻩﻩ}else{pagebook、addAll(dao、getPageBook(pagenumber,pagesize));

ﻩﻩﻩﻩadapter、notifyDataSetChanged();

}}

ﻩﻩbreak;

ﻩpublicvoid onScroll(AbsListViewview,intfirstVisibleItem,intVisibleItemCount, 

   inttotalItemCount) {ﻩ

    ﻩ} });

4、3、3图书数据库操作

publicclassBookDao{

private DBOpenHelperhelper;

ﻩprivateSQLiteDatabasedb;

ﻩpublicBookDao(Contextcontext){super();

helper=newDBOpenHelper(context);

publicbooleanadd(Bookbook){db=helper、getWritableDatabase();

ﻩContentValuesvalues=newContentValues();

ﻩﻩvalues、put("

B_Name”,book、B_Name);

values、put("

B_Author"

 book、B_Author);

ﻩvalues、put("B_Pm", book、B_Pm);

longrowid=db、insert("

books"

null,values);

ﻩﻩif (rowid==-1){ﻩreturnfalse;

}else{ﻩreturntrue;

ﻩ}}

publicbooleandelete(Book book){db=helper、getWritableDatabase();

introwname=db、delete(”books"

B_Name=?

newString[] {book、B_Name}ﻩ);

ﻩﻩif (rowname==0){returnfalse;

ﻩ}else{ﻩreturn true;

}}

4、4投稿阅读

4、4、1投稿

每个学生都可以投稿写文章然后发布,发布出去得文章可以在阅读界面查瞧。

阅读界面相当于广场,用户可以在广

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教学研究 > 教学反思汇报

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1