再写struts2出现的简单问题

ska8sks 2008-05-07 01:45:51
就是运行jsp页面的时候,想让他直接加载数据.

可是出现了死循环....

当我加载界面的时候我用
<body onload="javascript:load()">
去调用查询数据的东西
function load()
{
document.location.href="find.action";

}

可是再struts2的配置文件中
又是这么写的
<action name="find" class="dayu.action.DayuAction" method="find">
<result>/dayu/dayuList.jsp</result>
</action>

导致出现了死循环.

界面加载调用方法,可是方法调用完以后,又去加载界面....不断循环.有什么好的方法,不出现循环吗
...全文
80 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sjs8sus 2008-05-08
  • 打赏
  • 举报
回复
没找到,有什么好的参考价值...
nanjg 2008-05-08
  • 打赏
  • 举报
回复
你参照这个去写http://www.javajsp.net/java/JavaFAQ/JavaExpression/200607/316.html
<%@  page  contentType="text/html;  charset=GB2312"    
import="java.sql.*"%>
<%!
Connection con = null;
Statement stmt = null;
ResultSet rs = null;

public void jspInit()
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//载入驱动程式类别

con = DriverManager.getConnection("jdbc:odbc:BookDB1");
//建立数据库连线

stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
//建立Statement物件, 并设定记录指标类型为可前後移动
}
catch(Exception ex)
{
System.out.println(ex.toString());
}
}

public void jspDestroy()
{
try
{
stmt.close(); //关闭Statement物件
con.close(); //关闭Connection物件
rs.close(); //关闭ResultSet物件
}
catch(Exception ex)
{
System.out.println(ex.toString());
}
}
%>
<HTML>
<HEAD>
<TITLE>利用SQL语句删除数据</TITLE>
</HEAD>
<BODY>
<CENTER>
<FONT SIZE = 5 COLOR = blue>利用SQL语句删除数据</FONT>
</CENTER>
<HR>
<%
String BID = request.getParameter("tbxBookID");
//取得tbxBookID栏位传出的数据

//判断是否可取得表单中指令按钮的传出值
//若未取得则建立表单供使用者输入查询数据
//若已取得数据, 则进行数据的删除
if(BID == null)
{
rs = stmt.executeQuery("SELECT * FROM BookDel");
//开启ResultSet物件
%>
<TABLE bgcolor=DodgerBlue>
<TR bgcolor=DeepSkyBlue>
<TD><B>书籍编号</B></TD><TD><B>书 名</B></TD>
</TR>
<%
//利用while回圈配合next方法将数据表中的记录列出
while(rs.next())
{
%>
<TR>
<TD bgcolor = LightGoldenrodYellow><B>
<%= rs.getString("BookID") %></B></TD>
<TD bgcolor = LightGoldenrodYellow><B>
<%= rs.getString("Title") %></B></TD>
</TR>
<%
}
%>
</TABLE><P></P>
<P><FONT SIZE = 4 COLOR = red>请输入欲进行数据删除的书号
</FONT></P>
<FORM action="SQLDel.jsp" method=POST name=form2>
<INPUT type="text" name=tbxBookID>
<INPUT type="submit" value="删除" name=submit1>
</FORM>
<%
}
else
{
String strSQL = "SELECT * FROM BookDel WHERE " +
"BookID = '" + BID + "'";
//建立查询书籍数据的SQL字串

rs = stmt.executeQuery(strSQL); //建立ResultSet物件

//判断是否执行next方法即传出false
//是则代表找不到符合条件的记录
if(!rs.next())
{
%>
<CENTER>
<P>找不到书号为
<FONT SIZE = 4 COLOR = red>
<%= BID %>
</FONT>的书籍, 无法进行数据的删除<P>
<%
}
else
{
String strDel = "DELETE * FROM BookDel WHERE " +
"BookID = '" + BID + "'";
//删除数据的SQL语句

stmt.executeUpdate(strDel); //执行删除动作

rs = stmt.executeQuery("SELECT * FROM BookUpd");
//重新开启记录集物件取得BookDel数据表中的数据
%>
<TABLE bgcolor=DodgerBlue>
<TR bgcolor=SkyBlue>
<TD><B>书籍编号</B></TD><TD><B>书 名</B></TD>
<TD><B>作 者</B></TD>
</TR>
<%
//利用while回圈配合next方法将数据表中的记录列出
while(rs.next())
{
%>
<TR>
<TD bgcolor = LightGoldenrodYellow><B>
<%= rs.getString("BookID") %></B></TD>
<TD bgcolor = LightGoldenrodYellow><B>
<%= rs.getString("Title") %></B></TD>
<TD bgcolor = LightGoldenrodYellow><B>
<%= rs.getString("Author") %></B></TD>
</TR>
<%
}
%>
</TABLE>
<%
}
%>
<P><A HREF = SQLDel.jsp>还要删除</A></P></CENTER>
<%
}
%>
</BODY>
</HTML>
w111222j 2008-05-08
  • 打赏
  • 举报
回复
呵呵

新手,还学习了
nanjg 2008-05-07
  • 打赏
  • 举报
回复
覆盖JspPage接口的jspInit方法 来写这个函数 就不能死循环了
s_liangchao1s 2008-05-07
  • 打赏
  • 举报
回复
action转页面时传个参数 用参数判断是否执行load()

81,114

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