mv模式
源码地址:
http://download.csdn.net/detail/kaikai_sk/9676043
<%@page import="com.sk.model.UserBeanCtl"%>
<%@ page language="java" import="java.util.*,java.sql.*,java.io.*,com.sk.model.*" pageEncoding="utf-8" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'loginCtl.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<%
//接收用户名和密码
String username=request.getParameter("username");
String passwd=request.getParameter("passwd");
//完成用户验证
UserBeanCtl ubc=new UserBeanCtl();
if(ubc.checkUser(username, passwd))
{
//一定是合法的
//将用户名传给welcome.jsp并跳转
response.sendRedirect("welcome.jsp?username="+username);
}
else
{
//密码输错了
response.sendRedirect("login.jsp");
}
%>
</body>
</html>
<%@page import="com.sk.model.UserBean"%>
<%@page import="com.sk.model.UserBeanCtl"%>
<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'welcome.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
</head>
<body>
<%=request.getParameter("username") %>,登陆成功,恭喜你!!!<br>
<a href="login.jsp">重新登陆</a>
<hr>
<h1>用户信息列表</h1>
<%
//定义分页用变量
int pageNow=1;//默认显示第一页
//接收pageNow
String tmpPageNow=request.getParameter("pageNow");
if(tmpPageNow!=null)
{
//接收到pageNow
pageNow=Integer.parseInt(tmpPageNow);
}
//调用分页方法,分页显示
UserBeanCtl ctl=new UserBeanCtl();
ArrayList list= ctl.getAllUserInfo(pageNow);
%>
<table border="1px">
<tr><td>用户id</td><td>用户名</td><td>密码</td><td>电子邮件</td><td>级别</td></tr>
<%
for(int i=0;i<list.size();i++)
{
UserBean ub=(UserBean)list.get(i);
%>
<tr>
<td><%=ub.getUser_id()%></td>
<td><%=ub.getUser_name()%></td>
<td><%=ub.getPasswd()%></td>
<td><%=ub.getEmail()%></td>
<td><%=ub.getGrade()%></td>
</tr>
<%
}
%>
</table>
<%
//上一页
if(pageNow>1)
{
out.println("<a href='welcome.jsp?pageNow="+(pageNow-1)+"'>["+"上一页"+"]</a>");
}
for(int i=0;i<ctl.getPageCount();i++)
{
out.println("<a href='welcome.jsp?pageNow="+(i+1)+"'>["+(i+1)+"]</a>");
}
//下一页
if(pageNow<ctl.getPageCount())
{
out.println("<a href='welcome.jsp?pageNow="+(pageNow+1)+"'>["+"下一页"+"]</a>");
}
%>
</body>
</html>
package com.sk.model;
import java.sql.*;
import java.util.ArrayList;
import com.sk.util.Fenye;
//user表的业务逻辑类
public class UserBeanCtl
{
private ResultSet rs =null;
SqlHelper sh=null;
Fenye fenye=null;
//获得分页总页数
public int getPageCount()
{
return fenye.pageCount;
}
//得到要显示的用户信息(分页显示)
public ArrayList<UserBean> getAllUserInfo(int pageNow)
{
fenye=new Fenye();
fenye.pageNow=pageNow;
sh=new SqlHelper();
try
{
//查询数据库
String sql="select count(*) from users";
rs = sh.getStatement().executeQuery(sql);
if(rs.next())
{
fenye.rowCount=rs.getInt(1);
}
if(fenye.rowCount%fenye.pageSize==0)
{
fenye.pageCount=fenye.rowCount/fenye.pageSize;
}
else
{
fenye.pageCount=fenye.rowCount/fenye.pageSize+1;
}
sql="select * from users limit "+(fenye.pageNow-1)*fenye.pageSize+","+fenye.pageSize;
rs=sh.getStatement().executeQuery(sql);
ArrayList<UserBean> arrayList=new ArrayList<UserBean>();
while(rs.next())
{
UserBean bean=new UserBean();
bean.setUser_id(rs.getInt(1));
bean.setUser_name(rs.getString(2));
bean.setPasswd(rs.getString(3));
bean.setEmail(rs.getString(4));
bean.setGrade(rs.getInt(5));
arrayList.add(bean);
}
return arrayList;
}
catch (Exception e)
{
e.printStackTrace();
return null;
}
finally
{
this.close();
}
}
//验证用户是否存在
public boolean checkUser(String username,String passwd)
{
sh=new SqlHelper();
String sql="select passwd from users where user_name='"+username+"'";
try
{
rs = sh.getStatement().executeQuery(sql);
if(rs.next())
{
//进来了 说明用户名存在
if(rs.getString(1).equals(passwd))
{
return true;
}
}
return false;
}
catch (SQLException e)
{
e.printStackTrace();
return false;
}
finally
{
close();
}
}
//释放资源
private void close()
{
try
{
if(rs!=null)
{
rs.close();
rs=null;
}
if(sh!=null)
{
sh.close();
sh=null;
}
}
catch (SQLException e)
{
e.printStackTrace();
}
}
}