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

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

  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. WebSocket桌面客户端工具

    考虑到WebSocket的诸多优点和未来的趋势,去年底把服务端通讯全部由HTTP改成WebSocket,期间为了方便测试,做了这个小工具.共享出来以方便有同样需求的程序员. 下载的压缩包里含有源代码和 ...

  2. python排序算法的实现-选择

    1.算法: 对于一组关键字{K1,K2,…,Kn}, 首先从K1,K2,…,Kn中选择最小值,假如它是 Kz,则将Kz与 K1对换: 然后从K2,K3,… ,Kn中选择最小值 Kz,再将Kz与K2对换 ...

  3. whoami 和 Who am i

    ① 两个命令在一般的情况下,似乎效果是一样的 ② 但是当你执行完su 命令切换用户后,就不一样了,who am i 显示最早login的账户,而whoami 显示切换后的账户 例如: -bash-3. ...

  4. UICollectionView瀑布流的实现原理(转)

    http://ios.jobbole.com/85689/ 和使用 UIScollView 创刊一个瀑布流是一样的方式 7cc829d3gw1f4nq2oc09zj20j00hvq90.jpg 我的 ...

  5. 使用Eclipse进行远程调试【转】

    今天决定做件有意义的事,写篇图文并茂的blog,为什么要图文并茂?因为很多事可能用语言也说不明白,从以前我发表的一篇文章可以看得出来,http://blog.csdn.net/sunyujia/arc ...

  6. [Javascript] Decorators in JavaScript

    First, what is 'High Order function', basic just a function, inside the function return another fuct ...

  7. DB2中OLAP函数使用示例

      下面的需求是将不仅获取查询的结果集,还要将结果集的SIZE返回.结果集的SIZE是无法通过CURSOR获取的.   通常聚合函数在二种情况下,使用默认分组即没有分组.可以直接使用,比如 selec ...

  8. vim中多标签和多窗口的使用

    用vim进行编辑的时候常常因为要编辑多个文件或者是编辑一个文件要参考其他文件而烦恼,这里介绍两种方法: 1.多标签 直接在编辑的时候输入: vim -p 要编辑的文件名 如vim -p * 就是编辑当 ...

  9. iOS工程集成支付宝错误Undefined symbols for architecture armv7

    问题描述: 新工程中需要集成支付宝功能,于是咱就把支付宝的库给集成了进入然后就出现了下面这种错误了说,错误信息如下: Undefined symbols for architecture armv7: ...

  10. java-cef系列视频第四集:自定义协议

    上一集我们介绍了如何为java-cef添加flashplayer支持. 本视频介绍java-cef中的自定义协议 本作品采用知识共享署名-非商业性使用-禁止演绎 3.0 中国大陆许可协议进行许可.