a example for calling java code in javascript use dwr

package com;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class MyJdbcManager{
String driverName="com.mysql.jdbc.Driver";
String userName="";
String userPasswd="";
String dbName="";
String host ="";
String tableName="";
String url="jdbc:mysql://"+host+"/"+dbName+"?user="+userName+"&password="+userPasswd;

private static Connection conn = null;
PreparedStatement pstmt = null;
Statement stmt = null;

public   Connection getConnection() throws SQLException, Exception{
if(null == conn){
Class.forName(driverName).newInstance();
conn =DriverManager.getConnection(url);
}
return conn;
}

public  String getData() throws SQLException {
StringBuffer reString = new StringBuffer("<tr><td>ID</td><td>DATA</td><td>TIME</td></tr>");
String sql = "SELECT * FROM " + tableName;
ResultSet rs;
try {
rs = getConnection().createStatement().executeQuery(sql);
} catch (Exception e) {
return "";
}
while (rs.next()) {
reString.append("<tr><td>"+rs.getString(1)+ " </td><td> "+rs.getString(2)+" </td><td> "+rs.getString(3)+"</td></tr>");
}
return reString.toString();
}

public boolean insertData(String data) throws Exception{
String sql="INSERT INTO "+tableName +" (data) VALUES (?)";
try{
pstmt = getConnection().prepareStatement(sql);
pstmt.setString(1, data);
pstmt.execute();
System.out.println("Insert data:[" +data +"] Success");
return true;
}
catch(Exception e){
return false;
}
finally
{
try {
if (stmt != null)
stmt.close();
if (pstmt != null)
pstmt.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

}


JSP

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ page contentType="text/html; charset=gb2312" %>
<%@ page language="java" %>


<body οnlοad="getData()">


<script type='text/javascript' src='/mydata/dwr/engine.js'></script>
<script type='text/javascript' src='/mydata/dwr/interface/MyJdbcManager.js'></script>
<script type='text/javascript' src='/mydata/dwr/util.js'></script>
<script type="text/javascript">


function insertData(){
var data = document.getElementById("dataid").value;
MyJdbcManager.insertData(data,callback);
}


function callback(msg){
if(msg){
location.reload();
}
else{
alert("insert data fail");
}
}
function callback2(data){
document.getElementById("table_id").innerHTML=data;
}

function getData(){
MyJdbcManager.getData(callback2);
}

</script>

<form>
<table id="table_id">
</table>
<table>
<tr>
<td>data:</td>
<td><input type="text" id="dataid" value="default value"></td>
<td><input type="button" value="submit" οnclick="insertData()"></td>
</tr>
</table>
</form>

</body>

dwr.xm

web.xml ...

参考http://directwebremoting.org/dwr/introduction/getting-started.html


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值