模拟登录正方教务管理系统-JAVA实现

模拟登录正方教务管理系统

 

 

这款应用能够将正方教务管理系统上的英语四六级信息查询功能、期末考试安排信息查询功能、期末考试成绩信息查询功能、课程表信息查询功能、毕业设计信息查询功能、个人头像信息查询功能在手机终端供用户查看。(以下列举两个功能模块的大概实现)。

登录模块的实现

 

用户打开该应用,显示登录界面。系统获取输入的信息(学号、密码与验证码),在LoginActivity的checkUser()方法中进行验证,如果验证通过,则进入系统,显示主菜单界面;具体的实现过程如下:第一,生成一个http客户端发送请求对象,对该客户端进行请求方式的设定(这里为HttpGet方式)。使用通过GET请求正方教务系统网站登录页面(http://***.***.***.***/default2.aspx?)使用火狐Firebug工具进行抓包:用户打开该应用,显示登录界面。系统获取输入的信息(学号、密码与验证码),在LoginActivity的checkUser()方法中进行验证,如果验证通过,则进入系统,显示主菜单界面;具体的实现过程如下:第一,生成一个http客户端发送请求对象,对该客户端进行请求方式的设定(这里为HttpGet方式)。使用通过GET请求正方教务系统网站登录页面(http://***.***.***.***/default2.aspx?)使用火狐Firebug工具进行抓包:

 

 

获取到Html网页信息,使用StringTokenizer分隔Html代码,定位到__VIEWSTATE属性标签,再得到__VIEWSTATE的值。第二,将用户输入的学号、姓名、验证码以及刚获取到的__VIEWSTATE的值作为请求参数,访问http://210.34.213.87/default2.aspx?,若验证通过,获取到系统主页面信息并且进入系统,Firebug显示如图5.2,显示主菜单界面;若验证失败,则弹出登录失败的提示。

 

 Firebug显示登录成功对应网页的的Post请求

 

 

显示登录成功返回的首页部分信息

录模块效果图

 

 

期末考试成绩模块实现

 

具体实现过程如下:第一,学生点击该功能模块,显示对话框,获取学生想要查询的对应学年、学期的信息。第二,网络连接,以及头信息的设置,通过访问期末考试成绩对应的网址(http:// ***.***.***.***/xscjcx_dq.aspx?xh=?&xm=?&gnmkdm=N121605)获取返回的信息,使用StringTokenier分隔截取到对应网页标识(__VIEWSTATE)的值。Firebug显示如下图:

Firebug显示期末考试安排对应网页的头信息

 

Firebug显示期末考试成绩网页的__VIEWSTATE字段信息

第三,将学年、学期以及__VIEWSTATE作为请求参数通过POST方法访问期末考试成绩模块网址(http://***.***.***.***/xscjcx_dq.aspx?xh=?&xm=?&gnmkdm=N121605)获取到返回的Html网页。获取到的网页信息如下图:

Firebug显示查询成绩的POST请求

 

期末考试成绩对应网页的部分代码

 

第四,使用正则表达式对其解析,先把Html网页代码转化成行,再利用java.util.regex.Pattern与java.util.regex.Matcher的功能。通过Pattern的静态方法compile()返回一个Pattern的实例,这个实例代表正则表达式,之后就可以重复使用Pattern实例的matcher()方法来返回一个Matcher的实例,代表符合正则式的实例,分析实例,通过设定条件寻找符合的正则式,即我们想要得到的关于期末考试成绩的信息。获取期末考试成绩相关字段的方法:首先,将该页面的</td>\n使用replaceAll</td>进行转换;其次使用Pattern类的compile对(?<=<td>).*(?=</td>)进行处理,获取<td>标签的内容;然后,使用matcher()返回Matcher的实例,通过find()方法将相关字段全部遍历获得。

实际显示效果:

期末考试成绩模块效果图一

期末考试成绩模块效果图二

 

 

注:部分工具介绍

正则表达式

正则表达式的原理是通过匹配字符串中的语法句式规则获得符合条件的字符串内容。被应用在许多方面,类似文本编辑器、电子词典中,用于搜索与更新字段。

使用过程:把一个包含正则表达式的字符串(HTML)传递给Pattern类中的静态方法compile(),创建一个Pattern对象。然后通过使用要搜索的给定字符串作为参数调用Pattern对象的matcher()方法,获得一个Matcher对象,这个对象可以搜索与模式匹配的给定字符串。调用Matcher对象的find()方法搜索给定的字符串。如果模式匹配了,再查询匹配对象以找出模式在字符串中的位置和其他与匹配有关的信息。

 

Firebug网络抓包

 

Firebug是一个获取网页信息的强大工具,通过分析这些截取的HTTP记录,可以知道这个网站对外交互的信息。例如,Firebug中的TimeChart图也可以让我们很直观的看出访问HTTP的时间信息。Request Grid中的Time反应关注耗时比较大的请求,Received关注接收字节数比较大的请求,Result关注404、500、301、302等返回值。常用的网络抓包工具还有Wireshark、Fiddler、Charles等。

 

关键词:Android;Java;正方教务管理系统;学习信息查询;网页分析

 

 

 

 

  • 6
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 17
    评论
教学管理信息系统本着高起点高标准、既适应当前又考虑未来发展的原则,具有界面友好、易于掌握、操作简单、功能齐全、安全可靠、运用广泛等特点。主要功能模块包括系统维护、学籍管理、师资管理、教学计划管理、智能排课、考试管理、选课管理、成绩管理、实践管理、教学质量评价、毕业生管理、体育管理等。   主要特点如下:   1. 智能化的资源调配。它使学校教学资源得到优化,教师、教室、实验室、时间等的高效调配和合理利用,解决了学校资源紧缺、多校区、院系多级管理状况下排课、排实验室、排考场难等问题。   2. 周全的软件设计。随着学分制的教学改革,国内少数高校已试行了完全学分制,大部分高校正在由传统的学年制向学分制过渡,传统的教学管理软件已无法适应这一转变,本系统在设计时考虑了学年制、学年学分制、学分制以及过渡时期等不同阶段教学管理软件衔接的需求。   3. 规范化的教学资源管理。系统严格遵循教育部颁发的学籍学历规范和有关信息标准,课程代码、教师代码、学号等的编码规范高校管理,避免代码的重复等不合理现象的发生。   4. 学分制管理思想的体现。本系统较好地体现了学分管理的基本思想: (1)管理思想、理念上:学分制管理充分体现以人为本,以学生为中心,提高学生学习的自由化和个性化,学生可以自主选课程、自主选专业、自主选学习进程(上课时间)、自主选主讲教师。 (2)教学管理上:学分制管理以教学过程为主线管理,淡化行政班,在强化专业学生共性的基础上重视学生的个性化培养。 (3)学籍管理上:学分制的学籍管理关心获得学分或修读的课程,学生可以多次修读相同或不同的课程。 (4)收费管理上:学分制实现按学分收费为主。
教学管理信息系统本着高起点高标准、既适应当前又考虑未来发展的原则,具有界面友好、易于掌握、操作简单、功能齐全、安全可靠、运用广泛等特点。主要功能模块包括系统维护、学籍管理、师资管理、教学计划管理、智能排课、考试管理、选课管理、成绩管理、实践管理、教学质量评价、毕业生管理、体育管理等。   主要特点如下:   1. 智能化的资源调配。它使学校教学资源得到优化,教师、教室、实验室、时间等的高效调配和合理利用,解决了学校资源紧缺、多校区、院系多级管理状况下排课、排实验室、排考场难等问题。   2. 周全的软件设计。随着学分制的教学改革,国内少数高校已试行了完全学分制,大部分高校正在由传统的学年制向学分制过渡,传统的教学管理软件已无法适应这一转变,本系统在 设计时考虑了学年制、学年学分制、学分制以及过渡时期等不同阶段教学管理软件衔接的需求。   3. 规范化的教学资源管理。系统严格遵循教育部颁发的学籍学历规范和有关信息标准,课程代码、教师代码、学号等的编码规范高校管理,避免代码的重复等不合理现象的发生。   4. 学分制管理思想的体现。本系统较好地体现了学分管理的基本思想: (1)管理思想、理念上:学分制管理充分体现以人为本,以学生为中心,提高学生学习的自由化和个性化,学生可以自主选课程、自主选专业、自主选学习进程(上课时间)、自主选主讲教师。 (2)教学管理上:学分制管理以教学过程为主线管理,淡化行政班,在强化专业学生共性的基础上重视学生的个性化培养。 (3)学籍管理上:学分制的学籍管理关心获得学分或修读的课程,学生可以多次修读相同或不同的课程。 (4)收费管理上:学分制实现按学分收费为主。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值