📄 search.java
字号:
package com.stsc.archive.jygl;
import java.io.IOException;
import java.util.Hashtable;
import java.util.Locale;
import java.util.Properties;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.sql.DataSource;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionError;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionServlet;
import org.apache.struts.util.MessageResources;
import com.stsc.util.STPoolDataSet;
import com.stsc.util.STResultSet;
import com.stsc.archive.jygl.*;
/**
* Implementation of <strong>Action</strong> that show archive list.
*
* @author Lu Tianxiong
* @version $Revision: 1.0 $ $Date: 2003/04/04 11:56:08 $
*/
public final class Search extends Action {
boolean flag = false;
public ActionForward perform(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException {
// Extract attributes we will need
Locale locale = getLocale(request);
MessageResources messages = getResources();
HttpSession session = request.getSession();
// JyForm jyform = new JyForm();
JycxList jycxlist = new JycxList();
ActionErrors errors = new ActionErrors();
// Validate the request parameters specified by the user
// ArchiveList archiveList = (ArchiveList) session.getAttribute(Constants.ARCHIVELIST_KEY);
/*
if (archiveList == null) {
return (mapping.findForward("failure"));
}
*/
session.setAttribute(Constants.JYCXLIST_KEY, jycxlist);
String action = request.getParameter("action");
if (action==null) action="Create";
Properties dbBase = new Properties();
System.out.println("&&&&&&&&&&&&&&&&"+Constants.DATABASE_KEY);
dbBase.setProperty("dsJndiName",Constants.DATABASE_KEY);
STPoolDataSet data = new STPoolDataSet();
STResultSet rs;
String fileno = request.getParameter("fileno");
String title = request.getParameter("title");
String borrowname = request.getParameter("borrowname");
String lendtime = request.getParameter("lendtime");
String lendhandler = request.getParameter("lendhandler");
String lendnum = request.getParameter("lendnum");
String archivalcode = request.getParameter("archivalcode");
String lendperiod = request.getParameter("lendperiod");
String serialno = request.getParameter("serialno");
String returnhandler = request.getParameter("returnhandler");
String returntime = request.getParameter("returntime");
String b_returntime = request.getParameter("b_returntime");
String e_returntime = request.getParameter("e_returntime");
String status = "";
//分页显示数据
String sPageNo ="";
String sGoPageNo ="";
int total = 0;
int totalPage = 0;
int curPage=0;
int page_num=10;
int perpage = 0;
int i=1;
int gopage=1;
// 查询记录
if(action.equals("Search")){
// String sql2="select * from fLendFile WHERE Title='"+title+"'";
flag =false;
status=request.getParameter("r1");
String sql2="select * from fLendFile ";
sql2 = sql2 + makeSql(fileno,"FileNo","String")
+ makeSql(title,"Title","String")
+ makeSql(borrowname,"BorrowName","String")
+ makeSql(lendtime,"LendTime","Date")
+ makeSql(lendhandler,"LendHandler","String")
+ makeSql(lendnum,"LendNum","int")
+ makeSql(archivalcode,"ArchivalCode","String")
+ makeSql(lendperiod,"LendPeriod","int")
+ makeSql(serialno,"SerialNo","String")
+ makeSql(returnhandler,"ReturnHandler","String")
+ makeSql(returntime,"ReturnTime","Date")
+ makeSql(b_returntime,"ReturnTime","StartDate")
+ makeSql(e_returntime,"ReturnTime","EndDate");
if(status==null||status.equals("")|| status.equals("null")){status="";}
if(status.equals("超期")){
if(flag){
sql2 = sql2+" and (LendPeriod- DateDiff('y',LendTime,Now())) < 0 ";
}else{
sql2 = sql2+" where (LendPeriod- DateDiff('y',LendTime,Now())) < 0 ";
}
}else{
sql2 = sql2 + makeSql(status,"Status","String");
}
sql2= sql2+" order by LendFileId";
System.out.println("################### sql2="+sql2);
rs = data.getSTResult(sql2, dbBase);
System.out.println("%%%%%%%%%%%%%%% count="+rs.getRecCount());
total = rs.getRecCount();
if((total%page_num)!=0){
totalPage=total/page_num+1;
}else{
totalPage=total/page_num;
}
System.out.println("$$$$$$$$ total="+total+",totalpage="+totalPage);
while (rs!=null && rs.next())
{
if(i>=1&&i<=page_num){
JyForm jyform = new JyForm();
jyform.setserialno(rs.getString("SerialNo"));
jyform.setlendfileid(rs.getInt("LendFileId"));
jyform.setfileno(rs.getString("FileNo"));
jyform.settitle(rs.getString("Title"));
jyform.setarchivalcode(rs.getString("ArchivalCode"));
jyform.setborrowname(rs.getString("BorrowName"));
jyform.setlendtime(String.valueOf(rs.getDate("LendTime")));
jyform.setlendhandler(rs.getString("LendHandler"));
jyform.setlendnum(rs.getInt("LendNum"));
jyform.setlendperiod(rs.getInt("LendPeriod"));
jyform.setreturnhandler(rs.getString("ReturnHandler"));
jyform.setreturntime(String.valueOf(rs.getDate("ReturnTime")));
//分页显示
jycxlist.setGoPage(gopage);
jycxlist.setTotal(total);
jycxlist.setCurPage(gopage);
jycxlist.setTotalPage(totalPage);
jycxlist.addArchive(jyform);
}
i++;
}
}
// Report any errors we have discovered back to the original form
if (!errors.empty()) {
saveErrors(request, errors);
return (new ActionForward(mapping.getInput()));
}
session.setAttribute(Constants.JYCXLIST_KEY, jycxlist);
// Forward control to the specified success URI
return (mapping.findForward("success"));
}
public String makeSql(String valueField,String valueName,String valueType){
String sql = "";
if ((valueField != null)&&(!valueField.trim().equals(""))){
if (valueType.equals("String"))
{
//sql += valueName+" = '"+valueField.trim()+"'";
sql += valueName+" LIKE '%"+valueField.trim()+"%'";
} else if (valueType.equals("Int"))
{
sql += valueName+" = "+valueField.trim();
} else if (valueType.equals("StartDate"))
{
sql += valueName+" >= cdate('"+valueField.trim()+"')";
}else if (valueType.equals("EndDate"))
{
sql += valueName+" <= cdate('"+valueField.trim()+"')";
}else if (valueType.equals("Date"))
{
sql += valueName+" = cdate('"+valueField.trim()+"')";
}
if (flag)
{
sql = " AND " + sql;
} else {
sql = " WHERE " + sql;
flag = true;
}
}
return sql;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -