• jdbc电话本项目


    整体思路:在登陆之后才能查看自己的电话本,电话本中包含用户名,联系人名字,电话,性别,分类;

    1、登陆注册页面--数据库User表,注册登陆使用

    2、电话本的前段显示,用表格和表单,

    3、创建存取的电话本的表的类,实现各种setget方法及构造方法

    4、电话本需要查询,删除,添加,修改的功能,创建java文件实现这些方法

    5、创建各种方法的servlet,实现这些功能,

    注意:进行非空验证,还有就是在电话本的存储的表中要有隐藏的id,通过前台传入id,作为主键去判断实现那些方法,在登陆之后要注意接收登录时的用户名,

    需要用到的还有就是js中的点击事件等等

    gettimestamp:时间戳,表示出日期和时间

    1、在前段显示表格

    欢迎, [<%=username%>]&nbsp;&nbsp;&nbsp;&nbsp;
    <a href="login.jsp">重新登录</a>&nbsp;
    <a href="register.jsp">新用户注册</a>
    <hr>
    <h2>添加(或者修改)联系人信息</h2>
    <form id="addOrUpdateForm" action="InsertOrUpdateContactServlet"
    method="post">
    <input type="hidden" name="id" />
    <table>
    <tr>
    <td>联系人名称:</td>
    <td><input type="text" name="cname" /></td>
    </tr>
    <tr>
    <td>电话:</td>
    <td><input type="text" name="tel" /></td>
    </tr>
    <tr>
    <td>性别:</td>
    <td><select name="sex">
    <option value="">未选择</option>
    <option value="">男</option>
    <option value="">女</option>
    <option value="其他">其他</option>
    </select></td>
    </tr>
    <tr>
    <td>分组:</td>
    <td><select name="tcgroup">
    <option value="">未选择</option>
    <option value="同事">同事</option>
    <option value="朋友">朋友</option>
    <option value="同学">同学</option>
    <option value="家人">家人</option>
    </select></td>
    </tr>
    <tr>
    <td><input type="submit" value="保存"></td>
    <td><input type="reset" value="重置" /></td>
    </tr>
    </table>
    </form>
    <hr>
    <h2>查询联系人</h2>
    <form action="ShowIndexContactServlet" method="post">
    <input type="hidden" name="isSearch" value="do" /> 联系人名称:<input
    type="text" name="cname" /> 电话:<input type="text" name="tel" /> 性别:
    <select name="sex">
    <option value="">未选择</option>
    <option value="">男</option>
    <option value="">女</option>
    <option value="其他">其他</option>
    </select> 分组: <select name="tcgroup">
    <option value="">未选择</option>
    <option value="同事">同事</option>
    <option value="朋友">朋友</option>
    <option value="同学">同学</option>
    <option value="家人">家人</option>
    </select> <input type="submit" value="查询" /><input type="button"
    id="btn_delMultiple" value="删除选中记录" onclick="confirmMultiDel()" />
    </form>
    
    <hr>
    //在表格内输出
    
    <%
    List<ContactBook> cbList = (List<ContactBook>) session.getAttribute("cbList");
    if (cbList != null && cbList.size() > 0) {
    out.print("<table style='text-align:center;' width='60%' border=1 cellpadding=0 cellspacing=0>");
    out.print("<tr><td>名称</td><td>电话</td><td>分组</td><td>性别</td><td>添加时间</td><td>管理</td>"
    + "<td><input id='leader' type='checkbox' /></td></tr>");
    for (ContactBook c : cbList) {
    out.print("<tr>");
    out.print("<td>" + c.getName() + "</td>");
    out.print("<td>" + c.getTel() + "</td>");
    out.print("<td>" + c.getTcgroup() + "</td>");
    out.print("<td>" + c.getSex() + "</td>");
    out.print("<td>" + DateConvertor.putDate2String(c.getAddtime()) + "</td>");
    out.print("<td><a href='DeleteContactBook?ids=" + c.getId()
    + "' onclick='return confirmDel()'>删除</a>&nbsp;" + "<a href='#' onclick='loadFormData(""
    + c.getId() + "", "" + c.getName() + "", "" + c.getTel() + "", "" + c.getSex()
    + "","" + c.getTcgroup() + "")'>修改</a></td>");
    out.print("<td><input type='checkbox' name='select' value='" + c.getId() + "' /></td>");
    out.print("</tr>");
    }
    out.print("</table>");
    } else {
    out.print("<h1>没有记录 !</h1>");
    }
    %>
    
    <script type="text/javascript">
    // 点击修改时执行的事件, 将form表单填充
    function loadFormData(id, cname, tel, sex, tcgroup) {
    var formData = document.getElementById("addOrUpdateForm");
    formData.id.value = id;
    formData.cname.value = cname;
    formData.tel.value = tel;
    formData.tcgroup.value = tcgroup;
    formData.sex.value = sex;
    }

    // 单条记录删除的确认
    function confirmDel() {
    var r = confirm("确定要删除这条记录吗 ?");
    if (r) {
    return true;
    }
    return false;
    }

    // 多条记录删除的确认
    function confirmMultiDel() {
    var objs = document.getElementsByName("select");
    var arrayCheck = [];
    for (var i in objs) {
    if (objs[i].checked) {
    arrayCheck.push(objs[i].value);
    }
    }
    if(arrayCheck.length > 0) {
    var cf = confirm("选中了" + arrayCheck.length + "条数据, 确定删除吗 ?");
    if (cf) {
    window.location.href = "DeleteContactBook?ids=" + arrayCheck;
    // 1,2,3,4,5
    }
    } else {
    alert("未选中任何记录 !");
    }
    }

    // 点击复选框, 全选列表
    document.getElementById("leader").onclick = function() {
    var t = document.getElementById("leader").checked;
    var objs = document.getElementsByName("select");
    for (var i = 0; i < objs.length; i++) {
    objs[i].checked = t;
    }
    }
    </script>

  • 相关阅读:
    LOJ 2553 「CTSC2018」暴力写挂——边分治+虚树
    hdu 1028 & hdu 1398 —— 整数划分(生成函数)
    bzoj 4827 [Hnoi2017] 礼物 —— FFT
    bzoj 4503 两个串 —— FFT
    bzoj 3527 [Zjoi2014] 力 —— FFT
    bzoj 3160 万径人踪灭 —— FFT
    bzoj 2194 快速傅立叶之二 —— FFT
    bzoj 2179 FFT快速傅立叶 —— FFT
    洛谷 P3803 多项式乘法(FFT) —— FFT
    CF 1009 F Dominant Indices —— 长链剖分+指针
  • 原文地址:https://www.cnblogs.com/NCL--/p/7429834.html
Copyright © 2020-2023  润新知