📄 handledatabase.java
字号:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */package messagepad.servlets;import messagepad.beans.*;import com.sun.rowset.*;import java.sql.*;import java.io.*;import javax.servlet.*;import javax.servlet.http.*;import javax.sql.rowset.*;/** * * @author Administrator */public class HandleDatabase extends HttpServlet{ int segments; CachedRowSetImpl rowSet=null; public void init(ServletConfig config)throws ServletException{ super.init(config); try{ Class.forName("com.mysql.jdbc.Driver"); } catch(Exception e){ } } public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{ Connection con; StringBuffer presentPageResult=new StringBuffer(); ShowRecordByPage databaseBean=null; HttpSession session=request.getSession(true); try{ databaseBean=(ShowRecordByPage)session.getAttribute("database"); if(databaseBean==null){ databaseBean=new ShowRecordByPage(); session.setAttribute("database", databaseBean); } } catch(Exception exp){ databaseBean=new ShowRecordByPage(); session.setAttribute("database", databaseBean); } String databaseName="taotao";//request.getParameter("databaseName"); String tableName="messages";//request.getParameter("tableName"); String ps="10";//request.getParameter("pageSize"); if(ps!=null){ try{ int mm=Integer.parseInt(ps); databaseBean.setPageSize(mm); } catch(NumberFormatException exp){ databaseBean.setPageSize(1); } } int showPage=databaseBean.getShowPage(); int pageSize=databaseBean.getPageSize(); boolean boo=databaseName!=null&&tableName!=null &&databaseName.length()>0&&tableName.length()>0; if(boo){ databaseBean.setDatabaseName(databaseName); databaseBean.setTableName(tableName);//数据存储在databaseBean中 String url="jdbc:mysql://127.0.0.1/"+databaseName; try{ segments=0; con=DriverManager.getConnection(url,"taotao",".nothing"); DatabaseMetaData metadata=con.getMetaData(); ResultSet rs1=metadata.getColumns(null, null, tableName, null); int k=0; String segment[]=new String[100]; while(rs1.next()){ segments++; segment[k]=rs1.getString(4); k++; } StringBuffer str=new StringBuffer(); str.append("<tr>"); for(int i=0;i<segments;i++) str.append("<th>"+segment[i]+"</th>"); str.append("</tr>"); databaseBean.setFormTitle(str); Statement sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY); ResultSet rs=sql.executeQuery("select * from "+tableName+" Order By number Desc"); rowSet=new CachedRowSetImpl(); rowSet.populate(rs); con.close(); databaseBean.setRowset(rowSet); rowSet.last(); int m=rowSet.getRow(); int n=pageSize; int pageAllCount=((m%n)==0)?(m/n):(m/n+1); databaseBean.setPageAllCount(pageAllCount); } catch(SQLException exp){ } } String whichPage=request.getParameter("whichPage"); if(whichPage==null||whichPage.length()==0){ showPage=1; databaseBean.setShowPage(showPage); CachedRowSetImpl rowSet=databaseBean.getRowSet(); if(rowSet!=null){ presentPageResult=show(showPage,pageSize,rowSet); databaseBean.setPresentPageResult(presentPageResult); } } else if(whichPage.equals("nextPage")){ showPage++; if(showPage>databaseBean.getPageAllCount()) showPage=1; databaseBean.setShowPage(showPage); CachedRowSetImpl rowSet=databaseBean.getRowSet(); if(rowSet!=null){ presentPageResult=show(showPage,pageSize,rowSet); databaseBean.setPresentPageResult(presentPageResult); } } else if(whichPage.equals("previousPage")){ showPage--; if(showPage<=0) showPage=databaseBean.getPageAllCount(); databaseBean.setShowPage(showPage); CachedRowSetImpl rowSet=databaseBean.getRowSet(); if(rowSet!=null){ presentPageResult=show(showPage,pageSize,rowSet); databaseBean.setPresentPageResult(presentPageResult); } } databaseBean.setPresentPageResult(presentPageResult); RequestDispatcher dispatcher=request.getRequestDispatcher("showRecord.jsp"); dispatcher.forward(request, response); //response.sendRedirect("showRecord.jsp"); } public StringBuffer show(int page,int pageSize,CachedRowSetImpl rowSet){ StringBuffer str=new StringBuffer(); try{ rowSet.absolute((page-1)*pageSize+1); for(int i=1;i<=pageSize;i++){ str.append("<tr>"); for(int k=1;k<=segments;k++){ str.append("<td>"+rowSet.getString(k)+"</td>"); } //str.append("<a href=\"handleDelete\">Del</a>"); str.append("</tr>"); rowSet.next(); } } catch(SQLException exp){ } return str; } public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{ doPost(request,response); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -