ImageVerifierCode 换一换
格式:DOCX , 页数:52 ,大小:169.68KB ,
资源ID:8005200      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8005200.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Java课设.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Java课设.docx

1、Java课设课 程 设 计 报 告课程名称 Java课程设计 课题名称 Java和Json之间的数据转换 专 业 计算机科学与技术 班 级 计算机1202 学 号 12 姓 名 指导教师 李远辉 2015年 3 月 28 日湖南工程学院课 程 设 计 任 务 书课程名称 Java课程设计 课 题 Java和Json之间的数据转换 专业班级 计算机1202 学生姓名 学 号 12 指导老师 李远辉 审 批 任务书下达日期 2015 年 3 月 18 日任务完成日期 2015年 3 月 28 日目录1. 主要功能 12. 基本功能的实现与分析 13. 功能模块的划分 23.1 功能模块图 23.2

2、 流程图 23.3 功能模块的实现 34. 程序调试 55. 总结 86. 附件 91. 主要功能 本课题是用java语言来创建简易银行系统的图形界面,使用json来对银行系统的数据进行处理的。该程序可以让用户使用在本系统中注册的账号能像银行卡一样使用,也可登录自助客户端自助转账。管理员也可登录管理端对用户进行最高权限的管理。2. 基本功能的实现与分析本程序基本分为两大方面: (1)user用于存储用户信息,包括以下字段: Id(用户卡号)、password(用户密码)、money(用户余额)、tel(用户手机号码)、sex(用户性别)、sfz(用户身份证号)。主索引为:Id (2)Histo

3、ry用户存储用户操作记录,包括以下字段:oid(操作用户)、eid(目标用户)、money(操作金额)、yu(用户余额)、time(操作时间)、type(操作类型)。索引为:oid、eid。本程序的基本需求为:有管理员和普通用户两种用户类型。管理员拥有对普通用户增删改查的操作和用户存取款、任意人账单查询的权限。用户拥有查询自己信息、转账和查询自己账单的权限。3. 功能模块的划分3.1 功能模块图 图 3.13.2 流程图3.3 功能模块的实现 (1)部分布局并没有采取传统JAVA SWING布局方式。而是利用控件数组+循环。例如:UserPan2.java中for(int i=0;i=0 &

4、ch=9) e.consume(); (2)对数据的增删改操作:public int executeUpdate(String preparedSql, String param) int num = 0; / 处理SQL,执行SQL try / 得到PreparedStatement对象 pstmt = conn.prepareStatement(preparedSql); if (param != null) for (int i = 0; i param.length; i+) / 为预编译sql设置参数 pstmt.setString(i + 1, parami); / 执行SQL语句

5、 num = pstmt.executeUpdate(); catch (SQLException e) / 处理SQLException异常 e.printStackTrace(); return num;(3)对数据的查询操作: public ResultSet executeQuery(String preparedSql, String param) / 处理SQL,执行SQL try / 得到PreparedStatement对象 pstmt = conn.prepareStatement(preparedSql); if (param != null) for (int i = 0

6、; i param.length; i+) / 为预编译sql设置参数 pstmt.setString(i + 1, parami); / 执行SQL语句 rs = pstmt.executeQuery(); catch (SQLException e) / 处理SQLException异常 e.printStackTrace(); return rs; 4. 程序调试程序开始如图4.1所示,由于是管理员对系统直接管理,因此不需要提供注册入口:图4.1管理员登录后如图4.2所示,可对系统内的用户增删改查。图4.2其中用户存取款如图4.3所示。图4.3普通用户登录后如图4.4所示。图4.4普通用

7、户账单查询如图4.5所示。图4.55. 总结此次课程设计让我更了解和熟悉了Java中的图形用户界面和它的编程方式。在完成课题的过程中也不断充实了自己,学习到了很多以前没有学习到的知识,收获很大,例如学习到了一种新的简单的数据交换格式.json。通过这次的课程设计,使我对所学知识能够融会贯通,又不断丰富了新知识。另外这次课设中也遇到了很多不懂的地方,例如说文件的选择打开,不太了解JFileChooser的运用方法,不太了解json的语法和java中一些图形界面的布局等。Java三天的课设虽然仓促,但却十分充实,不进认识到了自己在java中的不足,而且还学到了不少关于java中图形界面的编程方式。

8、6. 附件源程序登陆界面 Login.javapackage wfu.yuhan;import java.awt.event.*;import javax.swing.*;class Login extends JFrame public static ProFrame prog; public Login() /窗口 super(登陆); this.setBounds(500,100,300,200); this.setResizable(false); this.setLayout(null); this.addWindowListener(new WindowAdapter() publ

9、ic void windowClosing(WindowEvent e) System.exit(0); ); /用户名 JLabel lu=new JLabel(用户名:); final JTextField tu=new JTextField(); lu.setBounds(20, 30, 55, 25); tu.setBounds(75, 30, 200, 25); this.add(lu); this.add(tu); /密码 JLabel lp=new JLabel(密码:); final JTextField tp=new JPasswordField(); lp.setBound

