上一节我们做好了支付页面的显示,从上一节支付页面显示的jsp代码中可以看出,当用户点击确认支付时,会跳到${shop}/pay_goBank.action的action,也就是说,提交后我们得在payAction中的goBank方法中处理一些逻辑(即21节demo中的那个流程图的逻辑),即获得明文,将明文加密成签名(密文)然后再去访问易宝服务器,易宝连接银行,完成支付。
但是考虑到MVC设计模...
分类:
其他好文 时间:
2016-05-22 12:34:43
阅读次数:
187
上一节我们完成了在线支付功能,但是支付完成了还没结束,我们需要接收从第三方那边反馈回来的信息,比如成功支付后,我们需要给付款方发送邮件和短信等。所以我们还需要在payAction中获取从第三方传过来的参数,由于从第三方传过来的参数与我们传过去的参数是不同的,所以接收那些参数我们也得写一个Model(BackData),那么问题来了,我们的PayAction已经写成这样子了:public class...
分类:
其他好文 时间:
2016-05-21 17:43:13
阅读次数:
161
从上一节的小demo中我们搞清楚了如何跟易宝对接以及易宝的支付流程。这一节我们来做一下支付页面以及在页面中导入银行图标。1. 存储银行图标 银行图标一般不会总是去加载,因为这写东西是死的,没必要每次进入支付页面就去加载银行图标,这样性能会受到一定的影响。这让我们联想到了之前的加载首页数据了,其实跟那个道理是一样的,我们可以在项目启动的时候就将银行图标资源加载到application中,后面用到了就...
分类:
其他好文 时间:
2016-05-19 15:13:24
阅读次数:
284
购物车这一块还剩最后两个问题,就是订单信息的级联入库和页面缓存,这里的信息是指购物车和购物项,即我们将购物车的信息存入数据库的同时,也存入每个购物项的信息,而且外键都关联好,这涉及到了Hibernate中的级联入库问题;页面缓存问题指的是当用户确认了订单后,如果点后退,又会回到订单确认页面,刚刚的订单确认页面又出来了,而且session还在,信息还是刚刚的信息,这明显不是我们想要的结果,我们会在后...
分类:
其他好文 时间:
2016-05-18 18:12:44
阅读次数:
238
之前已经完成了首页的显示,用户添加购物车,确认订单等功能,下面就是支付功能的开发了。用户确认了订单后会直接跳转到支付页面进行在线支付,在线支付需要第三方的接口,这一节主要介绍一些关于第三方支付的内容,从下一节开始,我们真正开发在线支付模块。
1. 在线支付介绍
在线支付是指卖方与买方通过因特网上的电子商务网站进行交易时,银行为其提供网上资金结算服务的一种业务。它为企业和个人提供了一个安...
分类:
其他好文 时间:
2016-05-18 18:08:00
阅读次数:
225
上一节我们做完了购物车的基本操作,但是有个问题是:当用户点击加入购物车时,我们应该做一个登录的判断,判断用户有没有登录,没有登录的话,得首先让用户登录。
过滤器:专门拦截页面的请求
拦截器:专门拦截Action的请求...
分类:
其他好文 时间:
2016-05-17 21:21:39
阅读次数:
415
上一节我们将商品的详细页面做完了,并使用了Hibernate的二级缓存加载详细页面来提高系统的性能。这节我们开始做购物车部分。
1. 添加新的表
首先我们向数据库中添加几张表:用户表、订单状态表、订单表(购物车表)以及购物项表。用户表中存有用户的基本信息,订单状态表中主要存储订单的状态,比如已发货这种,订单表主要存储用户的信息和订单的状态,所以跟用户表和订单状态表关联,购物项表...
分类:
其他好文 时间:
2016-05-16 15:51:28
阅读次数:
178
网上商城首页都有热门商品,那么这些商品的点击率是很高的,当用户点击某个热门商品后需要进入商品的详细信息页面,就像淘宝里面那样。那么每次点击都要去后台查询一下该商品的详细信息,就会发送相应的sql语句,每次刷新一下详细页面也会发sql语句,这样的话,性能肯定会受到很大的影响。那么使用Hibernate的二级缓存就可以解决这个问题。
有些人可能会想,我们可以使用重定向,这样的话,在用...
分类:
Web程序 时间:
2016-05-15 19:50:28
阅读次数:
213
前面我们利用EasyUI和SSH搭建好了后台的基本框架,做好了后台的基本功能,包括对商品类别的管理和商品的管理等,这一节我们开始搭建前台页面。
做首页的思路:假设现在商品的业务逻辑都有了,首先我们需要创建一个监听器,在项目启动时将首页的数据查询出来放到application里,即在监听器里调用后台商品业务逻辑的方法。
1. 创建InitDataListener获取首页数据...
分类:
其他好文 时间:
2016-05-15 00:42:01
阅读次数:
228
上一节我们做完了添加和更新商品的功能,这两个部分里有涉及到商品图片的上传,并没有详细解说。为此,这篇文章详细介绍一下Struts2实现文件上传的功能。
1. 封装文件信息
我们首先得有一个Model来封装文件的信息,这个Model里需要有三个属性:文件、文件类型和文件名。针对我们要传的图片,我们新建一个Model如下:
public class FileImage {
...
分类:
Web程序 时间:
2016-05-14 14:08:19
阅读次数:
203