导航:首页 > 编程语言 > java银行类项目流程图

java银行类项目流程图

发布时间:2023-03-09 10:34:40

javaee项目开发流程


javaee项目开发流程:
良好的架构源于规范整洁的代码编写习惯和不断日积月累的经验总结,如果你也和我一样是个喜欢总结勤于思考的人,那么你来对地方了,因为我这有东西和你分享,也很乐于和你探讨改进我的这些想法!

企业里面项目的大和小并不是以用户量来分的,当然这只是衡量标准之一,最主要是根据调研分析出用户具体有多少用例,根据用例画出相应的功能模块图,再根据功能模块图绘制相应的流程图和原型页面,到这里才逐步开始大概知道项目的复杂度和工作量.
需求组将这些图纸交给架构师和高级软件工程师们,他们会在一起继续讨论系统的概要设计部分,也就是开始绘制具体的活动图,类包接口图,时序图,这些工作中会涉及很多具体的技术难点其中会砍掉很多不合理的需求,需求组和架构组的同事们需要不断进行"头脑风暴",争论中通常有架构师发话具体定成什么样.
最后也是最重要的步骤就是数据建模了,在这个过程中你发现关系型数据库的庞大复杂,设计它是一个非常需要经验和脑力的活,因为库定下了基本就不会再有大的变动,简言之就是根据已经设计好的概要设计图,开始创建具体的表结构,最后会将数据库库模型导出文档和生成相应数据库脚本,数据建模一般也是由架构师带领高级们进行"头脑风暴"后完成的.
概要设计和数据建模都做完以后系统工作量几乎清晰可见,剩下就是由高级们完成详细设计工作,详细设计一般除非特别规范大的项目才有时间做,因为它特别详细具体到方法变量命名等处了,所以大多数软件公司都不会写详细设计的,一个高级带领3-5个初中级,将概要设计图和原型页面发下去,在会议室中进行简单任务的交代,就基本上可以开工 了.
那么作为初中级程序员来讲,根据概要设计图和原型页面,就会很清楚自己所做模块具体哪些步骤,原型页面一定都知道就是demo,一般由美工和需求组共同完成的全静态页面,那么活动图呢,初中级能看的懂吗?不要怀疑,绝对看的懂,

㈡ java面试银行项目怎么介绍,什么技术实现什么功能,有没有模板

java银行项目使抄用技袭术:
数据库应该是oracle 集群版,做开发只需要了解基本sql语句就可以了,不会要求直接写sql语句,都是封装好的,并且持久层是使用jpa来实现的框架,使用的经典ejb,前端根据B/s和C/s的系统有所不同。开发工具使用eclipse的比较多,但有的银行使用jbuilder ,一般要求:
1、精通Java/JavaScript/PLSQL/XML/jsP/velocity;
2、熟练使用Struts/Spring/Hibernate/Ibatis等常见开源框架;
3、 熟悉Oracle等主流数据库,熟练编写存储过程,具备一定的SQL性能调优能力;
4、 熟练weblogic、WebSphere等应用和服务器 。

㈢ 用Java编写银行账户存取款业务,急求!!

