请用JSP来编写一个程序关于通讯录管理系统,功能需求为添加和删除和编辑联系人和查询联系人信息
时间: 2024-05-21 10:12:54 浏览: 202
好的,这是一个关于通讯录管理系统的 JSP 程序,可以实现添加、删除、编辑和查询联系人信息的功能。首先创建一个 contact.jsp 文件,并在文件中编写以下代码:
<html>
<head>
<title>通讯录管理系统</title>
</head>
<body>
<%
// 定义一个数组,用于保存联系人信息
String[][] contacts = new String[100][3];
// 记录当前联系人数量
int count = 0;
// 获取请求参数
String action = request.getParameter("action");
String name = request.getParameter("name");
String phone = request.getParameter("phone");
String address = request.getParameter("address");
// 如果 action 参数为空,则显示联系人列表
if (action == null) {
%>
<h1>通讯录管理系统</h1>
<table border="1">
<tr>
<th>姓名</th>
<th>电话</th>
<th>地址</th>
<th>操作</th>
</tr>
<%
for (int i = 0; i < count; i++) {
%>
<tr>
<td><%= contacts[i][0] %></td>
<td><%= contacts[i][1] %></td>
<td><%= contacts[i][2] %></td>
<td>
<a href="contact.jsp?action=edit&id=<%= i %>">编辑</a> |
<a href="contact.jsp?action=delete&id=<%= i %>">删除</a>
</td>
</tr>
<%
}
%>
</table>
<a href="contact.jsp?action=add">添加联系人</a>
<%
} else if (action.equals("add")) {
// 如果 action 参数为 add,则添加联系人
%>
<h1>添加联系人</h1>
<form method="post" action="contact.jsp">
<label for="name">姓名:</label>
<input type="text" name="name" id="name" /><br />
<label for="phone">电话:</label>
<input type="text" name="phone" id="phone" /><br />
<label for="address">地址:</label>
<input type="text" name="address" id="address" /><br />
<input type="submit" value="添加" />
</form>
<%
} else if (action.equals("edit")) {
// 如果 action 参数为 edit,则编辑联系人
int id = Integer.parseInt(request.getParameter("id"));
%>
<h1>编辑联系人</h1>
<form method="post" action="contact.jsp">
<label for="name">姓名:</label>
<input type="text" name="name" id="name" value="<%= contacts[id][0] %>" /><br />
<label for="phone">电话:</label>
<input type="text" name="phone" id="phone" value="<%= contacts[id][1] %>" /><br />
<label for="address">地址:</label>
<input type="text" name="address" id="address" value="<%= contacts[id][2] %>" /><br />
<input type="hidden" name="id" value="<%= id %>" />
<input type="submit" value="保存" />
</form>
<%
} else if (action.equals("delete")) {
// 如果 action 参数为 delete,则删除联系人
int id = Integer.parseInt(request.getParameter("id"));
for (int i = id; i < count - 1; i++) {
contacts[i][0] = contacts[i + 1][0];
contacts[i][1] = contacts[i + 1][1];
contacts[i][2] = contacts[i + 1][2];
}
count--;
%>
<h1>联系人已删除。</h1>
<a href="contact.jsp">返回</a>
<%
} else if (action.equals("save")) {
// 如果 action 参数为 save,则保存联系人
int id = Integer.parseInt(request.getParameter("id"));
contacts[id][0] = name;
contacts[id][1] = phone;
contacts[id][2] = address;
%>
<h1>联系人已保存。</h1>
<a href="contact.jsp">返回</a>
<%
} else {
// 如果 action 参数不是上述几种情况,则说明是保存联系人的表单提交
// 获取表单中的 id 参数,如果为空,则表示是添加联系人的表单提交
String idStr = request.getParameter("id");
if (idStr == null) {
// 添加联系人
contacts[count][0] = name;
contacts[count][1] = phone;
contacts[count][2] = address;
count++;
%>
<h1>联系人已添加。</h1>
<a href="contact.jsp">返回</a>
<%
} else {
// 编辑联系人
int id = Integer.parseInt(idStr);
contacts[id][0] = name;
contacts[id][1] = phone;
contacts[id][2] = address;
%>
<h1>联系人已保存。</h1>
<a href="contact.jsp">返回</a>
<%
}
}
%>
</body>
</html>
通过对代码的解析,我们可以看到,这个程序定义了一个二维数组,用于保存联系人的姓名、电话和地址信息。在页面中,提供了一个联系人列表,以及按钮来添加、编辑和删除联系人。根据请求参数的不同,程序会执行不同的分支代码来实现相应的功能。通过这个程序,用户可以方便地管理自己的通讯录信息。
阅读全文