第四次团队作业:社团申请App
概要:
基于上次软件设计本着界面简洁、易于使用的初衷,进行功能的实现,代码位置:https://github.com/LinZezhong/testDemo
第一部分:软件的使用
注册:

登录:

主界面(所有社团显示):

点击社团,将跳到社团申请页面:


点击申请加入,即可提交申请

如果申请过该部门,将会提示“已申请过了"

点击主界面”个人“,查看修改个人信息

点击主界面”审核“,显示自己有权限审核的社团部门

点击相应部门,出现相应需要处理的部门申请:

点击,

点提交,完成该申请的审核

此时,201521121076用户点击”我的申请“,查看自己的申请

点击,出现自己的申请结果及通知

第二部分:代码实现(采用http数据传输)
客户端采用的是Eclipse编辑
结构如下:

服务器端被我架设在云服务器上,使用MyEclipse+Tomcat+MySQL
MyEclipse:

思路:根据客户端的不同功能要求连接到服务器端的不同servlet上,有servlet调用相应的MySQL操作方法获得相应的数据,分装成JSON数据传输到客户端。
客户端:
使用UrlConnection以post方式向服务器端发送请求。
请求方法:
public class GetPostUtil {
public static final String urlBase="http://111.230.230.93:8080/LinkMySQL/servlet/";
public static String sendPost(String url,String params){
PrintWriter out = null;
BufferedReader in = null;
String json=null;
try {
URL realUrl = new URL(url);
URLConnection conn = realUrl.openConnection();
//设置通用的请求属性
conn.setRequestProperty("accept","*/*");
conn.setRequestProperty("connecttion","Keep-Alive");
conn.setRequestProperty("user-agent",
"Mozilla/4.0(compatible;MSIE 6.0;Windows NT 5.1;SV1)");
//发送post请求必须设置的两行
conn.setDoOutput(true);
conn.setDoInput(true);
//获取URLConnection对象对应的输出流
out = new PrintWriter(conn.getOutputStream());
//发送请求参数
out.print(params);
//flush缓冲流的缓冲
out.flush();
//定义BufferdReader输入流来读取URL的响应
in = new BufferedReader(
new InputStreamReader(conn.getInputStream()));
InputStream is = conn.getInputStream();
json = netUtil.readString(is);
return json;
} catch (Exception e) {
System.out.println("发送post请求出现异常!"+e);
e.printStackTrace();
}
finally{
try{
if(out !=null){
out.close();
}
if(in != null){
in.close();
}
}
catch(IOException e){
e.printStackTrace();
}
}
return json;
}
}
服务器回传的数据转化为json字符串方法:
public class netUtil {
public static byte[] readBytes(InputStream is){
try {
byte[] buffer = new byte[1024];
int len = -1 ;
ByteArrayOutputStream baos = new ByteArrayOutputStream();
while((len = is.read(buffer)) != -1){
baos.write(buffer, 0, len);
}
baos.close();
return baos.toByteArray();
} catch (Exception e) {
e.printStackTrace();
}
return null ;
}
public static String readString(InputStream is){
return new String(readBytes(is));
}
}
第四次团队作业:社团申请App的更多相关文章
- 团队作业(五)-笔记app top5
在互联网快速发展的情况下,各个行业的软件层出不穷,五花八门.各个行业都有相当多的软件介入其中,在如此多的软件之中,便有了相当激烈的竞争角逐.今天我们十五万的总冠军就着笔记APP行业中位列top 5的软 ...
- 第四次团队作业——项目Alpha版本发布
这个作业属于哪个课程 <课程的链接> 这个作业要求在哪里 <作业要求的链接> 团队名称 Three cobblers 这个作业的目标 发布项目α版本,对项目进 ...
- 扫黑除恶Team第四次团队作业
二.博客撰写要求 文章开头给出团队序号,开发的软件名称,仓库地址. 给出完成本次冲刺需要做的事情(Sprint Backlog)及相应说明. 本次冲刺总结. 三.评分规则 注意:本次作业总分61分.发 ...
- 【2017集美大学1412软工实践_助教博客】团队作业4——第一次项目冲刺(Alpha版本)小组 成绩
第四次团队作业成绩公布 题目 团队作业4: http://www.cnblogs.com/happyzm/p/6722264.html 团队成绩 成绩公示如下: 检查项 会议内容 代码签入 心得体会或 ...
- 团队作业4——第一次项目冲刺(Alpha版本)第一天+第二天+第三天+第四天+第五天+第六天+第七天
冲刺第一天 一.Daily Scrum Meeting照片 二.每个人的工作 1.今天计划完成的任务 GUI.计时功能.题目生成 2.工作中遇到的困难 刚开始在计时功能模块只能做到秒位,经过查询资料后 ...
- bug终结者 团队作业第四、五周
bug终结者 团队作业第四.五周 博客编辑者:20162322朱娅霖 本周学习任务: 团队协作完成<需求规格说明书> 工作流程 第四周 团队成员各自完成蓝墨云班课中<需求规格说明书& ...
- 《你们都是魔鬼吗》第八次团队作业:第四天Alpha冲刺
<你们都是魔鬼吗>第八次团队作业:Alpha冲刺 项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 作业链接地址 团队名称 你们都是魔鬼吗 作业学习目标 完成最 ...
- The Superego 实验四 团队作业1:软件研发团队组建
项目 内容 课程班级博客链接 班级博客链接 这个作业要求链接 作业要求链接 团队名称 The Superego 团队的课程学习目标 (1)组建团队,建设团队文化,申请开通团队博客 (2)团队之间相互协 ...
- 《你说对就队》第八次团队作业:Alpha冲刺 第四天
<你说对就队>第八次团队作业:Alpha冲刺 第四天 项目 内容 这个作业属于哪个课程 [教师博客主页链接] 这个作业的要求在哪里 [作业链接地址] 团队名称 <你说对就队> ...
随机推荐
- C++遍历二维数组的四种方法
#include <iostream> using std::cin; using std::cout; using std::endl; using std::string; using ...
- 用Mirror,搞定用户画像
Mirror产品概述 Mirror是专为金融行业设计的全面用户画像管理系统.该系统基于星环多年来为多个金融企业客户构建用户画像的经验,深入契合业务需求,实现对用户全方位全维度的刻画.Mirror内置银 ...
- RobotFramework自动化测试框架的基础关键字(一)
1.1.1 如何搜索RobotFramework的关键字 有两种方式可以快速的打开RIDE的关键字搜索对话框 1.选择菜单栏Tools->Search Keywords,然后会出现 ...
- 【Elasticsearch全文搜索引擎实战】之Kibana搭建
1. Kibana介绍 Kibana是一个针对Elasticsearch的开源分析及可视化平台,用来搜索.查看交互存储在Elasticsearch索引中的数据.使用Kibana,可以通过各种图表进行高 ...
- 【CJOJ2482】【POI2000】促销活动
题面 Description 促销活动遵守以下规则: 一个消费者 -- 想参加促销活动的消费者,在账单下记下他自己所付的费用,他个人的详细情况,然后将账单放入一个特殊的投票箱. 当每天促销活动结束时, ...
- java volatile关键字解析
volatile是什么 volatile在java语言中是一个关键字,用于修饰变量.被volatile修饰的变量后,表示这个变量在不同线程中是共享,编译器与运行时都会注意到这个变量是共享的,因此不会对 ...
- Redis之PHP操作
一.Redis连接与认证 //连接参数:ip.端口.连接超时时间,连接成功返回true,否则返回false $ret = $redis->connect('127.0.0.1', 6379, 3 ...
- 21.jQuery
简介 jQuery是一个快速.简洁的JavaScript框架,jQuery设计的宗旨是"write Less,Do More",即倡导写更少的代码,做更多的事情.它封装JavaSc ...
- python 全栈开发,Day2
python基础二(基础数据类型) 一.数据 1 什么是数据? x=10,10是我们要存储的数据 2 为何数据要分不同的类型 数据是用来表示状态的,不同的状态就应该用不同的类型的数据去表示 3 数据类 ...
- Samba原理和配置
Samba原理和配置 个人原创,转载请注明,否则追究法律责任. 一,原理及安装 1,Samba是在Linux和UNIX系统上实现在局域网上共享文件一种通信协议,它为局域网内的不同计算机之间提供文件等资 ...