WEB的数据交互具体流程

前一段时间小小的总结了一下,web的前后交互的各种方式可能没写全,后期再写,话不多说

  1. 前端传递数据到servlet,servlet获取数据后操作DAO修改数据库,然后servlet将某些参数返回到前端,前端动态显示数据
    (例如:登录,前端获取登录名密码后通过表单传递给servlet,servlet通过调用DAO层根据用户名查询其密码是否与传递过来的密码是否相同,然后将结果返回到前端页面)
  2. 首先前端页面数据显示必定是动态的,具体的数据要看后端是通过什么传递数据的,然后在前端用相应的方法显示,具体的可以搜一下,前端页面动态显示后端传递的数据:(JS获取session中的信息https://blog.csdn.net/fly910905/article/details/79206530)(获取request中的数据https://blog.csdn.net/u014074697/article/details/74928159)
    (C标签的使用 <C:foreach>)
    (JSON)
  3. 前端向后端传递数据方式
    3.1 标签
<a href="position/add.jsp" style="text-decoration:none;"><span class="dl-button">添加</span></a>//页面间跳转
<a href="position?action=positionBaoMingList" style="text-decoration:none;"><span class="dl-button">已报名&nbsp;&nbsp;&nbsp;</span></a>//向后台跳转

2.2 ajax

$.ajax({
				type : "post",//请求类型
				ansyv : false,//是否异步
				data : {    //传递参数
					"txtKeyWord" : txtKeyWord
				},
				datatype : "json",  //参数类型
				contentType : "application/x-www-form-urlencoded; charset=utf-8",
				url : "position?action=positionList",  //地址
				success : function(data) {   //判断是否成功
					var result = eval('(' + data + ')') //转化获取的json对象
					if (result.status) {
						location.href = "position?action=positionFindList&txtKeyWord=" + txtKeyWord;
					} else {
						alert("查询失败");
					}
				},
			})

2.3 from表单提交数据

<form
					action="positionquestion?action=updateQuestion&qid=${questions.qid}&pid=${position.pid}"
					method="post">
</form>
  1. 后端获取数据
String action=request.getParameter(“action”);

request.getParameter(“action”);//返回的是String类型的
  1. 根据servlet中的某个方法所调用的DAO层操作数据库,然后返回到前端页面
request.getRequestDispatcher("position/list.jsp").forward(request, response);//转发
 
 response.sendRedirect("position/list.jsp");//重定向
   ResponseUtil.write(response, obj);// 发送请求内容到页面
  1. 后台向前端传递的数据放在哪里
  2. session
  3. request
  4. json
原文地址:https://www.cnblogs.com/saber114567/p/10768916.html