圆月山庄资源网 Design By www.vgjia.com
使用场景:关闭页面弹窗时执行sql语句。
其实js里执行sql语句有多种方式。
方式一:直接在js代码里调用sql语句,原则上不能使用,因为这将sql直接暴露在客户端,安全性极差。
方式二:在js里运用ajax技术,调用后台方法执行sql语句。
方式三:运用dwr框架,其实是对ajax技术进行了封装。
一、首先编写一个dwr.xml文件
<"1.0" encoding="utf-8""-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://www.getahead.ltd.uk/dwr//dwr20.dtd"> <dwr> <allow> <!-- 对呼叫类型的操作 --> <create javascript="CallTypeOpDwr" creator="new"> <param name="class" value="cn.etcom.jfgl.tel.fee.callType.CallTypeOpDwr" /> <include method="addCallType" /> <include method="modifyCallType" /> <include method="deleteCallType" /> <include method="updateSp" /> </create> </allow> <!-- 用户信息管理操作中用到的map配置 --> <signatures> <![CDATA[ import java.util.List; import cn.etcom.jfgl.customer.tel.userInfo.UserInfoManageOpDwr; UserInfoManageOpDwr.addUsersInfo(String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,Map<String,String>); UserInfoManageOpDwr.addUserInfo(String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,String,Map<String,String>); ]]> </signatures> </dwr>
二、在web.xml文件里配置servlet
<!-- DWR相关配置 --> <servlet> <servlet-name>dwr-invoker</servlet-name> <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name> allowGetForSafariButMakeForgeryEasier </param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>crossDomainSessionSecurity</param-name> <param-value>false</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dwr-invoker</servlet-name> <url-pattern>/dwr/*</url-pattern> </servlet-mapping>
三、写一个普通的JAVA类
package cn.etcom.jfgl.tel.fee.callType; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletRequest; import org.json.JSONException; import org.json.JSONObject; import cn.etcom.common.utility.DBUtil; import cn.etcom.common.utility.RsHandler; import cn.etcom.common.utility.SqlActuator; import cn.etcom.common.utility.StringUtil; /******************************************************************************* * * @author 刘彦宁 2011-08-12 * */ // 处理呼叫类型的dwr public class CallTypeOpDwr { /*************************************************************************** * DWR 方法,执行存储过程。 * */ public String updateSp() { String sql = "exec Pub_Sp_UpdateFieldMemo "; Connection conn = DBUtil.getConnection(); PreparedStatement psmt = null; try { psmt = conn.prepareStatement(sql); psmt.setString(1, "CALL"); boolean a = psmt.execute(); DBUtil.close(null, psmt, conn); conn = DBUtil.getConnection(); psmt = conn.prepareStatement(sql); psmt.setString(1, "USER"); boolean b = psmt.execute(); System.out.println(a); System.out.println(b); System.out.println("关闭弹窗执行存储过程 "+sql); } catch (SQLException e) { e.printStackTrace(); }finally { DBUtil.close(null, psmt, conn); } return null; } }
四、写一个JSP页面,主要导入engine.js和相应的java类映射的js文件,然后编写js即可调用
//以下为jsp的引入js文件部分 <script type="text/javascript"> //设置根路径,放在 tab.js 前 var glbRootPath = "<%=basePath%>"; </script> <script src="/UploadFiles/2021-04-02/lhgcore.min.js">五、js文件里调用后台代码
var basePath = ""; if(typeof(glbRootPath) != "undefined"){ basePath = glbRootPath; document.write("<script type='text/javascript' src='"+basePath+"\/dwr\/engine.js'><\/script><script type='text/javascript' src='"+basePath+"\/dwr\/interface\/CallTypeOpDwr.js'><\/script>"); } /* 中间省略若干代码 */ . . . if(typeof(glbRootPath) != "undefined"&&$(this).parent().children().eq(0).text()=="呼叫类型设置"){ console.log("进来了"); DWREngine.setAsync(false); CallTypeOpDwr.updateSp(); }以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
标签:
js脚本,执行,java后台代码
圆月山庄资源网 Design By www.vgjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
圆月山庄资源网 Design By www.vgjia.com
暂无评论...
更新日志
2024年12月25日
2024年12月25日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]