javaweb前后端交互的方法总结

1.超链接 

 get方法

前端发送数据

<a href="testrequest?upass=abc&uage=12">test-get</a>

后端接收

req.getParameter("uage");
req.getParameter("upass");

2.from表单 

默认是get方法   一般都是用post提交

前端发送数据

<form  action="testrequest" method="post">
			uname:<input type="text"name="uname" value="liwei" />
			<input type="submit" value="提交"/>
		</form>

后端接收

post请求会遇见中文乱码的问题 get 请求从Tomcat8之后不再出现中文乱码,版本之前的需要手动处理乱码

req.setCharacterEncoding("utf-8");
		req.getParameter("uname");

第一种和第二种方法都需要在web.xml中配置路径访问

<servlet>
			<servlet-name>a1</servlet-name>
            <!--这里为请求处理类的完全名称  包名+类名-->
			<servlet-class>web.TestServlet</servlet-class>
		</servlet>
		<servlet-mapping>
			<servlet-name>a1</servlet-name>
			<url-pattern>/testrequest</url-pattern>
		</servlet-mapping>

3JavaScript中的ajax

案例

这里主要注意的是post和get方法   当请求为post时候open里面不传参数,传递的参数放在send里

<script>
function test() {
      //发送异步请求
      //1.创建XMLHttpRequest对象
      var xmlhttp;
      if(window.XMLHttpRequest){
        //IE浏览器
        xmlhttp=new XMLHttpRequest();
 
      }else if(window.ActiveXObject){
        xmlhttp=new ActiveXObject("Microssft.XMLHTTP");
      }
      //2.打开链接
     var uname=document.getElementById("uname").value;
      xmlhttp.open("get","/testuname",true);
      //3.指定回调函数
      xmlhttp.onreadystatechange=function () {
      //3.1判断状态,==4---成功返回了
        if(xmlhttp.readyState==4 || xmlhttp.status==200){
          //3.2接收返回的数据
        var responseText = xmlhttp.responseText;
        document.getElementById("rs").innerText=responseText;
 
        }
      }
     xmlhttp.setRequsetHeader("Content-type","application/x-www-form-urlencoded;charset=UTF-8");
      //4.发送数据
      xmlhttp.send("username="+uname);
    }

</script>

4.jquery下的ajax   post  和  get  

引入 依赖  web   WEB-INFO  下建一个lib包

还是拿案例中的方法举例   

ajax  参数介绍:

 <script type="text/javascript" src="js/jquery-1.8.0.min.js"></script>
  <script type="text/javascript">
    $(function(){
      $("#uname").blur(function(){
        //1.获得value值
        var uname = $(this).val();
        //2.发送请求
       /* $.ajax({
          url:"/testuname",
          data:"username="+uname,
          type:"post",
          dataType:"text",
          success:function(rs){
            $("#rs").html(rs);
          }
           });
          */
      /* $.get("/testuname","username="+uname,function(rs){
           $("#rs").html(rs);
        });*/

        $.post("/testuname","username="+uname,function(rs){
          $("#rs").html(rs);
        });

      });

    })

  </script>

如果传递的参数为多个用      {"a"=a,"b=b,"c"=c}    这种key=value形式   后端直接根据key获取value

有时候后端返回回来的json格式数据  前端无法取值,但是页面 F12  response  返回值是json格式  

这时候需要对数据进行转译成能获取的格式

eval("("+rs+")");                 //转换成可以处理的json

5.jquery下的toJson

两种返回数据方法的区别

 response.getWriter().print()和    response.getWriter().writer()  的区别

总结如下:

  • response.getWriter()返回的是PrintWriter,这是一个打印输出流。
  • response.getWriter().print(),不仅可以打印输出文本格式的(包括html标签),还可以将一个对象以默认的编码方式转换为二进制字节输出
  • response.getWriter().writer(),只能打印输出文本格式的(包括html标签),不可以打印对象。

参考的文章:   比较两者区别

  • 5
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 前后端分离项目需要把web项目中的后端代码与前端代码拆分开,其中前端代码使用JavaScript语言,包括HTML、CSS等,后端代码使用Java语言,用于处理数据库的请求等。可以使用RESTful API框架,如SpringMVC来实现前后端的解耦。 ### 回答2: 将Java Web项目拆分成前后端分离项目需要执行以下步骤: 1. 分离后端代码:在原有的Java Web项目中,将后端的业务逻辑和数据访问层单独抽离出来,形成独立的后端项目。这个后端项目可以是一个独立的Java项目,使用Spring Boot、Spring MVC等框架开发。后端项目负责处理请求、实现业务逻辑和与数据库交互等操作。 2. 创建前端项目:使用前端开发技术,如HTML、CSS和JavaScript,创建一个新的前端项目。可以使用流行的前端框架,如React、Angular或Vue.js等,在前端项目中负责用户界面的展示和用户交互。 3. 前后端交互:定义前后端数据交互的接口,可以使用RESTful API进行前后端通信。前端发送请求至后端,后端接收并处理请求,并将处理结果返回给前端,前端根据返回结果进行逻辑处理和界面展示。 4. 部署和联调:前端项目可以独立部署在一个Web服务器或者静态文件服务器上,后端项目则可以部署在另一个服务器上。前后端项目需要在联调过程中确保能够正常通信,前端能够访问后端接口,并正确显示数据和处理业务逻辑。 5. 优化和维护:在前后端分离的项目中,前端和后端可以并行开发和优化,提高开发效率。同时,前端人员可以专注于用户界面的设计和优化,后端人员可以专注于业务逻辑和数据处理的优化。对于不同的模块和功能,可以分配不同的团队进行开发和维护。 通过以上步骤,将原有的Java Web项目拆分为前后端分离项目,可以更好地分配资源和团队,提高开发效率和项目维护性,并且使得前端和后端能够独立升级和部署。 ### 回答3: 将一个JavaWeb项目拆分为前后端分离项目,主要需要进行以下步骤: 1. 前端与后端项目分离:将原来的JavaWeb项目中的前端页面与后端代码进行拆分,分别放在两个独立的项目中。 2. 前端项目搭建:在前端项目中使用前端框架,如Vue.js、React等,搭建前端页面,并实现与后端的数据交互。 3. 后端项目搭建:使用Spring Boot、Spring MVC等框架搭建后端项目,提供接口供前端调用,并处理业务逻辑。 4. 接口定义与规范:前后端分离项目中,前端通过接口与后端进行数据交互。因此,需要定义接口的请求方式、参数、返回格式等规范,确保前后端的数据交互正常。 5. 接口调用:前端通过异步请求方式(如Ajax、Fetch等)调用后端接口,并获取返回的数据进行展示或处理。 6. 前后端联调:在开发过程中,前端需要根据定义的接口规范进行接口调用,与后端进行联调,确保前后端的数据交互正常。 7. 部署与测试:将前后端分离项目分别进行部署,并进行功能与性能测试,确保项目的稳定运行。 总结起来,将JavaWeb项目拆分为前后端分离项目,需要进行前端项目搭建、后端项目搭建、接口定义与规范、接口调用、前后端联调、部署与测试等步骤。通过这些步骤,可以将原有的JavaWeb项目改造为前后端分离的项目,实现前后端的解耦与独立开发。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值