复利计算再升级------------------------------------------------------------

客户在大家的引导下,有了更多的想法:

  1. 这个数据我经常会填.....帮我预先填上呗?......
  2. 把界面做得简单漂亮好操作一点呗?
  3. 能不能帮我转成个APP,我装到手机上就更方便了?
  4. 我觉得这个很有用,很多人可能都需要这些功能,做到我的微信公众号上吧?
  5. 能不能不要让我填表单,让我发条消息,或者对着手机说句话就可以了?

每组选一两个方向加以改进,让我们的投资计算与记录工具,达到可以发布给用户使用的版本,并发布博客对此次更新进行说明与总结。

截止日期:2016.4.14晚11点。

选择一,把数据填上去。

选择二,把界面做的漂亮方便操作

新增加一个用户登录界面,里面存储了账号,会对输入的账号进行判断是否存在。

简化了界面,由于搭档在页面部分仍在学习中,所以以后会加以完善。

对客户投资的资产可以每年进行记录,并且存进数据库当中。

接下来是部分代码,具体代码上传到Github上面

显示用户资金界面代码:

 <%@ page import="com.yu.Dao.DaoFactory" %>
<%@ page import="com.yu.Dao.Iuserdao" %>
<%@ page import="com.yu.model.User" %>
<%@ page import="java.util.List" %>
<%@ page import="com.yu.Dao.Icompany" %>
<%@ page import="com.yu.Dao.Inumberdao" %>
<%@ page import="com.yu.model.Number" %><%--
Created by IntelliJ IDEA.
User: lenovo
Date: //
Time: :
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>UserList</title>
</head>
<body>
<%
String con = request.getParameter("checkname");
if(con==null)
{con="";}
Iuserdao userdao= DaoFactory.getuserdao();
Inumberdao numberdao=DaoFactory.getnumberdao();
User lu=(User)session.getAttribute("loginuser");
Number num=null;
%> <table align="center" width="" border="">
<tr>
<form action="showlist.jsp" method="post">
查询用户:<input type="text" name="checkname" value="<%=con%>"/>
<input type="submit" value="查询"/>
</form>
</tr>
<tr>
<td>投资年限</td><td>用户名</td><td>用户昵称</td><td>用户资产</td>
</tr>
<%
int year=Integer.parseInt(request.getParameter("year"));
int i=-; for(int x=;x<year;x++){
i=i+;
num=numberdao.load(i);
%>
<tr>
<td><%=i%></td><td><%=lu.getUsername()%></td>
<td><%=lu.getNeckname()%></td>
<td><%=num.getFuterMoney()%></td>
</tr> <%}
%> </table> </body>
</html>

对计算进行处理和管理传进的一些输入流的处理用到了Servlte

 package com.yu.Selveter;

 import com.yu.Dao.DaoFactory;
import com.yu.Dao.Inumberdao;
import com.yu.model.Number;
import com.yu.model.User; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException; /**
* Created by lenovo on 2016/4/13.
*/
public class FuliSelveter extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
this.doPost(req,resp);
} @Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
Number number=new Number(); //获得number变量的值
int select=;
try {
select= Integer.parseInt(req.getParameter("select"));
HttpSession session =req.getSession();
User user= (User)session.getAttribute("loginuser");
number.setNonMoney(Double.valueOf(req.getParameter("NonMoney")));
number.setId(user.getId());
number.setYear(Integer.parseInt(req.getParameter("Year")));
number.setRate(Double.valueOf(req.getParameter("Rate")));
number.setFuterMoney(Double.valueOf(req.getParameter("FuterMoney")));
resp.setContentType("text/html;charset=UTF-8");
//存进number数据库中
Inumberdao num= DaoFactory.getnumberdao();
double FuterMoney=number.getFuterMoney();
double NonMoney=number.getNonMoney();
double Rate=number.getRate();
int Year=number.getYear();
int userid=number.getUserid();
double result=;
if(select==){ FuterMoney=NonMoney*Math.pow((+Rate ),Year );
result=FuterMoney;
session.setAttribute("result",result);
resp.sendRedirect(req.getContextPath()+"/admin/user/FuliFuterMoney.jsp");
}
else if(select==){
NonMoney=FuterMoney/Math.pow((+Rate ),Year ) ;
result=NonMoney;
session.setAttribute("result",result);
resp.sendRedirect(req.getContextPath()+"/admin/user/FuliNonMoney.jsp"); }else if(select==){
Rate=Math.pow((FuterMoney/NonMoney),/Year)-;
result=Rate;
session.setAttribute("result",result);
resp.sendRedirect(req.getContextPath()+"/admin/user/FuliRate.jsp");
}else if(select==){
Year= (int) ((Math.log(FuterMoney/NonMoney))/(Math.log(+Rate)));
result=Year;
session.setAttribute("result",result);
resp.sendRedirect(req.getContextPath()+"/admin/user/FuliYear.jsp");
}else {
FuterMoney=NonMoney*(+Rate*Year );
result=FuterMoney;
session.setAttribute("result",result);
resp.sendRedirect(req.getContextPath()+"/admin/user/DanliFuterMoney.jsp");
} }catch (NumberFormatException e){ } }
}

