Java_Web之俱乐部会员信息管理系统

使用 Jsp实现俱乐部会员信息管理功能,orac1e11g作为后台数据库,该系统包括
查看俱乐部会员信息列表和修改俱乐部会员信息两人功能,具体耍求如下:

打开俱乐部会员信息列表页面,以列表方式显示所有俱乐部会员信息。

具体要求及推荐实现步骤:

第一步:创建数据表(memberisnfo)

create table memberisnfo(
id number(10) primary key,--会员编号
mname varchar2(30) not null,  --会员姓名
mgender varchar2(2) not null, --会员性别
mage number(10) not null,--会员年龄
maddress varchar2(100),--家庭位置
memail varchar2(50)  --电子邮件
)
--自增序列
 CREATE SEQUENCE id_seq
  START WITH 1
  INCREMENT BY 1
  NOMAXVALUE
   CACHE 10;
   --插入数据
insert into memberisnfo values (1,‘黄鼠狼‘,‘男‘,‘36‘,‘江西生物科技职业学院‘,‘[email protected]‘);
insert into memberisnfo values (id_seq.Nextval,‘东东‘,‘男‘,‘20‘,‘江西生物科技职业学院‘,‘[email protected]‘);

insert into memberisnfo values (id_seq.Nextval,‘薇薇‘,‘女‘,‘25‘,‘南昌理工学院‘,‘[email protected]‘);

insert into memberisnfo values (id_seq.Nextval,‘花花‘,‘女‘,‘12‘,‘江西生物科技职业学院‘,‘[email protected]‘);
select * from memberisnfo  --查询数据

第二步:创建实体类

package entity;

/*
 * 创建俱乐部会员系统实体参数
 *
 * */
public class Club_Name {

     private String id;//创建id
     private String mname;//创建名字实体
     private String mgender;//创建日期实体
     private String mage;//创建年龄实体
     private String maddress;//创建地址实体
     private String memail;//创建Emaile实体
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getMname() {
        return mname;
    }
    public void setMname(String mname) {
        this.mname = mname;
    }
    public String getMgender() {
        return mgender;
    }
    public void setMgender(String mgender) {
        this.mgender = mgender;
    }
    public String getMage() {
        return mage;
    }
    public void setMage(String mage) {
        this.mage = mage;
    }
    public String getMaddress() {
        return maddress;
    }
    public void setMaddress(String maddress) {
        this.maddress = maddress;
    }
    public String getMemail() {
        return memail;
    }
    public void setMemail(String memail) {
        this.memail = memail;
    }

}

创建数据库帮助类

