寒假web开发4
表三: Person
sql
点击查看代码
CREATE TABLE tb_person (
userID VARCHAR(12) PRIMARY KEY , -- 信息提供者ID(主键)
OlderID CHAR(8), -- 关联的老人ID(外键)
ProviderName VARCHAR(50), -- A.3.1 信息提供者的姓名
Relationship INT, -- A.3.2 信息提供者与老人的关系
OtherRelationship VARCHAR(50), -- A.3.2 其他关系(如果选择“其他”)
ContactName VARCHAR(50), -- A.3.3 联系人姓名
ContactPhone VARCHAR(20) -- A.3.4 联系人电话
);
PersonMapper
点击查看代码
package com.QixunQiu.mapper;
import com.QixunQiu.pojo.Older;
import com.QixunQiu.pojo.Person;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
public interface PersonMapper {
@Select("select * from tb_person where userID = #{userID} ")
List<Person> select(@Param("userID") String userID);
void addPerson(Person person);
}
Person的pojo
点击查看代码
package com.QixunQiu.pojo;
public class Person {
private String userID;
private String olderID;
private String providerName;
private Integer relationship;
private String otherRelationship;
private String contactName;
private String contactPhone;
// Getter 和 Setter 方法
public String getUserID() {
return userID;
}
public void setUserID(String userID) {
this.userID = userID;
}
public String getOlderID() {
return olderID;
}
public void setOlderID(String olderID) {
this.olderID = olderID;
}
public String getProviderName() {
return providerName;
}
public void setProviderName(String providerName) {
this.providerName = providerName;
}
public Integer getRelationship() {
return relationship;
}
public void setRelationship(Integer relationship) {
this.relationship = relationship;
}
public String getOtherRelationship() {
return otherRelationship;
}
public void setOtherRelationship(String otherRelationship) {
this.otherRelationship = otherRelationship;
}
public String getContactName() {
return contactName;
}
public void setContactName(String contactName) {
this.contactName = contactName;
}
public String getContactPhone() {
return contactPhone;
}
public void setContactPhone(String contactPhone) {
this.contactPhone = contactPhone;
}
@Override
public String toString() {
return "Person{" +
"userID='" + userID + '\'' +
", olderID='" + olderID + '\'' +
", providerName='" + providerName + '\'' +
", relationship=" + relationship +
", otherRelationship='" + otherRelationship + '\'' +
", contactName='" + contactName + '\'' +
", contactPhone='" + contactPhone + '\'' +
'}';
}
}
PersonService
点击查看代码
package com.QixunQiu.service;
import com.QixunQiu.mapper.OlderMapper;
import com.QixunQiu.mapper.PersonMapper;
import com.QixunQiu.pojo.Older;
import com.QixunQiu.pojo.Person;
import com.QixunQiu.util.SqlSessionFactoryUtils;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import java.util.List;
public class PersonService {
SqlSessionFactory sqlSessionFactory = SqlSessionFactoryUtils.getSqlSessionFactory();
public List<Person> selectPerson(String userID) {
SqlSession sqlSession = sqlSessionFactory.openSession();
PersonMapper personMapper = sqlSession.getMapper(PersonMapper.class);
List<Person> Persons=personMapper.select(userID);
sqlSession.close();
return Persons;
}
public void addPerson(Person person) {
SqlSession sqlSession = sqlSessionFactory.openSession();
PersonMapper personMapper = sqlSession.getMapper(PersonMapper.class);
personMapper.addPerson(person);
sqlSession.commit();
sqlSession.close();
}
}
AddPersonServlet
点击查看代码
package com.QixunQiu.web;
import com.QixunQiu.pojo.Person;
import com.QixunQiu.pojo.User;
import com.QixunQiu.service.PersonService;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;
import java.util.List;
@WebServlet("/AddPersonServlet")
public class AddPersonServlet extends HttpServlet {
private PersonService personService = new PersonService();
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
HttpSession session = request.getSession();
User user = (User) session.getAttribute("user");
String userID = user.getUserID();
String olderID = request.getParameter("olderID");
String providerName = request.getParameter("providerName");
String relationship= request.getParameter("relationship");
String otherRelationship= request.getParameter("otherRelationship");
String contactName= request.getParameter("contactName");
String contactPhone= request.getParameter("contactPhone");
Person person = new Person();
person.setUserID(userID);
person.setOlderID(olderID);
person.setProviderName(providerName);
person.setRelationship(Integer.valueOf(relationship));
person.setOtherRelationship(otherRelationship);
person.setContactName(contactName);
person.setContactPhone(contactPhone);
personService.addPerson(person);
List<Person> persons= personService.selectPerson(user.getUserID());
session.setAttribute("persons", persons);
request.getRequestDispatcher("/person.jsp").forward(request,response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doGet(request, response);
}
}
selectPersonServlet
点击查看代码
package com.QixunQiu.web;
import com.QixunQiu.pojo.Older;
import com.QixunQiu.pojo.Person;
import com.QixunQiu.pojo.User;
import com.QixunQiu.service.PersonService;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;
@WebServlet("/selectPersonServlet")
public class selectPersonServlet extends HttpServlet {
private PersonService personService = new PersonService();
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=utf-8");
HttpSession session = request.getSession();
User user = (User) session.getAttribute("user");
List<Person> persons= personService.selectPerson(user.getUserID());
PrintWriter writer = response.getWriter();
if(!persons.isEmpty()){
// 登陆成功
writer.write("登陆成功");
session.setAttribute("persons", persons);
request.getRequestDispatcher("/person.jsp").forward(request,response);
}else {
// 登陆失败
writer.write("登陆失败");
request.getRequestDispatcher("/addPerson.jsp").forward(request,response);
}
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doGet(request, response);
}
}
PersonMapper.xml
点击查看代码
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.QixunQiu.mapper.PersonMapper">
<insert id="addPerson" parameterType="com.QixunQiu.pojo.Person">
INSERT INTO tb_person (
userID,
OlderID,
ProviderName,
Relationship,
OtherRelationship,
ContactName,
ContactPhone
) VALUES (
#{userID},
#{olderID},
#{providerName},
#{relationship},
#{otherRelationship},
#{contactName},
#{contactPhone}
)
</insert>
</mapper>
addPerson.jsp
点击查看代码
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>添加信息提供者</title>
<style>
body {
font-family: Arial, sans-serif;
margin: 20px;
}
.form-group {
margin-bottom: 15px;
}
label {
display: block;
margin-bottom: 5px;
font-weight: bold;
}
input[type="text"], select {
width: 100%;
padding: 8px;
box-sizing: border-box;
}
.submit-btn {
background-color: #4CAF50;
color: white;
padding: 10px 20px;
border: none;
cursor: pointer;
}
.submit-btn:hover {
background-color: #45a049;
}
</style>
</head>
<body>
<h1>添加信息提供者</h1>
<form action="${pageContext.request.contextPath}/AddPersonServlet" method="post">
<!-- 关联的老人ID -->
<div class="form-group">
<label for="olderID">评估编号:</label>
<input type="text" id="olderID" name="olderID" required>
</div>
<!-- 信息提供者的姓名 -->
<div class="form-group">
<label for="providerName">信息提供者的姓名:</label>
<input type="text" id="providerName" name="providerName" required>
</div>
<!-- 信息提供者与老人的关系 -->
<div class="form-group">
<label for="relationship">信息提供者与老人的关系:</label>
<select id="relationship" name="relationship" required>
<option value="1">配偶</option>
<option value="2">子女</option>
<option value="3">其他亲属</option>
<option value="4">雇佣照顾者</option>
<option value="5">其他</option>
</select>
</div>
<!-- 其他关系 -->
<div class="form-group">
<label for="otherRelationship">其他关系(如果选择“其他”):</label>
<input type="text" id="otherRelationship" name="otherRelationship">
</div>
<!-- 联系人姓名 -->
<div class="form-group">
<label for="contactName">联系人姓名:</label>
<input type="text" id="contactName" name="contactName" required>
</div>
<!-- 联系人电话 -->
<div class="form-group">
<label for="contactPhone">联系人电话:</label>
<input type="text" id="contactPhone" name="contactPhone" required>
</div>
<!-- 提交按钮 -->
<div class="form-group">
<input type="submit" class="submit-btn" value="提交">
</div>
</form>
</body>
</html>
person.jsp
点击查看代码
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>信息提供者列表</title>
<style>
body {
font-family: Arial, sans-serif;
margin: 20px;
}
h1 {
text-align: center;
}
table {
width: 100%;
border-collapse: collapse;
margin-top: 20px;
}
table, th, td {
border: 1px solid #ddd;
}
th, td {
padding: 10px;
text-align: left;
}
th {
background-color: #f2f2f2;
}
tr:hover {
background-color: #f5f5f5;
}
</style>
</head>
<body>
<h1>信息提供者列表</h1>
<table>
<thead>
<tr>
<th>评估编号</th>
<th>信息提供者姓名</th>
<th>与老人的关系</th>
<th>其他关系</th>
<th>联系人姓名</th>
<th>联系人电话</th>
</tr>
</thead>
<tbody>
<c:forEach var="person" items="${persons}">
<tr>
<td>${person.olderID}</td>
<td>${person.providerName}</td>
<td>
<c:choose>
<c:when test="${person.relationship == 1}">配偶</c:when>
<c:when test="${person.relationship == 2}">子女</c:when>
<c:when test="${person.relationship == 3}">其他亲属</c:when>
<c:when test="${person.relationship == 4}">雇佣照顾者</c:when>
<c:when test="${person.relationship == 5}">其他</c:when>
<c:otherwise>未知</c:otherwise>
</c:choose>
</td>
<td>${person.otherRelationship}</td>
<td>${person.contactName}</td>
<td>${person.contactPhone}</td>
</tr>
</c:forEach>
</tbody>
</table>
</body>
</html>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能