总结:仍需跟队友好好沟通,互相进步。

 

复利计算6.0—软件工程(web版本)的更多相关文章

  1. 复利计算--4.0 单元测试之JAVA版-软件工程

    复利计算--4.0 单元测试-软件工程 前言:由于本人之前做的是C语言版的复利计算,所以为了更好地学习单元测试,于是将C语言版的复利计算修改为JAVA版的. 一.主要的功能需求细分: 1.本金为100 ...

  2. 复利计算5.0(改成Java版本)与 单元测试

    //由于C语言版本不方便单元测试,所以改成了java版本,部分代码如下:import java.util.Scanner; public class FuLi{ public static void ...

  3. <更新日期03-31-2016> 复利计算5.0 <已改进>

    作业要求: 1.客户说:帮我开发一个复利计算软件. 完成复利公式计算程序,并成功PUSH到github上. 客户提出: 2.如果按照单利计算,本息又是多少呢? 3.假如30年之后要筹措到300万元的养 ...

  4. 复利计算4.0单元测试(c语言)

    ——————————复利计算程序单元测试报告—————————— ————————————4.0 单元测试—————————————— ————————————————要求—————————————— ...

  5. 复利计算1.0,2.0,3.0(java)

    程序源代码: import java.util.Scanner; public class ch { public static void main(String[] args) { Scanner ...

  6. 复利计算--web版--总结--软件工程

    复利计算项目 估计用时 实际用时 时间(小时) 5.5小时  6.5小时 总共代码行 500  550 功能包含 单利/复利计算,本金计算,求投资年限,求投资项目利率估计 (计算利息和,计算时间,计算 ...

  7. 复利计算--结对项目<04-11-2016> 1.0.0 lastest 阶段性完工~

    结对项目:Web复利计算 搭档博客地址:25江志彬  http://www.cnblogs.com/qazwsxedcrfv/ 个人摘要: (2016-04-09-12:00)补充:之前传送门没做好, ...

  8. 复利计算- 结对2.0--复利计算WEB升级版

    客户在大家的引导下,有了更多的想法: 这个数据我经常会填.....帮我预先填上呗?...... 把界面做得简单漂亮好操作一点呗? 能不能帮我转成个APP,我装到手机上就更方便了? 我觉得这个很有用,很 ...

  9. 基于Web的Kafka管理器工具之Kafka-manager的编译部署详细安装 (支持kafka0.8、0.9和0.10以后版本)(图文详解)(默认端口或任意自定义端口)

    不多说,直接上干货! 至于为什么,要写这篇博客以及安装Kafka-manager? 问题详情 无奈于,在kafka里没有一个较好自带的web ui.启动后无法观看,并且不友好.所以,需安装一个第三方的 ...

随机推荐

  1. Visual Studio 2013 prerequisites

    http://www.visualstudio.com/zh-cn/products/visual-studio-ultimate-with-msdn-vs#Fragment_SystemRequir ...

  2. awk语法

    awk是一个非常棒的数字处理工具.相比于sed常常作用于一整行的处理,awk则比较倾向于将一行分为数个“字段”来处理.运行效率高,而且代码简单,对格式化的文本处理能力超强.先来一个例子: 文件a,统计 ...

  3. WCF实例上下文模式与并发模式对性能的影响

    实例上下文模式 InstanceContextMode 控制在响应客户端调用时,如何分配服务实例.InstanceContextMode 可以设置为以下值: •Single – 为所有客户端调用分配一 ...

  4. schedule() 和 scheduleAtFixedRate() 区别

    1.  schedule() ,2个参数方法:在执行任务时,如果指定的计划执行时间scheduledExecutionTime <= systemCurrentTime,则task会被立即执行. ...

  5. 云计算相关的一些概念Baas、Saas、Iaas、Paas

    BaaS(后端即服务:Backend as a Service)公司为移动应用开发者提供整合云后端的边界服务. SaaS(软件即服务:Software as a Service)提供了完整的可直接使用 ...

  6. 基于jQuery的input输入框下拉提示层(自动邮箱后缀名)

    基于jQuery的input输入框下拉提示层,方便用户输入邮箱时的提示信息,需要的朋友可以参考下     效果图   // JavaScript Document (function($){ $.fn ...

  7. Intellij IDEA IDE部署Servlet项目

    1.设置Project Structure 2.修改Modules中的Web项目文件默认class编译之后输出位置 3.给Modules中的Web项目添加Web模块 4.修改Web项目Web.xml文 ...

  8. C# winForm 窗体闪烁问题

    在构造函数里加上以下代码: this.DoubleBuffered = true;//设置本窗体            SetStyle(ControlStyles.UserPaint, true); ...

  9. WinDbg 命令集锦

    //断点相关 bp + 地址 设置断点bl  显示已经设定的断点bu + 地址 设置断点,但是这种类型断点再下一次启动时被记录bc 清除断点对于断点范围,可以用*匹配,-表示一个范围,表达多个可用,号 ...

  10. (笔记)VC6插件安装--Unable to register this add-in because its DllRegisterServer returns an error

    在安装插件(如VC6显示行号的插件VC6LineNumberAddin.dll)的时候经常会提示"Unable to register this add-in because its  Dl ...