package Dao_Base;

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
     import java.sql.Statement;

   public class Base_Dao {

        //数据库名和登入密码
        String driver="oracle.jdbc.driver.OracleDriver";
        String url="jdbc:oracle:thin:@localhost:1521:ORCL";
        String user = "epet";
        String pwd = "123456";

        //建立数据库连接方法
        public Connection getConnection(){
            //加载驱动
            try {
                //第一步:加载驱动
                Class.forName(driver);
            } catch (ClassNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

            Connection con =null;

              //获取连接对象
            try {
                con =DriverManager.getConnection(url,user,pwd);

                //连接数据库
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();

            }
                 return con;
        }

        //======释放资源方法=======

    public  void ShiFang(ResultSet rs, Statement st,Connection con){

               //如果结果集不为空,则释放成功 ,否则失败
                   try {
                       if(rs!=null){
                              rs.close();
                       }if(st!=null){
                             st.close();
                       }if(con!=null){
                         con.close();  

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

     }

第三步:三层架构(业务逻辑层+数据访问层+实现层)

package Dao;

import java.util.List;

import entity.Club_Name;

public interface Club_Name_Select {

    //创建查询类所有人的位子的情况
    public List<Club_Name> Culb();

    //创建根据ID查询内容的方法
    public List<Club_Name> Culb2(String id);

    //根据id进行修改
    public String Culd3(String id,String mname,String mgender,String  mage,String maddress,String memail );

}
package Dao_Impl;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import entity.Club_Name;
import Dao.Club_Name_Select;
import Dao_Base.Base_Dao;

public class Club_Name_Impl extends Base_Dao implements  Club_Name_Select{

    //创建数据库连接对象
    Connection con=this.getConnection();

    //创建写入sql语句的参数
    PreparedStatement ps=null;

    //创建结果集接收
    ResultSet rs=null;

    //创建sql语句
    String sql="";

    public List<Club_Name> Culb() {

        //创建数据库查询
        sql="select * from memberisnfo";

        //创建实体类集合接收
        List<Club_Name> list=new ArrayList<Club_Name>();

        try {
            //写入sql
            ps=con.prepareStatement(sql);

            //执行sql
            rs=ps.executeQuery();

            //循环输出并存入集合装入实体类
            while(rs.next()){

                //实例化实体类对象
                Club_Name name=new Club_Name();

                //开始存入
                name.setId(rs.getString (1));
                name.setMname(rs.getString(2));
                name.setMgender(rs.getString(3));
                name.setMage(rs.getString (4));
                name.setMaddress(rs.getString(5));
                name.setMemail(rs.getString(6));

                //将查询的对象存入集合中去
                list.add(name);
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return list;
    }

    public List<Club_Name> Culb2(String  id) {
        //创建数据库查询
        sql="select * from memberisnfo where id=?";

        //创建实体类集合接收
        List<Club_Name> list=new ArrayList<Club_Name>();

        try {
            //写入sql
            ps=con.prepareStatement(sql);
            ps.setString (1, id);

            //执行sql
            rs=ps.executeQuery();

            //循环输出并存入集合装入实体类
            while(rs.next()){

                //实例化实体类对象
                Club_Name name=new Club_Name();

                //开始存入
                name.setId(rs.getString (1));
                name.setMname(rs.getString(2));
                name.setMgender(rs.getString(3));
                name.setMage(rs.getString (4));
                name.setMaddress(rs.getString(5));
                name.setMemail(rs.getString(6));

                //将查询的对象存入集合中去
                list.add(name);
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return list;
    }

    public String Culd3(String  id,String mname, String mgender, String  mage,
            String maddress, String memail) {

        //创建数据库查询
        sql="update memberisnfo set mname=?,mgender=?,mage=?,maddress=?,memail=? where id=?";

        int q=0;
        try {
            //写入sql
            ps=con.prepareStatement(sql);
            ps.setString(1, mname);
            ps.setString(2, mgender);
            ps.setString (3, mage);
            ps.setString(4, maddress);
            ps.setString(5, memail);
            ps.setString (6, id);

            //执行sql
            q=ps.executeUpdate();

        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        if(q>0){

            return "ok";
        }else{

            return "no";
        }
    }

}
package servlet;

import java.io.IOException;
import java.io.UnsupportedEncodingException;

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

import Dao_Impl.Club_Name_Impl;

public class Club_Name extends HttpServlet{

    //创建post提交方法
    public void doPost(HttpServletRequest request,HttpServletResponse response){

        try {

            //获取传过来的id值
            String id=request.getParameter("id");
            id=new String(id.getBytes("ISO-8859-1"),"utf-8");

            //获取传过来的性别值
            String sex=(String)request.getParameter("va");
            sex=new String(sex.getBytes("ISO-8859-1"),"utf-8");

            //获取名字的默认值
            String name=request.getParameter("name");
            name=new String(name.getBytes("ISO-8859-1"),"utf-8");

            //获取年龄
            String Mage=request.getParameter("year");
            Mage=new String (Mage.getBytes("ISO-8859-1"),"utf-8");

            //获取家庭住址
            String Maddress=request.getParameter("location");
            Maddress=new String(Maddress.getBytes("ISO-8859-1"),"utf-8");

            //获取家庭住址
            String Email=request.getParameter("email");
            Email=new String(Email.getBytes("ISO-8859-1"),"utf-8");

            //实例化更新对象
            Club_Name_Impl impl=new Club_Name_Impl();

            //调用更新的方法
            String update=impl.Culd3(id, name, sex, Mage, Maddress, Email);

            request.setAttribute("update", update);

            //传送值到首页
            request.getRequestDispatcher("index.jsp").forward(request, response);

        } catch (UnsupportedEncodingException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (ServletException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

}

配置web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

    <!--接收需要提交的值-->
    <servlet>
    <servlet-name>Club_Name</servlet-name>
    <servlet-class>servlet.Club_Name</servlet-class>
    </servlet>

  <!-- 映射servlet -->
  <servlet-mapping>
      <servlet-name>Club_Name</servlet-name>
      <url-pattern>/Club_Name</url-pattern>
  </servlet-mapping>

  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

jsp页面显示层

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@page import="Dao_Impl.Club_Name_Impl"%>
<%@page import="entity.Club_Name"%>

<%
//实例化查询对象
Club_Name_Impl impl=new Club_Name_Impl();

//利用集合接收对象
List<Club_Name> list=impl.Culb();

//接收传过来的结果值
String update=(String)request.getAttribute("update");

//开始判断
if("ok".equals(update)){

    %>
    <script type="text/javascript">
    alert("修改成功!!!");
   </script>
    <%
}else if("no".equals(update)){

    %>
    <script type="text/javascript">
    alert("修改失败!!!");
   </script>
    <%
}else{

}

%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>

    <title>查询俱乐部会员信息</title>

  </head>

  <body>
  <div style="width:800px;margin:auto;border:0px solid red">
   <table border="1px solid red" width="800px" style="margin:auto">
   <tr style="background:#A5A4A7">
      <td colspan="6"><center><b>俱乐部会员信息号</b></center></td>
   </tr>
   <tr style="background:#A5A4A7">
   <td><center><b>编号</b></center></td>
   <td><center><b>姓名</b></center></td>
   <td><center><b>姓名</b></center></td>
   <td><center><b>年龄</b></center></td>
   <td><center><b>家庭住址</b></center></td>
   <td><center><b>Email</b></center></td>
   </tr>
   <%
   //传出参数并进行赋值调用
   for(int i=0;i<list.size();i++){

       //实例化实体类
       Club_Name room=list.get(i);
       %>
       <tr>
       <td><center><a href="Club_Name_Amend.jsp?id=<%=room.getId() %>"><%=room.getId() %></a></center></td>
       <td><center><%=room.getMname()%></center></td>
       <td><center><%=room.getMgender() %></center></td>
       <td><center><%=room.getMage() %></center></td>
       <td><center><%=room.getMaddress() %></center></td>
       <td><center><%=room.getMemail() %></center></td>
       </tr>
       <%
   }
   %>
   </table>
   </div>
  </body>
</html>

需改页面:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@page import="Dao_Impl.Club_Name_Impl"%>
<%@page import="entity.Club_Name"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%
//获取接收过来的id值
String id=request.getParameter("id");

//吧获取的id值进行转发
request.setAttribute("id",id);

//实例化查询对象
Club_Name_Impl impl=new Club_Name_Impl();

//利用集合接收对象
List<Club_Name> list=impl.Culb2(id);
%>

<!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">

  </head>

  <body>
    <div style="width:400px;margin:auto;border:0px solid red">
    <form action="Club_Name?id=<%=id %>" method="post">
   <table border="1px solid red" width="400px" style="background:#A5A4A7;margin:auto">
   <tr >
   <td colspan="2"><center><b>会员信息</b></center></td>
   </tr>
   <%
   for(int i=0;i<list.size();i++){

       //实例化实体类
       Club_Name room=list.get(i);
   %>
    <tr>
   <td ><center><b>姓名</b></center></td>
   <td ><b><input type="text" value="<%=room.getMname()%>" name="name"></b></td>
   </tr>
       <tr>
   <td ><center><b>性别</b></center></td>
   <td ><input type="radio" value="男" name="va" id="va1" />男&emsp;<input type="radio" value="女"  name="va" id="va2"/>女</td>
   </tr>
       <tr>
   <td ><center><b>年龄</b></center></td>
   <td ><b><input type="text" value="<%=room.getMage() %> " name="year"/></b></td>
   </tr>
       <tr>
   <td ><center><b>家庭住址</b></center></td>
   <td ><b><input type="text" value="<%=room.getMaddress() %>" name="location"></b></td>
   </tr>
       <tr>
   <td ><center><b>Email</b></center></td>
   <td ><b><input type="text"value="<%=room.getMemail() %>" name="email"></b></td>
   </tr>
   <script type="text/javascript">

  //获取男的按钮的值
  var name=document.getElementById("va1");

  //获取女的按钮值
  var name1=document.getElementById("va2");

  //判断是男或者女
  if(name.value=="<%=room.getMgender()%>"){

      name.checked="checked";

  }else{

      name1.checked="checked";

  }

  </script>
   <%}

   %>
   <tr>
   <td colspan="2"><center><b><input type="submit" value="提交"/>&emsp;<input type="reset" value="重置"/></b></center></td>
   </tr>
   </table>
   </form>
   </div>
  </body>

</html>
时间: 2024-10-27 08:22:02

Java_Web之俱乐部会员信息管理系统的相关文章

java-第六章-for-循环录入会员信息

import java.util.Scanner; public class A02 { public static void main(String[] args) { // TODO Auto-generated method stub Scanner input = new Scanner(System.in); System.out.println("MyShoPing管理系统>客户信息管理>添加客户信息\n"); int No = 0; String Birthd

自写信息管理系统——C实现

信息管理系统 简介: 该管理系统分为三个权限:学生,老师,管理员 用双向链表实现,文件储存,有账号密码功能. 密码实现MD5加密,较难破解 实现了链表添加,查找,排序,删除等基本操作 共分为6个文件 5个.cpp文件  1个.h文件 下面上代码 : mian.cpp: #include<stdio.h> #include<math.h> #include<string.h> #include<conio.h> #include<stdlib.h>

学生信息管理系统修改

北京工业大学耿丹学院 c语言设计课程报告   课程设计名称:高级语言程序设计 专业班级:计算机科学与技术1 姓名:吴双 学号:150809201   2016年5月10日 一 对c语言指针链表的体会 ------------------------ 二 修改学生信息管理系统 ------------------------ 三 体会 ------------------------ 一 对c语言指针链表的体会 1.指针 简单来说,指针是一个存储计算机内存地址的变量. 用 int *ptr 这种形

Extjs5.0从入门到实战开发信息管理系统(Extjs基础、Extjs5新特性、Spring、Spring mvc、Mybatis)视频教程

Extjs5.0从入门到实战开发信息管理系统(Extjs基础.Extjs5新特性.Spring.Spring mvc.Mybatis)视频教程下载   联系QQ:1026270010 Extjs作为一款优秀的JS前端开发框架以其良好的架构.丰富的UI组件库.完善的文档和社区支持等诸多优点拥有广泛的市场应用空间,开发人员无需过多的关注HTML.CSS甚至各种常用JS算法,只需把精力放在业务逻辑上,利用各种组件的相互组合调用便可轻松而高效的开发出系统的前端页面. Extjs5在之前版本的基础上又推出

用基本数据结构修改后的学生信息管理系统(增删改查)

package com.xt.student.system; //创建学生类存放信息 public class Student {//声明变量private String stuNo; private String stuName; private String gender; private int age; private int score; //对变量进行封装 public String getStuNo() {return stuNo;} public void setStuNo(St

开发web信息管理系统用到的相关技术

Java Web应用的核心技术包括以下几个方面:● JSP:进行输入和输出的基本手段.● JavaBean:完成功能的处理.● Servlet:对应用的流程进行控制.● JDBC:是与数据库进行交互不可缺少的技术.● JSTL和表达式语言EL:完成对JSP页面中各种信息的控制和输出. 1.分布式技术 在开发复杂的应用系统时,往往把系统分成逻辑上或物理上分离的部件,部件通常在各自平台的运行环境中运行,平台可以是异构的,平台之间通过网络连接. 在开发分布式应用系统时,最开始是两层的C/S(客户/服务

基于数据库MySQL的简易学生信息管理系统

通过这几天学习Mysql数据库,对其也有了基本的了解,为了加深印象,于是就写了一个最简易的学生信息管理系统. 一:基本要求 1.通过已知用户名和密码进行登录: 2.可以显示菜单: 3.可以随时插入学生信息: 4.可以删除学生信息: 5.可以通过学生姓名或学号显示学生所有信息: 还可以修改学生信息,添加学生表格属性等等,,,这些实现都基本类似上述的(这些不想写了,最简易的学生信息管理系统): 二:步骤 1.写一个sql脚本,包括创建数据库,使用数据库,创建学生信息表格,插入大部分学生信息. stu

学生信息管理系统

根据资料显示,那么,如果写一个字符串到一个文件中,是什么方式呢?显示到屏幕上是默认的输出文件,如果是硬盘中的一个文件,首先要打开一个文件,然后才能往里写,那么就要告诉程序这个文件在什么地方,按照什么样的方式打开(读.写.读和写.添加.覆盖等),然后打开后要给这个打开的文件一个符号(指针变量),表示后续的读和写都是针对这个文件的,而不是到屏幕的,这个指针变量以后就代表了文件自身了. 在学生信息管理系统中,需要同时保存一个学生的姓名,性别,年龄等信息,那么设置变量保存很多同学的这些信息就有点不太方便

【学生信息管理系统】EOF 和 BOF

敲完学生信息管理系统时,在删除信息的时候,经常会出现下图这样的错误,遇到问题就要解决问题.经过查阅理解了记录集Recordset的EOF和BOF属性,用这两个属性可以知道记录集中是否有信息存在. EOF和BOF属性 BOF 指示当前记录位置位于 Recordset 对象的第一个记录之前. EOF 指示当前记录位置位于 Recordset 对象的最后一个记录之后. 返回值:BOF 和 EOF 属性返回布尔型值. 使用 BOF 和 EOF 属性可确定Recordset 对象是否包含记录,或者从一个记