publicclassAccount{

protectedStringaccId;
protectedStringname;
protecteddoublemoney;

publicAccount(StringaccId,Stringname){
(accId,name,0);
}

publicAccount(StringaccId,Stringname,doublemoney){
this.accId=accId;
this.name=name;
this.money=money;
}

publicvoidsaveMoney(doublemoney){
if(money<=0){
System.out.println("存款金额必须大于0");
}
this.money+=money;
System.out.println("存款成功");
}

publicdoublegetMoney(doublemoney){
if(money<=0){
System.out.println("取款金额必须大于0");
return0;
}
if(this.money<=money){
System.out.println("余额不足,无法取款");
return0;
}
this.money-=money;
System.out.println("取款成功");
returnmoney;
}

publicdoublegetBalance(){
returnthis.money;
}

protecteddoublegetOverdraft(){
return0;
}

//实现了equals方法,list比较时才能正确
@Override
publicbooleanequals(Objectobj){
if(obj==null){
returnfalse;
}
if(this==obj){
returntrue;
}
if(objinstanceofAccount){
returnthis.accId.equals(((Account)obj).accId);
}
returnfalse;
}

@Override
publicStringtoString(){
return"账户="+accId+",名字="+name+",余额="+money;
}

}
publicclassBank{

//Account实现了equals方法,list查找时才能正确
privateList<Account>usersAccounts;

publicBank(){
usersAccounts=newArrayList<Account>();
}

publicvoidaddAccount(Accountaccount){
if(usersAccounts.contains(account)){
System.out.println("添加失败,不能添加同样的账户");
return;
}
usersAccounts.add(account);
}

publicbooleandelAccount(Accountaccount){
returnusersAccounts.remove(account);
}

publicbooleandelAccount(StringaccId){
returndelAccount(newAccount(accId,null));
}

publicbooleanexistAccount(Accountaccount){
returnusersAccounts.contains(account);
}

publicbooleanexistAccount(StringaccId){
returnexistAccount(newAccount(accId,null));
}

publicAccountgetAccount(StringaccId){
returnusersAccounts.get(usersAccounts.indexOf(newAccount(accId,null)));
}

publicdoublegetAllMoney(){
//不考虑是否溢出,只是把所有用户余额相加
doubleresult=0;
for(Accountaccount:usersAccounts){
result+=account.getBalance();
}
returnresult;
}

publicdoublegetAllOverdraft(){
//不考虑是否溢出
doubleresult=0;
for(Accountaccount:usersAccounts){
result+=account.getOverdraft();
}
returnresult;
}

publicintgetAccountNum(){
returnusersAccounts.size();
}

publicintgetCreditAccountNum(){
intnum=0;
for(Accountaccount:usersAccounts){
//instanceof性能没有简单的方法快。
if(){
num++;
}
}
returnnum;
}

publicintgetSavingAccountNum(){
intnum=0;
for(Accountaccount:usersAccounts){
if(){
num++;
}
}
returnnum;
}

publicList<Account>getAllAccount(){
returnusersAccounts;
}
}
{

privatedoubleoverdraft;

publicCreditAccount(StringaccId,Stringname){
super(accId,name);
this.overdraft=1000;
}

publicCreditAccount(StringaccId,Stringname,doublemoney){
this(accId,name,money,1000);
}

publicCreditAccount(StringaccId,Stringname,doublemoney,doubleoverdraft){
super(accId,name,money);
this.overdraft=overdraft;
}

@Override
publicdoublegetMoney(doublemoney){
if(money<=0){
System.out.println("取款金额必须大于0");
return0;
}
if(this.money+overdraft<=money){
System.out.println("余额不足,无法取款");
return0;
}
this.money-=money;
System.out.println("取款成功");
returnmoney;
}

@Override
publicdoublegetOverdraft(){
returnoverdraft;
}

@Override
publicStringtoString(){
return"账户="+accId+",名字="+name+",余额="+money+",透支="+overdraft;
}
}
{

publicSavingAccount(StringaccId,Stringname){
super(accId,name);
}

publicSavingAccount(StringaccId,Stringname,doublemoney){
super(accId,name,money);
}

@Override
publicdoublegetMoney(doublemoney){
returnsuper.getMoney(money);
}

@Override
publicdoublegetOverdraft(){
returnsuper.getOverdraft();
}

}
publicclassTest{

privatestaticBankbank=newBank();
publicstaticvoidmain(String[]args){
Test.genAccount();
//开户
Accounta1=newCreditAccount("1","1",200,2000);
Accounta2=newSavingAccount("2","2",300);
Accounta3=newSavingAccount("3","3",400);
Accounta4=newCreditAccount("4","4",500,2000);
Accounta5=newCreditAccount("4","5",600,2000);//帐号4重
bank.addAccount(a1);
bank.addAccount(a2);
bank.addAccount(a3);
bank.addAccount(a4);
bank.addAccount(a5);
showNowAccount();
//销户
bank.delAccount("1");
bank.delAccount("2");
showNowAccount();
//存款
if(bank.existAccount("3")){
Accountacc=bank.getAccount("3");
acc.saveMoney(100);
}
showNowAccount();
//取款
if(bank.existAccount("3")){
Accountacc=bank.getAccount("3");
System.out.println("余额="+acc.getBalance());
acc.getMoney(100);
System.out.println("余额="+acc.getBalance());
acc.getMoney(1000);
System.out.println("余额="+acc.getBalance());
}
if(bank.existAccount("4")){
Accountacc=bank.getAccount("4");
System.out.println("余额="+acc.getBalance());
acc.getMoney(100);
System.out.println("余额="+acc.getBalance());
acc.getMoney(1000);
System.out.println("余额="+acc.getBalance());
acc.getMoney(10000);
System.out.println("余额="+acc.getBalance());
}
System.out.println(bank.getAccountNum());
System.out.println(bank.getAllMoney());
System.out.println(bank.getAllOverdraft());
System.out.println(bank.getCreditAccountNum());
System.out.println(bank.getSavingAccountNum());
}

publicstaticvoidgenAccount(){
Strings="100000000000000";
Accounta=null;
for(inti=1;i<11;i++){
if((i&2)==0){
a=newCreditAccount(s+String.valueOf(i),"账户"+String.valueOf(i));
}else{
a=newSavingAccount(s+String.valueOf(i),"账户"+String.valueOf(i));
}
bank.addAccount(a);
}
}

(){
for(Accountaccount:bank.getAllAccount()){
System.out.println(account);
}
}
}

