首页 > 其他分享 >家庭记账本(十)

家庭记账本(十)

时间:2024-01-27 15:22:08浏览次数:26  
标签:homeCost BigDecimal request 家庭 记账 action import response

5.Web层Servlet层

Servlet创建方式:项目名右键new--Servlet,使用@WebServlet注解,省去配置web.xml的时间

1 package com.wang.web;
  2 
  3 import java.io.IOException;
  4 import java.math.BigDecimal;
  5 import java.util.List;
  6 
  7 import javax.servlet.ServletException;
  8 import javax.servlet.annotation.WebServlet;
  9 import javax.servlet.http.HttpServlet;
 10 import javax.servlet.http.HttpServletRequest;
 11 import javax.servlet.http.HttpServletResponse;
 12 
 13 import com.wang.pojo.HomeCost;
 14 import com.wang.service.HomeCostService;
 15 import com.wang.utils.WebUtils;
 16 
 17 /**
 18  * 访问地址url:localhost:8080/homeCost/manager/homeCostServlet
 19  * Servlet implementation class HomeCostServlet
 20  */
 21 @WebServlet("/manager/homeCostServlet")
 22 public class HomeCostServlet extends HttpServlet {
 23     private static final long serialVersionUID = 1L;
 24     private HomeCostService homeCostService = new HomeCostService();
 25     
 26     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 27         doPost(request, response);
 28     }
 29 
 30     protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 31         String action = request.getParameter("action");
 32         if("add".equals(action)) {
 33             add(request, response);
 34         }else if("delete".equals(action)) {
 35             delete(request, response);
 36         }else if("update".equals(action)) {
 37             update(request, response);
 38         }else if("list".equals(action)) {
 39             list(request, response);
 40         }else if("getHomeCostById".equals(action)) {
 41             getHomeCostById(request, response);
 42         }else if("query".equals(action)) {
 43             query(request, response);
 44         }
 45     }
 46     
 47     //添加消费记录
 48     protected void add(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 49         //获取网页提交的参数
 50         String name = request.getParameter("name");
 51         BigDecimal money = WebUtils.bigdecimal(request.getParameter("money"), new BigDecimal(0.00));
 52         //封装成类对象
 53         HomeCost homeCost = new HomeCost(name,money);
 54         //执行添加操作,返回1,添加成功,反之失败
 55         if(homeCostService.add(homeCost) == 1) {
 56             //页面重定向
 57             response.sendRedirect(request.getContextPath()+"/manager/homeCostServlet?action=list");
 58         }else {
 59             //请求转发
 60             request.setAttribute("msg", "添加失败,联系管理员");
 61             request.setAttribute("homeCost", homeCost);
 62             request.getRequestDispatcher("/cost_edit.jsp").forward(request, response);
 63         }
 64     }
 65     //删除消费记录
 66     protected void delete(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 67         //获取id
 68         int id  = WebUtils.parseInt(request.getParameter("id"), 0);
 69         //执行删除操作,返回1,删除成功,反之失败
 70         if (homeCostService.delete(id) == 1) {
 71             //页面重定向
 72             response.sendRedirect(request.getContextPath()+"/manager/homeCostServlet?action=list");
 73         }else {
 74             //请求转发
 75             request.setAttribute("msg", "删除失败,联系管理员");
 76             request.getRequestDispatcher("/manager/homeCostServlet?action=list").forward(request, response);
 77         }
 78         
 79     }
 80     //修改消费记录
 81     protected void update(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 82         //获取参数
 83         int id  = WebUtils.parseInt(request.getParameter("id"), 0);
 84         String name = request.getParameter("name");
 85         BigDecimal money = WebUtils.bigdecimal(request.getParameter("money"), new BigDecimal(0.00));
 86         String date = request.getParameter("date");
 87         //封装
 88         HomeCost homeCost = new HomeCost(id,name,money,date);
 89         //执行删除操作,返回1,修改成功,反之失败
 90         if(homeCostService.update(homeCost) == 1) {
 91             response.sendRedirect(request.getContextPath()+"/manager/homeCostServlet?action=list");
 92         }else {
 93             request.setAttribute("msg", "修改失败,联系管理员");
 94             request.setAttribute("homeCost", homeCost);
 95             request.getRequestDispatcher("/cost_edit.jsp").forward(request, response);
 96         }
 97     }
 98     //查询全部消费记录
 99     protected void list(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
100         List<HomeCost> homeCost = homeCostService.list();
101         request.setAttribute("homeCost", homeCost);
102         request.getRequestDispatcher("/manager.jsp").forward(request, response);
103         
104     }
105     //通过id查询该条消费记录
106     private void getHomeCostById(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
107         int id  = WebUtils.parseInt(request.getParameter("id"), 0);
108         HomeCost homeCost = homeCostService.getHomeCostById(id);
109         request.setAttribute("homeCost", homeCost);
110         request.getRequestDispatcher("/cost_edit.jsp").forward(request, response);
111     }
112     //通过关键词查询
113     protected void query(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
114         String keyword=request.getParameter("keyword");
115         List<HomeCost> homeCost = homeCostService.query(keyword);
116         request.setAttribute("homeCost", homeCost);
117         request.getRequestDispatcher("/query.jsp").forward(request, response);
118         
119     }
120 
121 
122 }

