一、个人工作简述
1.实验前期选择开发工具,并完成需求分析;
Faker团队作业(四):描述设计 - 小组博客123 - 博客园 (cnblogs.com)
2.修改完善需求规格说明书
https://gitee.com/yannii/faker/blob/master/需求规格说明书.pdf;
3.在描述设计阶段完成类图
4.在实验过程中完成后端模块化功能的实现;
后端开发即“服务器端”开发,主要涉及软件系统“后端”的东西。比如,用于托管网站和 App 数据的服务器、放置在后端服务器与浏览器及 App 之间的中间件,它们都属于后端。简单地说,那些你在屏幕上看不到但又被用来为前端提供支持的东西就是后端。
网站的后端涉及搭建服务器、保存和获取数据,以及用于连接前端的接口。如果说前端开发者关心的是网站外观,那么后端开发者关心的是如何通过代码、API 和数据库集成来提升网站的速度、性能和响应性。
(1)前端通过接口调用后台返回的数据
jsp页面向服务器发起了一个ajax请求,请求的地址是"servlet/JJJJ",请求成功后执行回调函数,这个data就是这个url返回的数据,一般是一个json格式的字符串,它的根本还是一个字符串。所以前端拿到这个字符串之后,要将它转化为json(数组)对象,然后访问这个对象的键/值,从而进行页面数据渲染
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>test page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body>
this is my jsp
<br>
<div id="json"></div>
</body>
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script>
<script type="text/javascript">
$.ajax({
type: "Get",
url: "servlet/JJJJ",
success: function(data){
$("#json").text(data);
}
})
</script>
</html>
(2)后台接口
//JJJJ.java
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
response.setHeader("contentType", "text/html; charset=utf-8");
PrintWriter out = response.getWriter();
String jsonstr = "[{\"name\": \"eco\", \"age\": \"21\"}]";
out.print(jsonstr);
out.flush();
out.close();
}
servlet,定义了一个json格式的字符串jsonstr,前端对这个servlet发起http请求后,它就返回给前端一个json字符串。这个手写的json字符串,注意了里面的冒号要用转义字符“\”。
3.后台servlet内数据转换
//java对象转化为json字符串
User user = new User("", ""); //java对象
JSONObject json = JSONObject.fromObject(user); //转为json对象
String jsonstr = json.toString(); //转为json字符串
//java对象列表转化为json字符串
User user1 = new User("", "");
User user2 = new User("", "");
List list = new ArrayList(); //数组列表,并添加两个user对象
list.add(user1);
list.add(user2);
JSONArray array = JSONArray.fromObject(list); //java对象列表转化为json对象数组
String jsonstr = array.toString(); //json对象数组转化为json字符串
二、你们小组总共的代码行数,你贡献的代码行数?相关代码链接?
个人贡献代码数为950行左右,以下为项目代码。
其中,我编写了src文件夹下com.action里user_servlet.java、zhuanjia_servlet.java和WebRoot下azhuanjia文件里的代码。
src/com/action · 王馨瑶/faker电子公文传输系统 - 码云 - 开源中国 (gitee.com)
WebRoot/azhuanjia · 王馨瑶/faker电子公文传输系统 - 码云 - 开源中国 (gitee.com)
三、小组文档数统计
小组总共文档数:8
贡献的文档数:2
文档链接:Faker团队作业(四):描述设计 - 小组博客123 - 博客园 (cnblogs.com)