首页 > 编程知识 正文

java后端主要做什么,java前端框架

时间:2023-05-03 13:59:20 阅读:166471 作者:1492

所有问题的起源都是需要从数据库中获取信息并动态更新到当前网页。 这句话虽然简短,但要作出相当量的处理。

首先,光靠jsp是不行的。 说起来,我认为java代码不应该在html页面上写得太多。 因为他、html代码和js代码不能相互处理赋值,而只是分别显示,所以java代码不能直接在jsp页上获取数据的数据。 要动态更新页面数据而不更新页面,仍然需要ajax。

这里使用的是jquery的ajax,但基本上是post。 也就是说

post (servlet方法、(param ) :value )、function (data,status ) ) ) ) post方法有三个参数。

第一个是url,是像web项目的第一个一样普遍存在的servlet; 第二个参数是包含多个键和值对的对象。 其中,键是字符串,可以直接在请求的servlet中使用==request.getparameter("param " )=来获取传递的参数。 默认值为字符串。 第三个参数是回调函数,它指向在请求成功后执行的操作。 data和status是默认参数,前者是后端响应的数据==(字符串)=,后者是状态信息。 可以在servlet doget/dopost方法的末尾写response.setcharacterencoding (' utf-8 ' )。 response.getWriter ().append )字符串; 这样就可以将后端字符串传递给前端,并在回调函数中操作data。 (第一个是设定响应的编码,如果不设定,有可能会乱码)

那么,java数组、java字符串和js数组、js字符串没有互操作。 连接之间的桥梁是字符串。 它还必须是json字符串的形式,以便于在前端进行分析。 因此,必须将后端数据转换为json字符串的格式,从前端获取数据,然后将其解析为js对象或数组。 当然,也可以反向操作。 此时,java数据和json之间有几种类型

当然首先引入这个jar包; java数组、集合或对象转换为json字符串的格式通常使用fastjson的json类和==JSON.tojsonstring(object )=此方法。 import com.Alibaba.fast JSON.JSON; Jon.tojsonstring(object ); 此方法的参数可以包含数组、集合或Bean对象(实体类中的对象)。 此方法自动转换对应的json字符串格式,但通常封装响应实体类。

publicclassresponsebean { privateobjectobject; 私有输入状态; 私有字符串状态msg; publicresponsebean ({ } publicresponsebean ) intstatus,String statusMsg ) ) {super; this.status=status; this.statusMsg=statusMsg; } publicresponsebean (object,int status,String statusMsg ) {this.object=object; this.status=status; this.statusMsg=statusMsg; }公共对象获取() {返回对象; }public int getStatus () {return status; }公共字符串getstatusmsg () {return statusMsg; } publicvoidsetobject (object ) {this.object=object; }publicvoidsetstatus(intstatus ) {this.status=status; } publicvoidsetstatusmsg (stringstatusmsg ) {this.statusMsg=statusMsg; } @ overridepublicstringtostring ((return ' response bean ) object='object ',status=' status ',statusmsg='status 在前端分析的是js对象。 也就是说,此响应实体类包含三个成员变量:响应的数据、响应的状态和响应的状态信息。 其中,java数组、集合或对象直接分配给成员变量object,而不需要将其转换为字符串,然后再分配给object

前端回调函数的data就是这个对象。 当然,解析json字符串。 varresponse=JSON.parse(data )。 response.status==) if ) response.object==undefined首先,您可以确定从状态代码返回的结果。 其次,由于生成方法可以不将值赋给object,所以可以在响应的数据为空时确定是否为undefined,这一点非常重要: 所有ajax请求都很费时间,而且在本地也是必需的。 一般来说,它比普通代码的执行速度慢。 运行ajax时,如果post后面带有其他方法或代码,则ajax是异步的,因此网页会继续向下运行,post后的代码会比其运行快。 解决方法之一是尽量不要在post方法之后继续写代码。 (有点极端)另一种是将后续代码放入post的回调函数中,设置后续代码的延迟并执行setTimeout,或者使用async和awiat关键字。 (详情请参阅这里。 )

当然,如果要将前端数组或对象返回到背景进行分析,也可以使用fastjson,但JSONArray类: import com.Alibaba.fast JSON.JSON array; jsonarrayjavalist=JSON array.parse array (JSON string ); //将js数组转换为java可识别的集合//用法与list基本相同,size (,get ) index ) listtusers2=JSON.parsearray ) JSONstring,T.class //此方法是将js对象转换为java中的list集合。 //但是,要响应的实体类基本上是前后交换最终数据的。 如果前端使用vue的话就很轻松了。 更新直接绑定的data值也会动态更新页面。 如果没有使用的话,就需要在jquery上自己手动操作dom。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。