基于MVC的JSP学生管理系统(目前只可以浏览数据)(1)
2010-12-05 21:15
465 查看
基于MVC的JSP学生管理系统(目前只可以浏览数据)(1)
//index.jsp的源码
//
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%
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>登陆界面</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><br>
<form method="get" action="LoginClServlet" name="aa"><div align="center">
</div><p align="center"> 用户名 <input type="text" name="username">
</p><p align="center"> 密 码<input type="password" name="password"></p><div align="center">
</div><p align="center"> <input type="reset" value="重置" name="button2">
<input type="submit" value="确定" name="button1"> </p>
</form></body>
</html>
//com.xinxi.model包下的文件
ConnDB.java的代码
//
package com.xinxi.model;
//得到数据库的连接
import java.sql.*;
public class ConnDB {
private Connection ct=null;
public Connection getConn(){
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
ct=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=djdb","sa","dongjun");
}catch(Exception ex){
ex.printStackTrace();
}return ct;
}
}
//
//UserBean.java的代码
package com.xinxi.model;
public class UserBean {
private int userid;
private String username;
private String passwd;
private String email;
private int grade;
public int getUserid() {
return userid;
}
public void setUserid(int userid) {
this.userid = userid;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPasswd() {
return passwd;
}
public void setPasswd(String passwd) {
this.passwd = passwd;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public int getGrade() {
return grade;
}
public void setGrade(int grade) {
this.grade = grade;
}
}
//
//
package com.xinxi.model;
import java.sql.Connection;
import java.util.*;
import java.sql.ResultSet;
import java.sql.Statement;
//封装对USERS表的操作
public class UserBeanCl {
//关闭资源函数
private int pageSize=10;
private int rowCount=0;
private int pageCount=0;
//
private ResultSet rs=null;
private Statement sm=null;
private Connection ct=null;
//
public int getPageCount(){
try{
ct=new ConnDB().getConn();
sm=ct.createStatement();
rs=sm.executeQuery("select count(*) from users");
if(rs.next()){
rowCount=rs.getInt(1);
}
//
if(rowCount%pageSize==0){
pageCount=rowCount/pageSize;
}else{
pageCount=rowCount/pageSize+1;
}
}
catch(Exception ex){
ex.printStackTrace();
}finally{
this.close();
}
return pageCount;
}
//
public ArrayList getUsersByPage(int pageNow){
ArrayList al=new ArrayList();
try{//
ct=new ConnDB().getConn();
sm=ct.createStatement();
rs=sm.executeQuery("select top "+pageSize+" * from users where userid not in (select top "+pageSize*(pageNow-1)+"userid from users)");
//
while(rs.next()){
UserBean ub=new UserBean();
ub.setUserid(rs.getInt(1));
ub.setUsername(rs.getString(2));
ub.setPasswd(rs.getString(3));
ub.setEmail(rs.getString(4));
ub.setGrade(rs.getInt(5));
al.add(ub);
}
//
UserBeanCl.java的代码
}catch(Exception e){
e.printStackTrace();
}finally{
this.close();
}return al;
}
public void close(){
try{
if(rs!=null){rs.close();rs=null;
}
if(sm!=null){sm.close();sm=null;
}
if(ct!=null){ct.close();ct=null;
}
}catch(Exception ex){
ex.printStackTrace();
}
}
public boolean CheckUser(String u,String p){
boolean b=false;
try{
ct=new ConnDB().getConn();
sm=ct.createStatement();
rs=sm.executeQuery("select top 1 passwd from users where username='"+u+"'");
if(rs.next())
{
if(rs.getString(1).equals(p))
{
b=true;
}
}
}catch(Exception ex){
ex.printStackTrace();
}
finally{
this.close();
}return b;
}
}
//
下面是com.dongjun.comtroller包下的SERVLET文件
//
//LoginClServlet.java文件
package com.dongjun.comtroller;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.*;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.xinxi.model.UserBeanCl;
public class LoginClServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String u=request.getParameter("username");
String p=request.getParameter("password");
//
UserBeanCl ubc=new UserBeanCl();
if(ubc.CheckUser(u,p)){
//效率不高
ArrayList al=ubc.getUsersByPage(1);
int pageCount=ubc.getPageCount();
request.setAttribute("result",al);
request.setAttribute("pageCount",pageCount+"");
request.setAttribute("pageNow","1");
//response.sendRedirect("huan.jsp?username="+u);
//可以附带数据跳转
request.getRequestDispatcher("huan.jsp").forward(request,response);
}else{
//response.sendRedirect("login.jsp");
request.getRequestDispatcher("index.jsp").forward(request,response);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response);
}
}
//
//UserBeanClServlet.java文件
package com.dongjun.comtroller;
import java.io.IOException;
import java.util.ArrayList;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.xinxi.model.UserBeanCl;
public class UserBeanClServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//
request.getParameter("pageNow");
try{
int pageNow=Integer.parseInt(request.getParameter("pageNow"));
UserBeanCl ubc=new UserBeanCl();
//
ArrayList al=ubc.getUsersByPage(pageNow);
int pageCount=ubc.getPageCount();
request.setAttribute("result",al);
request.setAttribute("pageCount",pageCount+"");
request.setAttribute("pageNow", pageNow+"");
//
request.getRequestDispatcher("huan.jsp").forward(request,response );
}catch(Exception e)
{e.printStackTrace();
}
///
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response);
}
}
//huan.jsp文件源码
<%@ page language="java" import="java.util.*,java.sql.*,javax.servlet.http.*,com.xinxi.model.*" pageEncoding="gb2312"%>
<%
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 'huan.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>
<%
//UserBeanCl ubc=new UserBeanCl();
//ArrayList al=ubc.getUsersByPage(pageNow);
//
ArrayList al=(ArrayList)request.getAttribute("result");
%>
<table border="1">
<tr><td> 用户id</td><td> 用户名</td><td> 密码</td><td> Email</td><td> 等级</td></tr>
<%
for(int i=0;i<al.size();i++){
UserBean ub=(UserBean)al.get(i);
%>
<tr><td> <%=ub.getUserid()%></td><td><%=ub.getUsername()%></td><td><%=ub.getPasswd()%></td><td><%=ub.getEmail()%></td><td><%=ub.getGrade()%></td></tr>
<%
}
%></table>
<%
int pageNow=Integer.parseInt((String)request.getAttribute("pageNow"));
if(pageNow!=1){
out.println("<a href=UserBeanClServlet?pageNow="+(pageNow-1)+">上一页</a>");
}
String s_pageCount=(String)request.getAttribute("pageCount");
int pageCount=Integer.parseInt(s_pageCount);
for(int i=1;i<=pageCount;i++){
out.println("<a href=UserBeanClServlet?pageNow="+i+">["+i+"]</a>");
}
if(pageNow!=pageCount)
out.println("<a href=UserBeanClServlet?pageNow="+(pageNow+1)+">下一页</a>");
%>
</body>
</html>
//数据库的字段private int userid;
// 有一个id是自动的就没有列出 // varchar username;varchar passwd;varchar email; int grade;
//index.jsp的源码
//
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%
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>登陆界面</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><br>
<form method="get" action="LoginClServlet" name="aa"><div align="center">
</div><p align="center"> 用户名 <input type="text" name="username">
</p><p align="center"> 密 码<input type="password" name="password"></p><div align="center">
</div><p align="center"> <input type="reset" value="重置" name="button2">
<input type="submit" value="确定" name="button1"> </p>
</form></body>
</html>
//com.xinxi.model包下的文件
ConnDB.java的代码
//
package com.xinxi.model;
//得到数据库的连接
import java.sql.*;
public class ConnDB {
private Connection ct=null;
public Connection getConn(){
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
ct=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=djdb","sa","dongjun");
}catch(Exception ex){
ex.printStackTrace();
}return ct;
}
}
//
//UserBean.java的代码
package com.xinxi.model;
public class UserBean {
private int userid;
private String username;
private String passwd;
private String email;
private int grade;
public int getUserid() {
return userid;
}
public void setUserid(int userid) {
this.userid = userid;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPasswd() {
return passwd;
}
public void setPasswd(String passwd) {
this.passwd = passwd;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public int getGrade() {
return grade;
}
public void setGrade(int grade) {
this.grade = grade;
}
}
//
//
package com.xinxi.model;
import java.sql.Connection;
import java.util.*;
import java.sql.ResultSet;
import java.sql.Statement;
//封装对USERS表的操作
public class UserBeanCl {
//关闭资源函数
private int pageSize=10;
private int rowCount=0;
private int pageCount=0;
//
private ResultSet rs=null;
private Statement sm=null;
private Connection ct=null;
//
public int getPageCount(){
try{
ct=new ConnDB().getConn();
sm=ct.createStatement();
rs=sm.executeQuery("select count(*) from users");
if(rs.next()){
rowCount=rs.getInt(1);
}
//
if(rowCount%pageSize==0){
pageCount=rowCount/pageSize;
}else{
pageCount=rowCount/pageSize+1;
}
}
catch(Exception ex){
ex.printStackTrace();
}finally{
this.close();
}
return pageCount;
}
//
public ArrayList getUsersByPage(int pageNow){
ArrayList al=new ArrayList();
try{//
ct=new ConnDB().getConn();
sm=ct.createStatement();
rs=sm.executeQuery("select top "+pageSize+" * from users where userid not in (select top "+pageSize*(pageNow-1)+"userid from users)");
//
while(rs.next()){
UserBean ub=new UserBean();
ub.setUserid(rs.getInt(1));
ub.setUsername(rs.getString(2));
ub.setPasswd(rs.getString(3));
ub.setEmail(rs.getString(4));
ub.setGrade(rs.getInt(5));
al.add(ub);
}
//
UserBeanCl.java的代码
}catch(Exception e){
e.printStackTrace();
}finally{
this.close();
}return al;
}
public void close(){
try{
if(rs!=null){rs.close();rs=null;
}
if(sm!=null){sm.close();sm=null;
}
if(ct!=null){ct.close();ct=null;
}
}catch(Exception ex){
ex.printStackTrace();
}
}
public boolean CheckUser(String u,String p){
boolean b=false;
try{
ct=new ConnDB().getConn();
sm=ct.createStatement();
rs=sm.executeQuery("select top 1 passwd from users where username='"+u+"'");
if(rs.next())
{
if(rs.getString(1).equals(p))
{
b=true;
}
}
}catch(Exception ex){
ex.printStackTrace();
}
finally{
this.close();
}return b;
}
}
//
下面是com.dongjun.comtroller包下的SERVLET文件
//
//LoginClServlet.java文件
package com.dongjun.comtroller;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.*;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.xinxi.model.UserBeanCl;
public class LoginClServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String u=request.getParameter("username");
String p=request.getParameter("password");
//
UserBeanCl ubc=new UserBeanCl();
if(ubc.CheckUser(u,p)){
//效率不高
ArrayList al=ubc.getUsersByPage(1);
int pageCount=ubc.getPageCount();
request.setAttribute("result",al);
request.setAttribute("pageCount",pageCount+"");
request.setAttribute("pageNow","1");
//response.sendRedirect("huan.jsp?username="+u);
//可以附带数据跳转
request.getRequestDispatcher("huan.jsp").forward(request,response);
}else{
//response.sendRedirect("login.jsp");
request.getRequestDispatcher("index.jsp").forward(request,response);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response);
}
}
//
//UserBeanClServlet.java文件
package com.dongjun.comtroller;
import java.io.IOException;
import java.util.ArrayList;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.xinxi.model.UserBeanCl;
public class UserBeanClServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//
request.getParameter("pageNow");
try{
int pageNow=Integer.parseInt(request.getParameter("pageNow"));
UserBeanCl ubc=new UserBeanCl();
//
ArrayList al=ubc.getUsersByPage(pageNow);
int pageCount=ubc.getPageCount();
request.setAttribute("result",al);
request.setAttribute("pageCount",pageCount+"");
request.setAttribute("pageNow", pageNow+"");
//
request.getRequestDispatcher("huan.jsp").forward(request,response );
}catch(Exception e)
{e.printStackTrace();
}
///
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response);
}
}
//huan.jsp文件源码
<%@ page language="java" import="java.util.*,java.sql.*,javax.servlet.http.*,com.xinxi.model.*" pageEncoding="gb2312"%>
<%
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 'huan.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>
<%
//UserBeanCl ubc=new UserBeanCl();
//ArrayList al=ubc.getUsersByPage(pageNow);
//
ArrayList al=(ArrayList)request.getAttribute("result");
%>
<table border="1">
<tr><td> 用户id</td><td> 用户名</td><td> 密码</td><td> Email</td><td> 等级</td></tr>
<%
for(int i=0;i<al.size();i++){
UserBean ub=(UserBean)al.get(i);
%>
<tr><td> <%=ub.getUserid()%></td><td><%=ub.getUsername()%></td><td><%=ub.getPasswd()%></td><td><%=ub.getEmail()%></td><td><%=ub.getGrade()%></td></tr>
<%
}
%></table>
<%
int pageNow=Integer.parseInt((String)request.getAttribute("pageNow"));
if(pageNow!=1){
out.println("<a href=UserBeanClServlet?pageNow="+(pageNow-1)+">上一页</a>");
}
String s_pageCount=(String)request.getAttribute("pageCount");
int pageCount=Integer.parseInt(s_pageCount);
for(int i=1;i<=pageCount;i++){
out.println("<a href=UserBeanClServlet?pageNow="+i+">["+i+"]</a>");
}
if(pageNow!=pageCount)
out.println("<a href=UserBeanClServlet?pageNow="+(pageNow+1)+">下一页</a>");
%>
</body>
</html>
//数据库的字段private int userid;
// 有一个id是自动的就没有列出 // varchar username;varchar passwd;varchar email; int grade;
相关文章推荐
- 学生信息管理系统之修改数据信息
- 数据结构实验一:基于线性表的学生信息管理(顺序结构)
- 学生管理系统----文件和数据库(oracle)两种保存数据方式
- 基于数据结构的个人图书管理系统
- 分享基于EF+MVC+Bootstrap的通用后台管理系统及架构
- jsp学生管理系统
- 基于C++、链表以及泛型编程的学生成绩管理系统
- 基于用户行为的数据分析与挖掘+分布式日志管理系统
- java学生信息管理系统MVC架构
- 分享基于EF+MVC+Bootstrap的通用后台管理系统及架构
- MySql--实战(基于qt的学生管理系统)
- 基于数据挖掘的商业银行客户关系管理系统应用研究
- 基于ArcGIS10.0和Oracle10g的空间数据管理平台(C#开发)-系统需求分析
- Java毕业设计------基于JSP技术的健身房管理系统的设计与实现
- SpringMVC学习系列(12) 完结篇 之 基于Hibernate+Spring+Spring MVC+Bootstrap的管理系统实现
- 学生管理系统之 vb 如何防止SQL 语句注入(以目前之力所能想到的方法)
- 数据结构课程设计---学生成绩管理系统
- 基于报表系统的的企业数据管理
- 基于RBAC模型的通用权限管理系统的设计(数据模型)的扩展
- 数据结构之链表的实现-------C++课程设计-----学生选课管理系统