fbshowservlet.java~28~
来自「简易的BBS,可以进行排行榜的查询,发布意见,建立一个新的主题」· JAVA~28~ 代码 · 共 192 行
JAVA~28~
192 行
package com.bbs.servlets;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import org.springframework.jdbc.core.JdbcTemplate;
import com.bbs.connect.DatabaseConnect;
import javax.sql.DataSource;
import com.bbs.po.BBSCritiqueBean;
public class FBShowServlet
extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=GBK";
org.apache.commons.logging.Log log = org.apache.commons.logging.LogFactory.getLog(this.getClass());
public int curPage = 0; //当前的页值。
public int maxPage; //最大的页数。
public int maxRowCount=0; //最大的行数。
public static int rowsPerPage = 20; //控制分页的行数。
public List list = null;
public List TaxisResult = null;
//初始化maxRowCount、maxPage
public void setRowcount() {
if (list!=null)
this.maxRowCount = list.size();
}
public void countMaxPage() {
if (this.maxRowCount % this.rowsPerPage == 0) {
this.maxPage = this.maxRowCount / this.rowsPerPage;
} else {
this.maxPage = this.maxRowCount / this.rowsPerPage + 1;
}
}
//Initialize global variables
public void init() throws ServletException {
}
//Process the HTTP Get request
public void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
response.setContentType(CONTENT_TYPE);
doPost(request, response);
}
//Process the HTTP Post request
public void doPost(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
String username ="";
response.setContentType(CONTENT_TYPE);
request.setCharacterEncoding("GBK");
try
{
String topicname = request.getParameter("topicname");
String sql = "";
JdbcTemplate jt = new JdbcTemplate();
DataSource ds;
if (topicname!=null)
{
sql =
"select topicName,critiquePerson,critiqueTime,critiqueContext from dbo.bbstable "
+ "where topicName='" + topicname + "'";
DatabaseConnect dbc = new DatabaseConnect();
ds = dbc.DatabaseConnect();
jt = new JdbcTemplate(ds);
}
/*
String datestr = "2007-07";
String area = "成都";
String condition = "";
//查询结果集
if (request.getParameter("f_month") != null && request.getParameter("area") != null) {
datestr = request.getParameter("f_month");
area = request.getParameter("area");
}
else if (request.getParameter("datestr") != null && request.getParameter("placestr") != null)
{
datestr = request.getParameter("datestr");
area = request.getParameter("placestr");
}
sql =
"select sp_id,sp_name,business_code,business_name,fee,fee_income,"
+ "fee_income_rate,into_ratio from dba.das_area_info ";
condition = " where f_month = '" + datestr + "' and area = '" +
area + "'";
sql = sql + condition;*/
try {
list = jt.queryForList(sql);
}
catch (Exception ex) {
log.error(ex.toString(), ex);
}
log.info("\r\n"+sql+":size="+list.size());
/*
for (int j = 0; j < 24; j++) {
Actor actor = new Actor();
actor.setSp_id(String.valueOf(j+5));
actor.setSp_name("sp_name");
actor.setBusiness_code(String.valueOf(j+5));
actor.setBusiness_name("business_name");
actor.setFee(String.valueOf(j+5));
actor.setFee_income(String.valueOf(j+5.5));
actor.setFee_income_rate(String.valueOf(j+5.5));
actor.setInto_ratio(String.valueOf(j+5.5));
list.add(actor);
}*/
//初始化maxRowCount、maxPage
if (list == null) list = new ArrayList();
maxRowCount = list.size();
if (maxRowCount % rowsPerPage == 0) {
maxPage = maxRowCount / rowsPerPage;
}
else {
maxPage = maxRowCount / rowsPerPage + 1;
}
List senddate = new ArrayList(); //传递日期参数
List sendplace = new ArrayList(); //传递地点参数
List taxisdatalist = new ArrayList(); //排序后的数据集
List backresult = new ArrayList(); //返回页面数据
List backmaxpage = new ArrayList(); //返回页面数据
List backcurpage = new ArrayList(); //返回当前页
senddate.add(request.getParameter("f_month"));
sendplace.add(request.getParameter("area"));
backmaxpage.add(String.valueOf(maxPage));
//request.getSession(true).setAttribute("senddate", datestr);
//request.getSession(true).setAttribute("sendplace", area);
request.getSession(true).setAttribute("maxPage", backmaxpage);
taxisdatalist = list;
/*
if (request.getParameter("px") != null) {
if (request.getParameter("px").equals("fee_income")) {
Comparator comp = new Mycomparator();
Collections.sort(taxisdatalist, comp);
}
if (request.getParameter("px").equals("fee_income_rate")) {
Comparator comp = new FeeIncomeRate();
Collections.sort(taxisdatalist, comp);
}
if (request.getParameter("px").equals("into_ratio")) {
Comparator comp = new IntoRatio();
Collections.sort(taxisdatalist, comp);
}
}*/
if (request.getParameter("page") != null) {
curPage = Integer.parseInt(request.getParameter("page"));
}
if ((curPage == 0||curPage==1) && taxisdatalist != null) {
for (int i = 0; i < rowsPerPage; i++) {
if (taxisdatalist.size()==(i+1)||taxisdatalist.size()==0)
break;
if (taxisdatalist.get(i) != null)
backresult.add(taxisdatalist.get(i));
}
curPage = 1;
backcurpage.add(String.valueOf(curPage));
request.getSession(true).setAttribute("curpage", curPage);
}
if (curPage > 1 && taxisdatalist != null) {
for (int i = 0; i < rowsPerPage; i++) {
if (taxisdatalist.size()==((curPage-1) * rowsPerPage + i))
break;
if (taxisdatalist.get((curPage-1) * rowsPerPage + i) != null)
backresult.add(taxisdatalist.get((curPage-1) * rowsPerPage + i));
}
if (request.getParameter("page")!=null)
{
curPage = Integer.parseInt(request.getParameter("page"));
backcurpage.add(String.valueOf(curPage));
}
request.getSession(true).setAttribute("curpage", curPage);
}
request.getSession(true).setAttribute("backresult", backresult);
request.getRequestDispatcher("/bbs.jsp").forward(request, response);
}catch(Exception e)
{
e.printStackTrace();
}
}
//Clean up resources
public void destroy() {
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?