servlet类

package com.tdb.sevice.controller;


import java.util.ArrayList;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.tdb.sevice.model.ContactBean;
import com.tdb.sevice.model.PageBean;

public class PageServlet extends javax.servlet.http.HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws javax.servlet.ServletException, java.io.IOException {
response.setContentType("text/html");
try {
PageBean pagebean = new PageBean();
ContactBean contact = new ContactBean();
System.out.println("servlet测试点1");
int pagecount = pagebean.countPage();//获取总共的页数
System.out.println("servlet测试点2"+pagecount);
String topage = request.getParameter("topage");//获取当前的页码
System.out.println("servlet测试点3"+topage);


if(topage != null && !topage.trim().equals("")){
if (Integer.parseInt(topage) > pagecount) { //判断当前的页码是否越界,如果是的话就进行处理
topage =String.valueOf(pagecount);
System.out.println("servlet测试点4"+topage);
} else if (Integer.parseInt(topage) <= 0) {
topage = "1";
System.out.println("servlet测试点5"+topage);
}
}else {
topage = "1";
System.out.println("servlet测试点6"+topage);
}




ArrayList devicebase = contact.getData(topage, pagecount);
request.getSession().setAttribute("pagecount", pagecount);
request.getSession().setAttribute("topage", topage);//将当前的页码返回给页面,这样进行计算
request.getSession().setAttribute("devicebase", devicebase);
response.sendRedirect("main.jsp");

} catch (Exception e) {
e.printStackTrace();
}

}

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws javax.servlet.ServletException, java.io.IOException {
doGet(request, response);
}
}

分页javabean

package com.tdb.sevice.model;


public class PageBean {

public int maxPage; // 一共有多少页
public int maxRowCount; // 一共有多少行
public static final int pagesize = 15; // 每页多少行
public PageBean() {

}

public int countPage() throws Exception {

int maxRowCount=this.MaxCount();
System.out.println("MaxCount="+maxRowCount);
if (maxRowCount % this.pagesize == 0) {
maxPage = maxRowCount / this.pagesize;
} else {
maxPage =maxRowCount/ this.pagesize + 1;
}
return maxPage;
}


public int MaxCount() throws Exception {
ContactBean contact=new ContactBean();
this.maxRowCount = contact.getAvailableCount(); // 得到总行数
return maxRowCount;
}

}

数据基础javabean

package com.tdb.sevice.model;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import com.tdb.util.MyOracle;

