📄 fenye_test.java
字号:
package project1;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.servlet.*;
import javax.servlet.http.*;
import sun.jdbc.odbc.JdbcOdbcDriver;
public class fenye_test extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=GB18030";
public void init(ServletConfig config) throws ServletException {
super.init(config);
}
public void service(HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException {
response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head><title>list_friends</title></head>");
out.println("<body>");
try {
Connection conn, conn2;
Statement sql, sql2;
ResultSet rs, rs2;
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn = DriverManager.getConnection("jdbc:odbc:myaddressBook");
conn2 = DriverManager.getConnection("jdbc:odbc:myaddressBook");
sql =
conn.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
sql2 = conn.createStatement();
//设定编码类型,以便正确解码
request.setCharacterEncoding("GBK");
/*得到分页页数*/
rs2 = sql2.executeQuery("select count(*) as count from friends where frd_belong='kent'");
rs2.next();
int total = rs2.getInt("count"); //总行数
rs2.close();
sql2.close();
conn2.close();
int pagesize = 7; //设定行数
int pagenumber; //总页数
if (total % pagesize == 0) {
pagenumber = total / pagesize ;
out.print("pagenumber="+pagenumber);
} else {
pagenumber = total / pagesize + 1;
}
//out.print(pagenumber);
out.print("总共"+pagenumber+"页");
//获得当前页数
String pages = request.getParameter("page");
if (pages == null) {
pages = "1";
}
//打印当前页数
int currentpage = Integer.valueOf(pages);
out.print("当前是 第" + currentpage + "页 ");
String sqlString =
"select frd.*,frdtype.* from friends frd, friend_type frdtype where frd.frd_type_id=frdtype.frd_type_id and frd_belong='kent'";
//执行SQL语句
rs = sql.executeQuery(sqlString);
//生成表格头部
out.print("<p align=center><font size=5>朋友清单</font></p>");
out.print("<table border=1 align=center width=80%>");
out.print("<tr>");
out.print("<td>姓名</td><td>类型</td><td>电话</td><td>电子邮件</td>");
out.print("</tr>");
/*控制页面显示*/
if (currentpage != pagenumber) {
rs.absolute((currentpage-1)*pagesize+1);
for(int i=0;i<pagesize;i++){
out.println("<tr>");
out.print("<td>");
out.print(rs.getString("frd_name"));
out.print("</td>");
out.print("<td>");
out.print(rs.getString("frd_type_id"));
out.print("</td>");
out.print("<td>");
out.print(rs.getString("frd_tele"));
out.print("</td>");
out.print("<td>");
out.print(rs.getString("frd_email"));
out.print("</td>");
out.print("</tr>");
rs.next();
}
// 回收数据库连接资源
rs.close();
sql.close();
conn.close();
out.println("");
}
else {
//out.print("使用while循环");
rs.absolute((currentpage-1)*pagesize);
while (rs.next()) {
out.println("<tr>");
out.print("<td>");
out.print(rs.getString("frd_name"));
out.print("</td>");
out.print("<td>");
out.print(rs.getString("frd_type_id"));
out.print("</td>");
out.print("<td>");
out.print(rs.getString("frd_tele"));
out.print("</td>");
out.print("<td>");
out.print(rs.getString("frd_email"));
out.print("</td>");
out.print("</tr>");
}
// 回收数据库连接资源
rs.close();
sql.close();
conn.close();
out.println("");
}
//设置页面跳转
if (currentpage == 1) {
out.print("上一页");
out.print(" <a href='fenye_test?page=" + (currentpage + 1) +
"'>下一页</a>");
} else if (currentpage == pagenumber) {
out.print("<a href='fenye_test?page=" + (currentpage - 1) +
"'>上一页</a>");
out.print(" 下一页");
} else {
out.print("<a href='fenye_test?page=" + (currentpage - 1) +
"'>上一页</a>");
out.print(" <a href='fenye_test?page=" + (currentpage + 1) +
"'>下一页</a>");
}
} catch (Exception ex) {
out.print("<p align=center><font size=5 color=red>数据库访问出错!</font></p>" +
ex.getMessage());
ex.printStackTrace();
}
out.println("</body></html>");
out.close();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -