package cn.tyk.dao.impl;
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.List;
import cn.tyk.constant.Constant;
import cn.tyk.dao.AjaxDao;
import cn.tyk.entity.Person;
import cn.tyk.tools.PageBean;
public class AjaxDaoImpl implements AjaxDao {
@Override
public PageBean findPersonByAge(String age) {
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
String sqlstr = "";
int totalNumber = 0; // 返回数据总条数
int totalPage = 0; // 返回总页数
PageBean pb = new PageBean();
List<Person> list = new ArrayList<Person>();
try {
Class.forName(Constant.DATABASE_DRIVER);
con = DriverManager.getConnection(Constant.DABABASE_URL,
Constant.DATABASE_USER, Constant.DATABASE_PASSWORD);
stmt = con.createStatement();
Statement statment = con.createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
sqlstr = "select * from " + Constant.DATABASE_TABLE_NAME
+ " where t_age like " + age;
rs = statment.executeQuery(sqlstr);
while (rs.next()) {
Person p = new Person();
p.setId(rs.getInt(1));
p.setName(rs.getString(2));
p.setAge(rs.getString(3));
list.add(p);
}
if (rs.last()) {
totalNumber = rs.getRow();
}
if ((totalNumber % Constant.EACH_PAGE_NUMBER) == 0) {
totalPage = totalNumber / Constant.EACH_PAGE_NUMBER;
} else {
totalPage = totalNumber / Constant.EACH_PAGE_NUMBER + 1;
}
pb.setList(list);
pb.setTotalNumber(totalNumber);
pb.setTotalPage(totalPage);
pb.setSearchPage(1);
} catch (ClassNotFoundException e1) {
e1.printStackTrace();
System.out.println("驱动没有找到");
System.out.println(e1.toString());
} catch (SQLException e2) {
e2.printStackTrace();
System.out.println("数据库语句错误");
System.out.println(e2.toString());
} finally {
try {
if (rs != null)
rs.close();
if (stmt != null)
stmt.close();
if (con != null)
con.close();
} catch (Exception e3) {
e3.printStackTrace();
System.out.println("关闭错误");
System.out.println(e3.toString());
}
}
return pb;
}
}