HomeCostServlet.java

6.工具类

1 package com.wang.utils;
 2 
 3 import java.math.BigDecimal;
 4 
 5 public class WebUtils {
 6     
 7     //该类为工具类,封装常用的函数,catch类型转换异常,保障程序健壮性
 8     
 9     
10     /**
11      * String转BigDecimal发生异常返回默认值
12      * @param str  字符串
13      * @param defaultValue 默认值
14      * @return BigDecimal值
15      */
16     public static BigDecimal bigdecimal(String str,BigDecimal defaultValue) {
17         try {
18             return new BigDecimal(str);
19         } catch (Exception e) {
20             //e.printStackTrace();
21         }
22         return defaultValue;
23     }
24     
25     /**
26      * 字符串转int
27      * @param string 被转换的字符串
28      * @param defaultValue 默认值
29      * @return int
30      */
31     public static int parseInt(String string,int defaultValue){
32         try {
33             return Integer.parseInt(string);
34         } catch (NumberFormatException e) {
35             //e.printStackTrace();
36         }
37         return defaultValue;
38     }
39     
40 
41 }

WebUtils.java

 

标签:homeCost,BigDecimal,request,家庭,记账,action,import,response
From: https://www.cnblogs.com/azure011328/p/17991487

相关文章

  • 家庭记账本(一)
    1..主页1<%@pagecontentType="text/html;charset=UTF-8"language="java"%>2<!DOCTYPEhtml>3<html>4<head>5<metacharset="UTF-8">6<title>家庭记账本主页</title>7&l......
  • 安卓家庭记账本开发笔记2
    开发进度:完成app首页的每条支出的流水信息的绘制以及首页记录每月收入和支出总和的表头的绘制代码:1.流水信息的代码:<?xmlversion="1.0"encoding="utf-8"?><RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_widt......
  • 安卓家庭记账本开发笔记1
    项目目的:开发一个简单的记账本app开发进度:在idea程序中创建一个空项目,绘制家庭记账本的主界面。创建空项目的步骤之后会整理单独发一篇博客。下面是绘制主界面的代码:<?xmlversion="1.0"encoding="utf-8"?><RelativeLayoutxmlns:android="http://schemas.android.co......
  • 绿联DH2600将米家设备同步到苹果家庭app(HA)
    方案是通过homekit桥生成一个二维码,然后使用苹果家庭app扫码添加设备进入HA下载homekit桥选择homekitbridge点击提交继续提交点击完成新增的修改集成条目名称(防止你分不清)重命名3.添加设备点击选项如图选择属于客厅的设备4.手机扫码第三步添......
  • 孩子从小生长在知识分子的家庭,或者传统的书香门第,家里规矩多管教严格,会对孩子性格造成
    农家子弟 单亲家庭 农耕之家    工薪阶层 农民工  中国旧社会的人总爱是“穷有穷根,富有富根”、“龙生龙,凤生凤,老鼠儿子会打洞”,现在这些老话都被推翻了,都说这是封建血统论和封建门第观。可是事实胜过强辩,我们发现民国学者大多是出身于书香门第和富贵之家。孩......
  • 不用找电工自己就能搞定家庭常见开关插座灯泡接线
    1线火线:简写L,英文全称是Live,一般是红色的线。零线:简写N,英文全称是Neutral,一般是蓝色的线。地线:一般用符号代替,,一般是黄色的线。火线用测电笔带电。火线和零线形成回路,负载就会工作。一般插座用1.5平方的线,家里电器一般用2.5平方的线。2开关(单控)接线原理图:开关控......
  • 家庭者,人生最初之学校也
    家长,请当好孩子的第一任老师 前苏联著名教育家苏霍姆林斯基说“没有家庭教育的学校教育和没有学校教育的家庭教育,都不可能完成培养人这一极其细致而又复杂的任务。”这就说明家庭教育在孩子成长过程中是必不可少的。家庭是孩子最早接受教育的场所,父母是孩子最早......
  • 为什么说家庭教育是孩子的第一所学校,爸妈们(父母)是孩子的第一任老师?
    父母是孩子的第一任教师,家庭是人生的第一课堂。——家庭教育在孩子成长中的价值家庭教育好了,学校教育就会轻松高效,这是一个简单却管用的道理 无论多好的学校教育都代替不了家庭教育家庭是未成年人生活的第一环境,是他们成长的起点和摇篮,而从教育这个角度看,家庭则是孩子的第一......
  • 只有家庭教育和学校教育相辅相成,才能培养出健康、快乐、有责任心的下一代
    为什么说家庭教育是人生的第一所学校,家长是孩子的第一任老师?  家庭教育被称为人生的第一所学校,因为从孩子出生的那一刻起,家庭就成为了他们学习和成长的第一个环境。在这个环境中,家长作为孩子的第一任老师,对孩子的教育和成长起着至关重要的作用。首先,家庭教育是孩......
  • tutor 家庭教师
    tutor更多用来表示“私教”,而teacher更核心表示普遍意义上的教师。tutor一词来自拉丁语,拉丁语中表示“家庭教师”含意。今天表示老师的含意来自拉丁语中“家庭教师”这层含意用法,这也是tutor一词与其他表示“教师”词汇之间核心含意区分的根本。 tutor,英语单词,主要用作为动......