但是一般不这么做,因为你这么做不方便控制作弊,和中奖概率。还有JS控制抽奖很容易就能作弊。
我之前做过的一个抽奖项目是这样的:抽奖程序(抽奖界面)用flash来写,这样既方便作弊也能控制中奖概率,同时更安全,JAVA后台提供抽奖名单,中奖概率等数据,抽奖程序调用java的API获得抽奖数据,这里需要在后台对抽奖信息进行加密,我们使用的是base64加密(方便反向解密),然后由用户点击flash抽奖界面抽奖,中奖后,同样使用base64加密中奖信息,发送到java后台,然后保存在DB,同时后台程序发送中奖信息给用户。
初学的时候,这样写:首先,你上面所说的东西,是完全可以写在同一个 Servlet 里面的,你可以在一个 Servlet 里面写上所有的程序,以及计算程序等。
但是,当你写完后,你后面就会懂得如何写 Servlet 了,但是,如果每一个 Servlet 都是这样写上全部方法的话,到时,如果你要建多个 Servlet 了,就会很麻烦,于是,你就会开始有新想法了。
新想法(标准做法)就是,把 Servlet 里面调用数据库的部分单独写成一个独立的 Java 程序,再把 Servlet 里面计算中奖的程序也写成一个独立的程序,这样,当有很多个 Servlet 都需要调用到数据库或中奖程序的时候,只需要写几行简单的调用就可以。
这个就是初学时的过程。
所谓sql注入就是有些数据需要用户输入提交给后端,而后端又是采用拼字符串的形式组成的sql语句,这样很容易被sql注入,这样输入的数据可以把sql中加上一些sql的符号,比如分号 单引号加上sql的and or等符号把你的sql改掉,这是sql注入所以关键不是使用jsp和使用servlet的区别,是有没有用户提交和后段是否是拼接的字符串
因为是抽奖所以不存在使用用户输入的数据对数据库 *** 作,所以不会有sql注入问题
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)