struts2-dojo-plugin-2.1.6.jar二、應(yīng)用名ajax,包名ajax.noFresh,類名AjaxNoFresh.java
AjaxNoFresh.java代碼如下:
package ajax.noFresh;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import ajax.entity.User;
import com.hx.qpxnet.util.JdbcUtil;
import com.opensymphony.xwork2.ActionSupport;
public class AjaxNoFresh extends ActionSupport {
static Connection conn=JdbcUtil.getConnection();
Statement sta=null;
ResultSet rs=null;
private List list=null;
private int id;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public List getList() {
return list;
}
public void setList(List list) {
this.list = list;
}
public String execute() throws Exception{
sta=conn.createStatement();
conn.setAutoCommit(false);
String sql="select id,username,password from fjjuser";
rs=sta.executeQuery(sql);
User user =null;
list = new ArrayList();
while(rs.next()){
user = new User();
user.setId(rs.getInt(1));
user.setUsername(rs.getString(2));
user.setPassword(rs.getString(3));
list.add(user);
}
conn.commit();
return SUCCESS;
}
public String delete()throws Exception{
sta=conn.createStatement();
conn.setAutoCommit(false);
String sql="delete from fjjuser where id="+id;
sta.executeUpdate(sql);
conn.commit();
return SUCCESS;
}
}
三、xml代碼如下:
<struts>
<package name="ajaxdemo.action" extends="struts-default">
<action name="ajaxno" class="ajax.noFresh.AjaxNoFresh">
<result>/AjaxNoFresh1.jsp</result>
</action>
<action name="delete" class="ajax.noFresh.AjaxNoFresh" method="delete">
<result type="redirectAction">show</result>
</action>
<action name="show" class="ajax.noFresh.AjaxNoFresh">
<result>/AjaxNoFresh2.jsp</result>
</action>
</package>
</struts>
四、jsp頁面
AjaxNoFresh1.jsp代碼:
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>顯示所有用戶</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<script type="text/javascript"
src="${pageContext.request.contextPath}/js/prototype.js"></script>
<script type="text/javascript"
src="${pageContext.request.contextPath}/js/application.js"></script>
</head>
<body>
<div id="div_ajaxNoFresh2">
<s:include value="AjaxNoFresh2.jsp"/>
</div>
</body>
</html>
AjaxNoFresh2.jsp
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<body>
<table border="1" align="center">
<tr>
<td>id</td>
<td>username</td>
<td>password</td>
<td>delete</td>
</tr>
</br>
<s:iterator value="list" status="stats">
<tr>
<td><s:property value="id"/></td>
<td><s:property value="username"/></td>
<td><s:property value="password"/></td>
<td>
<!-- <a href="/ajax/delete.action?id=<s:property value="id"/>">delete</a> -->
<s:a href="javascript:deleteUser(%{id})">delete</s:a>
</td>
</tr>
</br>
</s:iterator>
</table>
</body>
</html>
application.js
function deleteUser(id){
var url = "delete.action?id="+id;
new Ajax.Updater (
'div_ajaxNoFresh2',
url,
{
onLoading:function (){
},
onSuccess:function (request) {
alert('刪除成功');
},
onFailure:function (request) {
alert("服務(wù)器故障,請稍候重試");
}
}
);
}