10、s(20, 60, 55, 25); tp.setBounds(75, 60, 200, 25); this.add(lp); this.add(tp); /登陆按钮 final JButton sub=new JButton(登陆); sub.setBounds(100, 100, 60, 25); this.add(sub); sub.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) Object userlist; userlist=ProDao.findUser(0, tu

11、.getText(); if(userlist.length=0) JOptionPane.showMessageDialog(null, 此用户不存在!); return; if(userlist01.toString().equals(tp.getText() ProMain.log.setVisible(false); if(tu.getText().equals(admin) prog=new ProFrame(); else new UserFrame(tu.getText(); else JOptionPane.showMessageDialog(null, 密码错误!); );

12、tp.addKeyListener(new KeyAdapter() public void keyPressed(KeyEvent e) if(e.getKeyCode()=KeyEvent.VK_ENTER) sub.doClick(); ); this.setVisible(true); 管理员主窗口 ProFrame.javapackage wfu.yuhan;import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.table.DefaultTableModel;import w

13、fu.util.DBUtil;class ProFrame extends JFrame public JPanel pm =new JPanel();/主区域 private JPanel pb=new JPanel();/按钮区域 public ProPan0 p0=new ProPan0();/功能区0 用户查看(ProPan0.java) public ProPan1 p1=new ProPan1();/功能区1 用户增加(ProPan1.java) private JPanel p2=new ProPan2();/功能区2 用户存/取款 private JPanel p3=new P

14、roPan3();/功能区3 转账查询 private JButton b0=new JButton(0),b1=new JButton(1),b2=new JButton(2),b3=new JButton(3);/跳转按钮 public CardLayout card=new CardLayout(5, 5); public ProFrame() /窗口 super(银行管理系统(admin)); this.setResizable(false); setBounds(500,100,480,580); this.add(pm); this.add(pb,BorderLayout.NORT

15、H); /主区域(pm) pm.setLayout(card); pm.add(p0,p0); pm.add(p1,p1); pm.add(p2,p2); pm.add(p3,p3); card.show(pm, p0); /按钮区域(pb) pb.setLayout(new FlowLayout(FlowLayout.CENTER,0,0); pb.add(b0); pb.add(b1); pb.add(b2); pb.add(b3); /跳转按钮(b0 b1 b2) b0.setText( 用户管理 ); b0.addActionListener(new ActionListener()

16、public void actionPerformed(ActionEvent arg0) / p0=null;/ p0=new ProPan0();/ pm.add(p0,p0); p0.updata(); card.show(pm, p0);/ System.gc();/垃圾回收 ); b1.setText( 账户增改 ); b1.addActionListener(new ActionListener() public void actionPerformed(ActionEvent arg0) card.show(pm, p1); ); b2.setText( 用户存取款 ); b2.

17、addActionListener(new ActionListener() public void actionPerformed(ActionEvent arg0) card.show(pm, p2); ); b3.setText( 账单查询 ); b3.addActionListener(new ActionListener() public void actionPerformed(ActionEvent arg0) card.show(pm, p3); ); /关闭事件 this.addWindowListener(new WindowAdapter() public void wi

18、ndowClosing(WindowEvent e) System.exit(0); ); /pack(); setVisible(true); 管理员查删用户功能 ProPan0.javapackage wfu.yuhan;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;import javax.swing.JButton;import javax.swing.JCombo

19、Box;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JTable;import javax.swing.JTextField;import javax.swing.plaf.ProgressBarUI;import javax.swing.table.DefaultTableModel;import wfu.util.DBUtil;public class ProPan0 extends JPanel String tabheadname= 卡号 ,密码,余额,电话,性别,身份证; Ob

20、ject stulist=ProDao.findAllUser(); JTextField tsearch=new JTextField(25); JComboBox csearch=new JComboBox(new String卡号,手机号,身份证号); JButton bsearch=new JButton(查询); JButton bedit=new JButton(编辑); JButton bdelete=new JButton(删除); final DefaultTableModel tableModel; final JTable jTable; public ProPan0()

21、 tableModel = new DefaultTableModel(stulist,tabheadname); jTable=new JTable(tableModel) public boolean isCellEditable(int row, int column) return false; /表格不允许被编辑 ; JScrollPane pj=new JScrollPane(jTable); /查找按钮 bsearch.addActionListener(new ActionListener() public void actionPerformed(ActionEvent ar

22、g0) Object stulist=ProDao.findUser(csearch.getSelectedIndex(),tsearch.getText(); /System.out.println(stulist.length); tableModel.setDataVector(stulist,tabheadname); ); /编辑按钮 bedit.addActionListener(new ActionListener() public void actionPerformed(ActionEvent arg0) if(jTable.getSelectedColumn()=-1) r

23、eturn; /System.out.println(jTable.getSelectedRow(); String str=stulistjTable.getSelectedRow()0.toString(); Login.prog.p1.fun(str); Login.prog.card.show(Login.prog.pm, p1); ); /删除按钮 bdelete.addActionListener(new ActionListener() public void actionPerformed(ActionEvent arg0) int delt=jTable.getSelecte

24、dRows(); DBUtil db = new DBUtil(); db.getConnection(); for(int i=0;i=0 & ch=9) e.consume(); ); this.add(csearch); this.add(tsearch); this.add(bsearch); this.add(pj); this.add(bedit); this.add(bdelete); public void updata() Object list=ProDao.findAllUser(); tableModel.setDataVector(list,tabheadname); 管理员增改用户功能 ProPan1.javapackage wfu.yuhan;import java.awt.FlowLayout;import java.awt.GridLayout;import java.awt.event.Action

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1