public class DeviceBean {

private String deviceNo;
private String deviceModel;
private String deviceScope;
private String deviceAddress;
private String radminUserName;
private String radminPass;
private String radminAddress;


public String getDeviceNo() {
return deviceNo;
}
public void setDeviceNo(String deviceNo) {
this.deviceNo = deviceNo;
}
public String getDeviceModel() {
return deviceModel;
}
public void setDeviceModel(String deviceModel) {
this.deviceModel = deviceModel;
}
public String getDeviceScope() {
return deviceScope;
}
public void setDeviceScope(String deviceScope) {
this.deviceScope = deviceScope;
}
public String getDeviceAddress() {
return deviceAddress;
}
public void setDeviceAddress(String deviceAddress) {
this.deviceAddress = deviceAddress;
}
public String getRadminUserName() {
return radminUserName;
}
public void setRadminUserName(String radminUserName) {
this.radminUserName = radminUserName;
}
public String getRadminPass() {
return radminPass;
}
public void setRadminPass(String radminPass) {
this.radminPass = radminPass;
}
public String getRadminAddress() {
return radminAddress;
}
public void setRadminAddress(String radminAddress) {
this.radminAddress = radminAddress;
}




private String deviceBase_insert="insert into deviceBase values (?,?,?,?,?,?,?)";

public void insertnavlink() throws Exception
{
try{
ResultSet rs=null;
MyOracle myoracle = new MyOracle(deviceBase_insert);
myoracle.setString(1, this.deviceNo);
myoracle.setString(2, this.deviceModel);
myoracle.setString(3, this.deviceScope);
myoracle.setString(4, this.deviceAddress);
myoracle.setString(5, this.radminUserName);
myoracle.setString(6, this.radminPass);
myoracle.setString(7, this.radminAddress);
myoracle.executeUpdate();
myoracle.close();



} catch (Exception ex) {
throw new Exception("insertnavlink()"+ex.getMessage());
}
}

/**
* 根据编号查询设备基本信息
*/
private String deviceBase_select="select * from devicebase where deviceNo = ?";
public DeviceBean getParmslink() throws Exception
{
DeviceBean db = null;
try{
ResultSet rs=null;
MyOracle myoracle = new MyOracle();
rs = myoracle.executeQuery(deviceBase_select);
db = new DeviceBean();
while(rs.next()){
db.setDeviceNo(rs.getString(1));
db.setDeviceModel(rs.getString(2));
db.setDeviceScope(rs.getString(3));
db.setDeviceAddress(rs.getString(4));
db.setRadminUserName(rs.getString(5));
db.setRadminPass(rs.getString(6));
db.setRadminAddress(rs.getString(7));
}
myoracle.close();

} catch (Exception ex) {
throw new Exception("getParmslink()"+ex.getMessage());
}
return db;
}

/**
* 分页程序
* 查询所有的设备基本信息
* return ArrayList
*/

public <DeviceBase>ArrayList getListParmslink(int start, int end) throws Exception
{
String getListParms_select ="SELECT * FROM devicebase WHERE ROWNUM<=" + end + " minus SELECT * FROM devicebase WHERE ROWNUM<="+start;
ArrayList al = null;
try{

MyOracle myoracle = new MyOracle();
ResultSet rs = myoracle.executeQuery(getListParms_select);
//System.out.println("测点一");
al = new ArrayList();
//System.out.println("测点二");
while(rs.next()){
//System.out.println("测点三");
DeviceBean db = new DeviceBean();
// System.out.println("测点四");
db.setDeviceNo(rs.getString(1));
db.setDeviceModel(rs.getString(2));
db.setDeviceScope(rs.getString(3));
db.setDeviceAddress(rs.getString(4));
db.setRadminUserName(rs.getString(5));
db.setRadminPass(rs.getString(6));
db.setRadminAddress(rs.getString(7));
al.add(db);
}
myoracle.close();

} catch (Exception ex) {
throw new Exception("getListParmslink()"+ex.getMessage());
}
return al;
}


String pageSizeSelect = "select count(*) from devicebase";
public int getPageSize(){
MyOracle myoracle;
ResultSet rs ;
int pageSize = 0;

try {
myoracle = new MyOracle();
rs = myoracle.executeQuery(pageSizeSelect);
rs.next();
pageSize = rs.getInt(1);
System.out.println(pageSize);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return pageSize;

}


/**
* 测试数据
* @param args
*/
public static void main(String []args){
DeviceBean db = new DeviceBean();
try {
for(int i=2; i<103; i++){
db.setDeviceNo("Ae-00"+i);
db.setDeviceModel("TFDS-30"+i);
db.setDeviceScope("长北上行");
db.setDeviceAddress("苏家屯");
db.setRadminUserName("TF");
db.setRadminPass("tf123456");
db.setRadminAddress("192.168.255.255");
db.insertnavlink();
}

} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

分页与数据打交道的桥javabean

package com.tdb.sevice.model;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.util.ArrayList;

import java.util.Vector;

import com.tdb.sevice.model.PageBean;

import com.tdb.util.MyOracle;

public class ContactBean {

/*获取连接数据库工具*/

private MyOracle myOracle ;


/** *返回要查询的记录数 */

public int getAvailableCount() throws Exception {

int ret = 0;

String strSql = "select count(*) from devicebase";

myOracle = new MyOracle();

ResultSet rset = myOracle.executeQuery(strSql);

while (rset.next()) {

ret = rset.getInt(1);

}

myOracle.close();

return ret;

}

/*获取查寻的记录数*/

public ArrayList getData(String topage, int pagecount)

throws Exception {

myOracle = new MyOracle();

int pagesize = PageBean.pagesize;

/*计算查询数据的起始值*/

int pageStart = (Integer.parseInt(topage) - 1) * pagesize;


/*计算查询数据的结束值*/

int pageEnd = pageStart + pagesize;


myOracle = new MyOracle();

String sql = "SELECT * FROM devicebase WHERE ROWNUM<=" + pageEnd + " minus SELECT * FROM devicebase WHERE ROWNUM<="+pageStart;;

ResultSet rs = myOracle.executeQuery(sql);

ArrayList list = new ArrayList();

int j=0;

while(rs.next()){

DeviceBean device = new DeviceBean();

device.setDeviceNo(rs.getString(1));

device.setDeviceModel(rs.getString(2));

device.setDeviceScope(rs.getString(3));

device.setDeviceAddress(rs.getString(4));

device.setRadminUserName(rs.getString(5));

device.setRadminPass(rs.getString(6));

device.setRadminAddress(rs.getString(7));

list.add(j, device);

++j;

}

myOracle.close();

return list;

}

}