// 面向对象,看多写多了就会了,简单的随便写的,有错误先不用太纠结。

㈣ 用JAVA编程设计一个银行账户类,其中包括以下内容,并用字符界面模拟存款和取款过程。

import java.util.Scanner;

public class ZH {

private String zh;//账户
private String password;//密码
private String openTime;//开户时间
private String sfz;//身份证号
private double je;//存款金额
public String getZh() {
return zh;
}
public void setZh(String zh) {
this.zh = zh;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getOpenTime() {
return openTime;
}
public void setOpenTime(String openTime) {
this.openTime = openTime;
}
public String getSfz() {
return sfz;
}
public void setSfz(String sfz) {
this.sfz = sfz;
}
public double getJe() {
return je;
}
public void setJe(double je) {
this.je = je;
}

//存款方法
public void ck(double je){
this.je=this.je+je;//存入的金额加上原有的金额
}

//取款方法
public void qk(double je){
if(je>this.je){//取款金额大于余额
System.out.println("存款余额不足");
}else{
this.je=this.je-je;//原有的金额减去取出的金额
}
}
public static void main(String[] args) {
ZH zh = new ZH();//初始化一个账户信息
zh.setJe(10000.0);//向zh账户添加余额
zh.setOpenTime("2013.12.3");//向zh账户添加开发时间
zh.setPassword("123456");//向zh账户添加密码
zh.setSfz("123456789");//向zh账户添加身份证
zh.setZh("zhangsan");//向zh账户添加账号
System.out.println("欢迎光临模拟银行");
Scanner scan = new Scanner(System.in);
int count=0;//记录输入错误的次数
while(1==1){//循环
System.out.println("请输入账号");
String zhm=scan.next();
System.out.println("请输入密码");
String mm=scan.next();
if(zhm.equals(zh.getZh()) && mm.equals(zh.getPassword())){//输入的信息与zh账户信息的密码和账号一致
while(1==1){
System.out.println("当前余额为:"+zh.getJe()+"元。请选择操作:1.存款;2.取款;3.退出(只能输入数字)");
String cz=scan.next();
switch (Integer.parseInt(cz)) {
case 1:
System.out.println("请输入存款金额(输入小数)");
double ckje=scan.nextDouble();
zh.ck(ckje);
System.out.println("实施存款:"+ckje+"元,当前余额为"+zh.getJe()+"元");
break;
case 2:
System.out.println("请输入取款金额(输入小数)");
double qkje=scan.nextDouble();
zh.qk(qkje);
System.out.println("实施取款:"+qkje+"元,当前余额为"+zh.getJe()+"元");
break;
case 3:
break;
default:
System.out.println("暂无此功能");//输入1或者2、3以外的操作
break;
}
if("3".equals(cz)){
break;
}
}
System.out.println("退出操作");
break;
}else{

if(count>=3){
System.out.println("已输入错误三次,账号被锁");
break;//结束循环
}else{
System.out.println("账号或密码错误,请重新输入");
count++;//错误一次count+1
continue;//进入下次循环
}
}
}

}
}

㈤ 求java学习路线图

/*回答内容很长,能看完的少走一个月弯路,绝不抖机灵*/

提前预警:本文适合Java新手阅读(老手可在评论区给下建议),希望大家看完能有所收获。

废话不多少了,先了解一下Java零基础入门学习路线:

第一阶段:JavaSE阶段

变量、数据类型、运算符

控制语句

面向对象编程-基础

面向对象编程-进阶

异常机制

Java常用类

Wrapper包装类

第二阶段:数据库

第三阶段:JavaEE阶段

第四阶段:框架阶段

第五阶段:前后端分离阶段

第六阶段:微服务架构

第七阶段:云服务阶段

㈥ Java语言程序设计:设计银行账户类,属性包括账号、储户名称、开户时间、身份证号码、存款余额等

写个例子吧,既没有分,又不付费。。。。真的是。。
public class account{
public static int serviceNum;
private String account;
private String password;
......
public String getAccount(){
return this.account;
}
public void setAccount(String account){
this.account = account;
}
public String getPassword(){
return this.password;
}
public void setPassword(String password){
this.password = password
}
public Account(String account,String password){
this.account = account;
this.password = password;
}
public Account(String account){
this.account = account;
}
@overrite
public String toString(){
return this.account + "-" + this.password;
}
}

㈦ Java课程设计,模拟银行存取业务,按照这个流程图去做,其实最主要的是求画圈的部分怎么写和它的方法。

请点击输入图片描述

package com.greatwall.business.controller;


import java.math.BigDecimal;

import java.util.Scanner;

import java.util.regex.Matcher;

import java.util.regex.Pattern;


/**

* @author xysddjyt

* @since 2020/6/16 15:06

*/

public class BankTest {


public static void main(String[] args) {

Scanner scan = new Scanner(System.in);

// 余额(单位:分)

Long BALANCE = 10000000L;


// 卡号

String card = "001";


// 密码

String password = "123456";


String inputCard = new String();

String inputPassword = new String();

String quit = new String();

while (true) {

System.out.println(" 欢迎来到网上银行办理存取款业务!");

System.out.println("请输入银行卡号和银行卡密码进行登录!");

while (true) {

System.out.print("请输入银行卡号(按q退出): ");

inputCard = scan.nextLine();

quit = inputCard;

if (inputCard.equals("q")) {

break;

}

if (!inputCard.equals(card)) {

System.out.print("您输入银行卡号不正确,请重新输入 ");

continue;

}

break;

}

if (quit.equals("q")) {

continue;

}

while (true) {

System.out.print("请输入银行卡密码(按q退出): ");

inputPassword = scan.nextLine();

quit = inputPassword;

if (inputPassword.equals("q")) {

break;

}

if (!inputPassword.equals(password)) {

System.out.print("您输入银行卡密码不正确,请重新输入 ");

continue;

}

break;

}

if (quit.equals("q")) {

continue;

}

System.out.print("登录成功,当前登录的账户名:" + inputCard);

String type = "4";

while (!type.equals("0")) {

System.out.print(" 您当前的余额为:" + money(BALANCE) + "元");

System.out.print(" 请选择操作类型。(存款:1;取款:2 ;余额:3;退出:0) ");

type = scan.nextLine();

switch (type) {

case "1": {

System.out.print("请输入您的存款金额(元):");

String chageNumber = scan.nextLine();

if (!isPositiveInteger(chageNumber)) {

System.out.print("请输入正确的存款金额!");

continue;

}

BALANCE = Long.valueOf(chageNumber) * 100 + BALANCE;

continue;

}

case "2": {

System.out.print("请输入您的取款金额(元):");

String chageNumber = scan.nextLine();

if (!isPositiveInteger(chageNumber)) {

System.out.print("请输入正确取款金额!");

continue;

}

BALANCE = BALANCE - Long.valueOf(chageNumber) * 100;

continue;

}

case "3": {

System.out.print("您当前的余额为:" + money(BALANCE) + "元 ");

continue;

}

default: {

continue;

}

}

}

}

}


private static boolean isMatch(String regex, String orginal) {

if (orginal == null || orginal.trim().equals("")) {

return false;

}

Pattern pattern = Pattern.compile(regex);

Matcher isNum = pattern.matcher(orginal);

return isNum.matches();

}

// 判断数据是否为正整数

public static boolean isPositiveInteger(String orginal) {

return isMatch("^\+{0,1}[1-9]\d*", orginal);

}

// 分转元,转换为bigDecimal在toString

public static String money(Long money) {

return BigDecimal.valueOf(money).divide(new BigDecimal(100)).toString();

}

}

㈧ 怎样用Java创建银行账号Account类,实现存款(balance)的存(deposit)、取(withdraw)和查询(getbalan

我也刚开始学,这是我自己写的
import java.util.Scanner;

/**
* 实现取款机功能,存款balance、存钱、取withdraw、查询getbalan
*
*/

public class Account {

public static void main(String[] args) {

double balance = 0;
double deposit = 0;
double withdraw = 0;

for (;;) {
System.out.println("请输入数字:\t1.存钱 \t2.取钱\t3.查询余额\n");
Scanner input = new Scanner(System.in);
String num = input.next();
double s1 = 0, s2= 0 ;
if (num.equals("1")) {
System.out.println("输入存入金额:");
deposit = input.nextDouble();
System.out.println("存钱数目为:" + deposit);
s1 += deposit;
}
if (num.equals("2")) {
System.out.println("输入取钱金额:");
withdraw = input.nextDouble();
System.out.println("取走金额为:" + withdraw);
s2 += withdraw;
}
if (true | num.equals("3")) {
balance += s1 - s2;
System.out.println("账户余额为:" + balance);

}

}
}

}

阅读全文

与java银行类项目流程图相关的资料

热点内容
怎么样把app添加到小组件 浏览:148
省内顺丰邮文件多少钱 浏览:715
绝密级文件应保留多少年 浏览:701
发文件给同事怎么说 浏览:468
苹果80岁用什么app 浏览:28
顺丰寄快递文件多少钱 浏览:164
消费邦app是怎么反现的 浏览:112
java调用接口方法 浏览:742
微信一种以上绑定关系 浏览:183
word图片编辑大小边框 浏览:468
威迅java培训 浏览:389
linux禅道无法访问 浏览:819
怎么爬取历史疫情数据 浏览:596
linuxjira6破解 浏览:694
哪个网站可以看所有检察杂志 浏览:144
java高并发数据库请求怎么办 浏览:551
win8怎么打开gho文件怎么打开 浏览:732
如何网站内搜索 浏览:362
qq附近的人客服号码 浏览:570
mac怎么把word文件转换为pdf 浏览:6

友情链接