ssh中前后台的数据交互
一.首先说下前台传数据到后台的方式
1.模型驱动:
在Action里面实现模型驱动User类,再实现setter和getter方法,当提交表格或者在url里面传值(参数要和表格里面的属性名一样,比如在用ajax异步请求是url参数username和表格里面的属性名一样),然后action那边就可以通过user.username拿到,和下面的方法不一样。
2.属性驱动:
在url中传参数,例如abc=1,然后在action中实例这个属性,并设置setter和getter方法,可以拿到这个值,form表格也一样,提交表格的时候输入框里面的属性名在action中实例化和setter,getter。
3.实体类驱动:
和第二稍稍不同,这里将表格里面的属性封装到一个实体类中,然后实例化实体类,再用实体类中的属性来获取从前台表格传来的数据
二.从后台传到前台
1.一般这里说的是从action到jsp的,从dao中查询到后,一般可以存到值栈中。
ActionContext.getContext().getValueStack().set("pb", pb);
然后在jsp页面直接调用pb就可以了,不用#。
s:iterator var="p" value="pb.list"><li><a href="${pageContext.request.contextPath}/product_findByPid.action?pid=<s:property value="#p.pid"/>"/><img src="${pageContext.request.contextPath}/<s:property value="#p.image"/>" width="170" height="170" style="display: inline-block;"> <span style='color:green'> <s:property value="#p.pname" /> </span> <span class="price"> 商城价: ¥<s:property value="#p.shop_price" /></span> </a></li></s:iterator>
2.存到session中,数据在一个会话中有效,所以用户登录信息一般存在session中,还有就是比如需要在一个会话中都要显示的数据,比如一级分类等,也要保持session中,而之前的从后台回到前台页面显示的存到值栈就行了。
ServletActionContext.getRequest().getSession().setAttribute("existUser", existUser);
ServletActionContext直接继承了ActionContext,当然也继承了它父类的很多功能,它还提供了直接访问Servlet的相关对象的功能.
三.最后总结下在jsp页面显示的方法
1.action实现了模型驱动,在dao查询到返回数据之后,直接调用就行。例如下面的product就是在action中的模型驱动。
<s:property value="product.shop_price"/>
2.存到session或者值栈中后,用Struts2中的标签直接调用,这里的list就是存在session中的。用一个迭代器吧返回的列表都显示出来
<s:iterator var="c" value="#session.list"><dl><dt><a href="${pageContext.request.contextPath}/product_findByCid.action?cid=<s:property value="#c.cid"/>&page=1"><s:property value="#c.cname"/></a></dt><s:iterator var="cs" value="#c.categorysecond"><dd><a href="${pageContext.request.contextPath}/product_findByCsid.action?csid=<s:property value="#cs.csid"/>&page=1"><s:property value="#cs.csname"/></a></dd></s:iterator></dl></s:iterator>
ssh中前后台的数据交互相关推荐
- app前后台交互php_PHP丨前端网页是怎么跟后台进行数据交互的(实战)
本期需要用到的前面几期所讲过的内容: 这里是 PHP 网站开发的第三个阶段,也就是前端 HTML 及 CSS 所制作的网页是如何跟 PHP 后台代码进行交互的. 向后台提交数据 前端网页代码: 留言本 ...
- 前台和后台的数据交互
最近刚刚接手B/S的项目,涉及到了服务器从数据库中查询数据,然后根据数据拼出前台的HTML语句.下面是自己的一段路程. 从最开始自己的一个技术难点,后台拼接完了HTML语句,怎么送到前台呢?下面是关于 ...
- vue2 + vuex 高度还原 饿了么 App,与官方后台真实数据交互,获取商品信息,实现登陆、购物车、下单等功能...
前言 vue2的发布后自己也研究了一段时间,奈何公司的技术栈是以react为主,没有机会好好利用vue2去做一个完整的项目.虽然写了几个demo,但和写一个完整的项目还是有很大差别的.于是自己想着用空 ...
- php——tp5中前后端的数据交互
一般情况下会使用smarty模板引擎进行前后端分离,但是在tp框架中,应该如何进行前后端数据交互呢? 如图,这是tp5下一个自建的login模块,里头包括controller控制器,model模型和v ...
- 聊聊前端和后台的数据交互与协议
目前,除了一些特别简单非联网类应用(比如计算器.闹钟等),几乎所有的应用均是联网应用(比如新闻客户端,微信等等),这些 app 客户端基本都只是负责用户的交互与数据收集与展示,真正的数据和服务均存储在 ...
- 在EXT中前后台传数据的方式
后台向前台页面传输数据 首先在后台接口层中定义一个全局变量,用来存储结果集 private List retList; 然后在调用service层方法时,用这个变量来接收方法返回值 this.retL ...
- 使用Bootstrap-table创建表单,并且与flask后台进行数据交互
文章目录 引用css和js 使用 html javascript flask mysql 参考 引用css和js Bootstrap-table为这些文件提供了 CDN 的支持,所以不需要下载.js ...
- 微信小程序之前端与java后台进行数据交互
后台是用SpringBoot+SSM来写的,整体上来说,和普通的Web没什么区别 要注意的是,对于小程序访问的控制层方法,需要返回一个Map类型 @RequestMapping(value = &qu ...
- vue2 + vuex 高度还原 饿了么 App,与官方后台真实数据交互,实现登陆、购物车、下单等功能...
[b]前言[/b] vue2的发布后自己也研究了一段时间,奈何公司的技术栈是以react为主,没有机会好好利用vue2去做一个完整的项目.虽然写了几个demo,但和写一个完整的项目还是有很大差别的.于 ...
最新文章
- “人脸识别”是一柄双刃剑 如何趋利避害?
- 通过网页查看服务器算法,服务器使用国密(SM2/SM3/SM4)证书,通过浏览器访问
- 微信js sdk 分享 失败 有时候好 有时候坏
- python使用笔记(一)——遍历文件夹下的所有子目录
- Redis缓存雪崩、缓存穿透、热点Key解决方案和分析
- SQL JOIN,你想知道的应该都有
- 设计模式学习笔记——命令(Command)模式
- 收藏 | 从头训练深度监督目标检测
- python自动化测试报告 之 allure_Pytest+ Allure + Jenkins 自动化测试报告
- MySQL问题解决:-bash:mysql:command not found
- oracle系列(二)oracle体系结构和用户管理
- 小七揭密delphi源码免杀系列教程
- Unity 粒子特效 不受Time.deltaTime影响
- 数据分析案例(4)京东数据分析项目
- 还在迷茫?还在纠结考研还是就业?我来替你分析一下
- 【强推】8个实用的Python程序
- 【魔兽世界插件】魔兽世界插件实战笔记从入门到放弃的心理历程 第四节 窗体的移动
- MySQL中rank函数的使用
- Win10 LTSC版如何安装应用商店Microsoft Store
- 计算2个GPS坐标的距离
热门文章
- macos可以升级到指定版本吗_macOS - 如何升级 - Apple (中国大陆)
- php mysql redis mq_PHP基于Redis消息队列实现发布微博的方法
- 计算机专业主要学什么内容?
- 龙泉剑手游服务器维护,龙泉剑侠常见问题_龙泉剑侠问答_疑难解答_九游手机游戏...
- Revit在明细表中添加取整公式及导出明细表
- 企业QQ和个人QQ同时登陆方法
- linux父进程和子进程查看,linux查看父子进程
- 微信怎么做到快捷回复消息?
- 如何套用html模板文件,套用DEMO教程
- (转载)Java中关于内存泄漏出现的原因以及如何避免内存泄漏