日期:2014-05-17  浏览次数:20626 次

怎么在jsp页面里,点击一个按钮后向数据库插入数据?
在jsp里建立与数据库的来连接和执行sql语句我会,我就是不知道怎么监听按钮点击事件。

公司的程序是ssh的,我就是在这个基础上加个页面。也可以不用ssh结构的,就在这个jsp页面里,执行插入一条记录的按钮就可以。

------解决方案--------------------
按钮请求后台,在后台调用 service 在调用dao
------解决方案--------------------
在onclick事件里调用ajax,可以执行SQL语句。
但这样传参数太多,不如直接走form提交调用struts
------解决方案--------------------
一定要用按钮吗? <a\> 连接可能已完成你说的功能
------解决方案--------------------
http://blog.csdn.net/cai5/article/details/6565523

看看这个 ,ssh CRUD操作
------解决方案--------------------
弄成form比较方便,我就是这么做的....
------解决方案--------------------
JScript code

<script type="text/javascript" language="javascript">
function submitForm(){
  var form=document.getElementById("form对象的id");  
  form.action="后台业务逻辑支持地址";
  form.submit();
}
</script>

------解决方案--------------------
JAVA代码。。除非万不得以。。有一点办法。。都不也写在JSP里。还是走正常流程写吧。
------解决方案--------------------
首先在后台定义一个类和方法:
import org.directwebremoting.annotations.RemoteMethod;
import org.directwebremoting.annotations.RemoteProxy;
import com.core.manager.UserMng;

/**用户管理DWR*/
@RemoteProxy(name="userDwr")
public class UserDwr {

@Autowired
private UserMng userMng;

/**
* 插入用户记录
* @param user 用户对象
* @return String
* */
@RemoteMethod
public String addUser(User user) {
user = userMng.save(user);
if (null != user.getId()) {
return "插入用户数据成功!";
}
return "操作失败!";
}

}

然后在jsp写一个function:
function addUser() {
var user = {userName:"zhangsan",password:"zhangsan",realName:"张三",sex:"男"};
userDwr.addUser(user, function(result) {alert(result);});
}

最后在你的按钮中调用这个function:
<input type="button" value="保存" class="button" onclick="addUser()" />

经过这几步后,你会很惊奇的发现,数据库已经多了一条记录。