- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试将数据显示到多个页面中。我不确定我在这里做错了什么。有人可以让我知道我在这里做错了什么吗?我可以在一页中获取所有数据,但无法将其放入多页中。谢谢
我的 Employee jsp 页面如下所示
<script>
function setPageName() {
document.EmployeeList.pageName.value="Employee";
document.EmployeelList.submit();
}
</script>
<BODY text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000" onload="setPageName()">
<FORM NAME="EmployeeList" METHOD=POST ACTION="EmployeeServlet">
<INPUT TYPE=HIDDEN NAME="noRowsOnPage" VALUE="<%= empBean.getNoRowsOnPage()%>">
<INPUT TYPE=HIDDEN NAME="beginRowNumOnPage" VALUE="<%= empBean.getBeginRowNumOnPage()%>">
<INPUT TYPE=HIDDEN NAME="endRowNumOnPage" VALUE="<%= empBean.getEndRowNumOnPage()%>">
<%
Collection dtlItems = empBean.getDetailItems();
Iterator it = dtlItems.iterator();
int i = 0;
String colorStr = null;
while(it.hasNext()){
EmployeeItemBean empDtlItem = (EmployeeItemBean) it.next();
}
%>
<TR>
<TD ><%= auditemailDtlItem.getSeqNoHTML()%></TD>
<TD><%= auditemailDtlItem.getAuditorName()%> </TD>
<TD><%= auditemailDtlItem.getEmail()%></TD>
</TR>
<%
i++;
} %>
<TR>
<TD align="center">
<% if(empBean.getBeginRowNumOnPage() == 1 || empBean.getBeginRowNumOnPage() == 0) {%>
<INPUT TYPE=SUBMIT NAME="action" VALUE="First" disabled>
<INPUT TYPE=SUBMIT NAME="action" VALUE="Prev" disabled>
<%} else {%>
<INPUT TYPE=SUBMIT NAME="action" VALUE="First">
<INPUT TYPE=SUBMIT NAME="action" VALUE="Prev">
<%} %>
<% if(empBean.getEndRowNumOnPage() == empBean.getTotalRowCount()) {%>
<INPUT TYPE=SUBMIT NAME="action" VALUE="Next" disabled>
<INPUT TYPE=SUBMIT NAME="action" VALUE="Last" disabled>
<%} else {%>
<INPUT TYPE=SUBMIT NAME="action" VALUE="Next">
<INPUT TYPE=SUBMIT NAME="action" VALUE="Last">
<%} %>
</TD>
</TR>
</TABLE>
我的 servlet 看起来像这样:
public class EmployeeServlet {
public void defaultAction(HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException
{
EmployeeWebBean ewBean = new EmployeeWebBean();
ewBean.initializePage();
ewBean.retrieveSessionData(request);
ewBean.retrieveSubmitData(request, response);
ewBean.determineAction();
ewBean.processActions();
ewBean.populateModelBean();
ewBean.dispatchToJSP(this, request,response);
return;
}
}
我的employeeWebBean看起来像这样,所有处理都发生在其中:
private final static int ACTION_INITIAL_LOAD = 0;
private final static int ACTION_GO = 1;
private final static int ACTION_PREV = 2;
private final static int ACTION_NEXT = 3;
private final static int ACTION_FIRST = 4;
private final static int ACTION_LAST = 5;
private final static int PREV = 0;
private final static int NEXT = 1;
private final static int FIRST = 2;
private final static int LAST = 3;
public void initializePage()
{
_empBean = new EmployeeBean();
_actionPick = ACTION_INITIAL_LOAD;
_clkAction = new String();
_beginRowNumOnPage = 0;
_endRowNumOnPage = 0;
}
public void determineAction()
{
if(_clkAction != null){
if(_clkAction.indexOf("Go") != -1)
_actionPick = ACTION_GO;
else if (_clkAction.indexOf("Next") != -1)
_actionPick = ACTION_NEXT;
else if (_clkAction.indexOf("Prev") != -1)
_actionPick = ACTION_PREV;
else if (_clkAction.indexOf("First") != -1)
_actionPick = ACTION_FIRST;
else if (_clkAction.indexOf("Last") != -1)
_actionPick = ACTION_LAST;
else
_actionPick = ACTION_INITIAL_LOAD;
}
}
public void retrieveSessionData(HttpServletRequest request)
{
HttpSession session = request.getSession();
if (session.getAttribute("pageName") != null)
_sessPageName = (String) session.getAttribute("pageName");
_empBean.setPageName(_sessPageName);
}
public void retrieveSubmitData(HttpServletRequest request,HttpServletResponse response)
{
_clkAction = request.getParameter("action");
String _tempString = new String();
_tempString = request.getParameter("actionLink");
this.determineAction();
_tempString = request.getParameter("noRowsOnPage");
if (_tempString != null)
_noRowsOnPage = Integer.valueOf(_tempString).intValue();
else
_noRowsOnPage = 0;
_tempString = request.getParameter("beginRowNumOnPage");
if (_tempString != null)
_beginRowNumOnPage = Integer.valueOf(_tempString).intValue();
else
_beginRowNumOnPage = 0;
_tempString = request.getParameter("endRowNumOnPage");
if (_tempString != null)
_endRowNumOnPage = Integer.valueOf(_tempString).intValue();
else
_endRowNumOnPage = 0;
_pageName = request.getParameter("pageName");
if (_actionPick == ACTION_GO || _actionPick == ACTION_PREV || _actionPick == ACTION_NEXT || _actionPick == ACTION_FIRST
|| _actionPick == ACTION_LAST)
{
_hdTxnType = request.getParameter("hdTxnType");
_cbEmployee = request.getParameter("cbEmployee");
_cbSort = request.getParameter("cbSort");
_tbSearchVar = request.getParameter("tbSearchVar").trim();
}
if (_actionPick == ACTION_INITIAL_LOAD) {
_cbEmployee = new String("1");
_cbSort = new String("1");
}
}
public void populateModelBean()
{
_empBean.setTxnType(_hdTxnType);
_empBean.setSelectedEmployee(_cbEmployee);
_empBean.setSearchVar(_tbSearchVar);
_empBean.setSelectedSort(_cbSort);
_empBean.setActionPick(_actionPick);
_empBean.setPageName(_sessPageName);
}
public boolean initialPage()
{
if(_actionPick == ACTION_INITIAL_LOAD)
return true;
else
return false;
}
public void dispatchToJSP(EmployeeServlet employeeServlet, HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html");
RequestDispatcher dispatcher = null;
// Put the object into request object to pass to JSP
request.setAttribute("empBean", _empBean);
if (_pageName == null || _pageName.trim().length() == 0 || _pageName.equals("Employee")){
dispatcher = employeeServlet.getServletContext().getRequestDispatcher("/EmployeeList.jsp");
}
dispatcher.include(request, response);
}
public void processActions()
{
switch(_actionPick)
{
case ACTION_INITIAL_LOAD:
_empBean.getList(FIRST, 0, 0, _pageName,
_userProfile.getUserId().trim());
case ACTION_GO:
_empBean.setSearchVar(_tbSearchVar);
_empBean.setSelectedEmployee(_cbEmployee);
_empBean.setSelectedSort(_cbSort);
_empBean.clearAllDtlItem();
_empBean.getList(FIRST, 0, 0, _pageName,
_userProfile.getUserId().trim());
break;
case ACTION_PREV:
_empBean.setSearchVar(_tbSearchVar);
_empBean.setSelectedEmployee(_cbEmployee);
_empBean.setSelectedSort(_cbSort);
_empBean.clearAllDtlItem();
_empBean.getList(PREV, _beginRowNumOnPage,
_endRowNumOnPage, _pageName, _userProfile.getUserId().trim());
break;
case ACTION_NEXT:
_empBean.setSearchVar(_tbSearchVar);
_empBean.setSelectedEmployee(_cbEmployee);
_empBean.setSelectedSort(_cbSort);
_empBean.clearAllDtlItem();
_empBean.getList(NEXT, _beginRowNumOnPage,
_endRowNumOnPage, _pageName, _userProfile.getUserId().trim());
break;
case ACTION_FIRST:
_empBean.setSearchVar(_tbSearchVar);
_empBean.setSelectedEmployee(_cbEmployee);
_empBean.setSelectedSort(_cbSort);
_empBean.clearAllDtlItem();
_empBean.getList(FIRST, _beginRowNumOnPage,
_endRowNumOnPage, _pageName, _userProfile.getUserId().trim());
break;
case ACTION_LAST:
_empBean.setSearchVar(_tbSearchVar);
_empBean.setSelectedEmployee(_cbEmployee);
_empBean.setSelectedSort(_cbSort);
_empBean.clearAllDtlItem();
_empBean.getList(LAST, _beginRowNumOnPage,
_endRowNumOnPage, _pageName, _userProfile.getUserId().trim());
break;
default:
break;
}
我有 EmployeeBean,我可以在其中获取所有数据
public java.util.Vector getList(int mode, int firstRow, int lastRow, String pageName, String userID) {
java.util.Vector myEmployeeList = new java.util.Vector();
StringBuffer sql = new StringBuffer();
DbUtil db = null;
ResultSet rset = null;
int rowsToBeFeched = MAX_NUM_ROWS_IN_PAGE;
int preserveFirstRow = 0;
int preserveLastRow = 0;
try
{
db = new DbUtil();
sql.append("SELECT id_no, name, email ");
if ((this.getSelectedColumn() != null)&& (this.getSelectedColumn().equals("1"))){
sql.append(" from employee ");
}
if ((this.getSelectedColumn() != null)&& (this.getSelectedColumn().equals("2"))){
sql.append(" from employee ");
sql.append(" where id_no = '");
sql.append(this.getSearchVar());
sql.append("'");
}
if (this.getSelectedSort() != null) {
if(this.getSelectedSort().equals("1"))
sql.append(" ORDER BY id_no");
else if(this.getSelectedSort().equals("2"))
sql.append(" ORDER BY name");
else
sql.append(" ORDER BY id_no");
} else
sql.append(" ORDER BY id_no");
rset = db.executeQuery(sql.toString(),true);
rset.last();
int _totalRows = rset.getRow();
this.setTotalRowCount(_totalRows);
rowsToBeFeched = MAX_NUM_ROWS_IN_PAGE;
if (firstRow < rowsToBeFeched) {
preserveFirstRow = 0;
} else {
preserveFirstRow = firstRow - rowsToBeFeched;
}
if (lastRow < 2 * rowsToBeFeched) {
preserveLastRow = rowsToBeFeched;
} else {
preserveLastRow = lastRow - rowsToBeFeched;
}
rowsToBeFeched = _totalRows;
rset.beforeFirst();
if (mode == FIRST) {
this.setBeginRowNumOnPage(1);
} else if (mode == LAST) {
if (_totalRows <= rowsToBeFeched)
this.setBeginRowNumOnPage(1);
else {
rset.last();
rset.relative(0 - rowsToBeFeched);
this.setBeginRowNumOnPage(rset.getRow() + 1);
}
} else if (mode == NEXT) {
if (_totalRows <= rowsToBeFeched)
this.setBeginRowNumOnPage(1);
else {
rset.absolute(lastRow);
this.setBeginRowNumOnPage(rset.getRow() + 1);
}
} else if (mode == PREV) {
if (firstRow <= (rowsToBeFeched + 1)) {
this.setBeginRowNumOnPage(1);
rset.beforeFirst();
} else {
rset.absolute(firstRow - rowsToBeFeched - 1);
this.setBeginRowNumOnPage(rset.getRow() + 1);
}
}
clearAllDtlItem();
if (rset != null) {
int i = 0;
while(rset.next() && i < rowsToBeFeched) {
EmployeeBean myEmployee = new EmployeeBean();
myEmployee.setIdNo(rset.getString(1).trim());
myEmployee.setName(rset.getString(2));
myEmployee.setEmail(rset.getString(3));
myEmployeeList.addElement(myEmployee);
}
Enumeration e = myEmployeeList.elements();
while (e.hasMoreElements()) {
EmployeeBean nextEmployee = (EmployeeBean) e.nextElement();
this.addDtlItem(nextEmployee.getIdNo(), nextEmployee.getName(), nextEmployee.getEmail());
}
i++;
}
setEndRowNumOnPage(getBeginRowNumOnPage() + getNbrDtlItems() - 1);
if (preserveFirstRow == 0) {
mode = FIRST;
} else {
mode = NEXT;
}
getList( mode, preserveFirstRow, preserveLastRow, "Employee", userID);
}
public void addDtlItem(String idNo, String name, String email )
{
EmployeeItemBean detailItem = new EmployeeItemBean(idNo, name, email );
_dtlListArray.add(detailItem);
}
最佳答案
关于JavaBean Servlet Jsp 分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7234408/
两个学期前,我有一位教授说: Some of you have been told to always include setter and getter methods for all privat
我遇到了一些问题,我希望有人能知道我可以从哪里开始提出解决方案。我需要在程序执行期间动态创建 JavaBean 或 JavaBean 属性。我从数据库中检索列名,然后从特定表中选择这些值,并且我需要能
我想将大量 bean 的属性从一个 JavaBean 复制到另一个。我查看了 Apache Commons BeanUtils .但问题是它希望两个 bean 中的属性名称相同。无法提供映射。 例如在
我在设置一个属于另一个 bean 的 bean 并使其正确更新时遇到问题。更具体地说,我有: public class MyForm extends javax.swing.JFrame {
嘿那里!这只是一个一般性的询问.. 到目前为止,我有一个 servlet,它发送调度操作,许多 JSP 文件.. 但我的问题是 - 像 flickr 这样的典型 Web 应用程序有多少个 javabe
是否有一个实用程序可以创建一个 bean(它具有简单的 String 属性,其名称与 HashMap keys 匹配)给定 bean 类作为输入以及正确设置的 hashmap? 谢谢,阿米特 最佳答案
测试环境:netbeans7.11 + glassfish 3.11这是jsp,类代码: JSP Page
问题:哪些方法使用访问器和修改器的 JavaBeans 命名约定? 上面的代码是正确答案之一: public getNumWings() {return numberWings;} 我检查了 bean
问题 按照我的理解: “Bean” 是一个带有属性和getters/setter方法的Java类。它是不是和C的结构体是相似的呢,对吗?一个“Bean”类与普通的类相比是不是语法的不同呢?还是有特殊的
我不确定我是否正确地标记了这个问题。但我想做的是将 Javabean 映射为我拥有的输入。除了 Bean 包含一个我想要映射到的复杂类型属性(具体来说,我想映射到它的一个属性)。我用代码来解释一下。我
所以我正在做一个小人项目,但遇到了问题。我希望在页面加载时按字母顺序加载信息,但我不知道该怎么做,有什么建议吗?谢谢。这已从之前的内容更新。
有谁知道一个免费的开源库(实用程序类),它允许您比较一个 Java bean 的两个实例并返回一个属性列表/数组,这两个实例的值不同?请发布一个小样本。 干杯 托马斯 最佳答案 BeanCompara
在我的修订列表的 JavaBean 部分中,它声明我应该知道“属性和特性之间的区别”。我真的找不到两者之间的区别。我知道 JavaBeans 使用属性,而普通 Java 类使用属性(或者至少我被教导如
我对 JavaBeans 模式的憎恨就像一千个太阳的火焰一样燃烧。为什么? 冗长。现在是 2009 年。我不应该为一个属性写 7 LOC。如果他们有事件监听器,请捕获你的帽子。 没有类型安全的引用。没
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 7 年前。
我无法找出如何正确地将 JavaBean DS 传递到子子报表。我有以下 Java 代码: JRDataSource javaBeansKapitelDS = new JRBeanColle
我正在为我的桌面 Java 应用程序寻找重要的验证支持。 在JavaEE6中有一个新的validation model 。有没有办法在桌面应用程序中使用它? 最佳答案 我个人没有在纯Java SE环境
我是否应该在 javabean 中声明一个属性,该属性保存用户在 HTML 表单上键入的日期值(字符串或日期)? 我觉得我应该声明为日期,但是,因为我对所有表单数据进行服务器验证,如果日期不验证,当我
你知道我是否可以填充javabean,但我不想使用反射。 例如,我有这个 xml 模板来填充它 示例 XML 文件 public class Customer { private Strin
我有一个带有 date_observed 字段的 Javabean。现在我正在尝试创建一个表单,用户可以在其中搜索开始日期和结束日期之间的条目。 我是否应该创建另一个 Javabean 来扩展此 be
我是一名优秀的程序员,十分优秀!