本文讲述了一个社区养老信息管理系统的开发过程
本系统是基于B/S模式设计和开发的一个的社区养老信息养老网站[2],系统主要面向社区养老信息内部的管理人员,是一套集数据录入、查询和统计分析于一体的综合性软件系统。本系统要求实现以下功能:
(1)用户管理: 实现登入/退出、用户注册、信息修改功能;
(2)养老动态: 养老信息的展示、以及过时信息的处理;
(3)活动信息: 实现用户活动信息的功能;
(4)财务管理: 对财务信息进行编辑、删除等;
它的部分数据库表摘录如下
表2 t_chengyuan 老人表
字段名称 | 字段类型 | 说明 |
id | int | 编号 |
name | varchar | 姓名 |
sex | varchar | 性别 |
nianlin | varchar | 年龄 |
ruxueriqi | varchar | 入会日期 |
beizhu | varchar | 备注 |
del | varchar | 是否删除 |
photo | varchar | 照片 |
表3 t_fuli 福利表
字段名称 | 字段类型 | 说明 |
id | int | 编号 |
danjuhao | varchar | 单据号 |
shijian | varchar | 日期 |
zongjiage | int | 金额 |
jingshouren | varchar | 发放对象 |
beizhu | varchar | 备注 |
del | varchar | 是否删除 |
其中部分关键的代码摘录如下
package com.action;
import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.dao.DB;
import com.orm.huodong;
public class huodong_servlet extends HttpServlet
{
public void service(HttpServletRequest req,HttpServletResponse res)throws ServletException, IOException
{
String type=req.getParameter("type");
if(type.endsWith("huodongAdd"))
{
huodongAdd(req, res);
}
if(type.endsWith("huodongEdit"))
{
huodongEdit(req, res);
}
if(type.endsWith("huodongMana"))
{
huodongMana(req, res);
}
if(type.endsWith("huodongDel"))
{
huodongDel(req, res);
}
}
public void huodongAdd(HttpServletRequest req,HttpServletResponse res)
{
String name=req.getParameter("name");
String address=req.getParameter("fujian");
String beizhu=req.getParameter("beizhu");
String sql="insert into t_huodong (`name`, `address`, `beizhu` , `del`) values(?,?,?,?)";
Object[] params={name, address,beizhu ,"no"};
DB mydb=new DB();
mydb.doPstm(sql, params);
mydb.closed();
req.setAttribute("message", "操作成功");
req.setAttribute("path", "huodong?type=huodongMana");
String targetURL = "/common/success.jsp";
dispatch(targetURL, req, res);
}
public void huodongEdit(HttpServletRequest req,HttpServletResponse res)
{
String name=req.getParameter("name");
String address=req.getParameter("fujian");
String beizhu=req.getParameter("beizhu");
String sql="update t_huodong set name='"+name+"' ,address='"+address+"',beizhu='"+beizhu+"' where id="+Integer.parseInt(req.getParameter("id"));
Object[] params={};
DB mydb=new DB();
mydb.doPstm(sql, params);
mydb.closed();
req.setAttribute("message", "操作成功");
req.setAttribute("path", "huodong?type=huodongMana");
String targetURL = "/common/success.jsp";
dispatch(targetURL, req, res);
}
public void huodongDel(HttpServletRequest req,HttpServletResponse res)
{
int id=Integer.parseInt(req.getParameter("id"));
String sql="update t_huodong set del=? where id=?";
Object[] params={"yes",id};
DB mydb=new DB();
mydb.doPstm(sql, params);
mydb.closed();
req.setAttribute("message", "操作成功");
req.setAttribute("path", "huodong?type=huodongMana");
String targetURL = "/common/success.jsp";
dispatch(targetURL, req, res);
}
public void huodongMana(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
String page1=req.getParameter("page");
if(page1==null){
page1="1";
}
//分页设置
int EVERYPAGENUM=10;//每页条数
int page=Integer.parseInt(page1); //传递过来的当前页
int cou = 1;//得到信息总数
int pagecount=1; //总页数
String sql1="select count(*) as cou from t_huodong where del='no'";
if(req.getParameter("mingcheng")!=null) sql1+=" and name like '%"+req.getParameter("mingcheng").trim()+"%'";
Object[] params1={};
DB mydb1=new DB();
try
{
mydb1.doPstm(sql1, params1);
ResultSet rs=mydb1.getRs();
while(rs.next())
{
cou= rs.getInt("cou");
}
rs.close();
}
catch(Exception e)
{
e.printStackTrace();
}
mydb1.closed();
if (cou % EVERYPAGENUM == 0) {
pagecount= cou / EVERYPAGENUM;
} else {
pagecount=cou / EVERYPAGENUM + 1;
}
req.setAttribute("EVERYPAGENUM", EVERYPAGENUM);
req.setAttribute("page", page);
req.setAttribute("cou", cou);
req.setAttribute("pagecount", pagecount);
List huodongList=new ArrayList();
String sql="select * from t_huodong where del='no'";
if(req.getParameter("mingcheng")!=null) sql+=" and name like '%"+req.getParameter("mingcheng").trim()+"%'";
Object[] params={};
DB mydb=new DB();
try
{
mydb.doPstm(sql, params);
ResultSet rs=mydb.getRs();
for (int i = 0; i < (page - 1) * EVERYPAGENUM; i++) {
rs.next();
}
for (int t = 0; t < EVERYPAGENUM; t++) {
if (rs.next()) {
huodong huodong=new huodong();
huodong.setId(rs.getInt("id"));
huodong.setName(rs.getString("name"));
huodong.setAddress(rs.getString("address"));
huodong.setBeizhu(rs.getString("beizhu"));
huodongList.add(huodong);
} else {
break; //减少空循环的时间
}
}
rs.close();
}
catch(Exception e)
{
e.printStackTrace();
}
mydb.closed();
req.setAttribute("huodongList", huodongList);
req.getRequestDispatcher("admin/huodong/huodongMana.jsp").forward(req, res);
}
public void dispatch(String targetURI,HttpServletRequest request,HttpServletResponse response)
{
RequestDispatcher dispatch = getServletContext().getRequestDispatcher(targetURI);
try
{
dispatch.forward(request, response);
return;
}
catch (ServletException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
public void init(ServletConfig config) throws ServletException
{
super.init(config);
}
public void destroy()
{
}
}
最终的界面演示截图