java项目总结报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
篇一:《java项目总结》
项目总结
这是一次比较完整的团队合作项目,它要求团队各成员对系统的主体设计搭成一定的共识,这包括数据库设计,需求分析,以及其它一些细节,因此在编码之前的准备工作一定要充分。
在设计之前,我们两组对于数据库的设计进行了激烈的讨论,最后在一些关键的问题上统一了意见。
接下来的工作便是需求分析,具体结构设计,并制订小组项目详细计划,项目的进行将严格按照所制订的计划执行。
然后小组成员对各自的数据库进行了设计,并且以数据字典的形式进行了共享。
企业级人力资源系统分为十个子系统机构编制管理、人员信息管理、人事档案管理、考勤管理、薪资福利管理、社会保障管理、招聘管理、合同管理、查询统计管理、系统管理。
我负责人员信息管理子系统,这方面需要处理的业务逻辑比较少,表单比较多,要把握好与其它子系统的关联。
员工基本信息表是与其它子系统关联的桥梁,大部分表都涉及到与基本信息表的外键关联。
其中,职员编号(employeeId)是作为外键关联的字段,我给它设置了自增长。
有人认为在企业里,职员编号应该是有一定规律的数字,而不应该设置自增长。
这样的是想法很
符合实际情况,后来我和两个组长讨论,认为自增长可以保证数据的唯一性,非自增长的主键在增加时可能遇到不可知的问题,并且其他组员的数据库已经设计好,改起来就麻烦了。
因此最终职员编号采用了自增长。
有了上面的共识,接下来的重要工作便是依次完成表的增删改查、数据校验。
其中,分页和批量删除是我计划最后完成的部分,并且一定要完成。
基本数据校验按各数据格式进行,例如手机号、e-mail等。
另一方面要对职员编号与姓名的一致性,职员编号的存进行验证,这些通过DAO里面的方法实现,针对出错,用JS给出友好的提示。
在做好基本功能的前提下,争取做出特色。
我尝试写了Hibernate分页、批量删除的代码,最后都测试成功。
同时加入了JS控件,对于一些有特殊格式要求的字段,防止用户填写错误(比如日期的填写格式为yyyy-mm-dd),使系统更加人性化。
经过讨论,对员工基本信息主表及与其关联的所有表,配置级联删除。
当主表信息被删除时,与之外键关联的子表信息同时被删除。
回顾这段历程,遇到了一些瓶颈,例如批量删除时如何有效的处理选中的id,要明白它得到的是一个String[],需要转化成int[]就好办了。
关于分页,我也是琢磨了好久。
在网上看了不少实例,具体实现起来还是一头雾水。
就在项目验收的前两天晚上,我决定自己写的试试。
第一个方法是需要获取表里面总记录数count,按照套路执行hql,我这样处理了结果count=list.size();结果出了问题。
数据库里有6条记录,结果打印出count为1。
在这里折腾了好久,后来打印list 为[6],这下才明白list.size()得到的是list里元素的个数,这个元素是6 ,我需要获取的是元素的是值(基础知识薄弱)。
明白这点就好办了,最后我是这样处理的
String a=list.get(0).toString(); //获取list第一个元素(对象),并转换成String count=Integer.parseInt(a); //将a转换成int,得到count
这样做分页的第一步就完成了。
第二天早上比较顺利的完成了剩下的代码并测试成功。
相比网上的分页代码,总的来说我写的很容易看懂,至于它有什么问题目前还不知道。
通过这次项目经验,我明白了只要想到了,就一定可以做到。
不要畏惧,困难并不像想像中的那么可怕。
一味的逃避将得不到真正的锻炼。
要时刻和队友交流,分享成果。
两个人总比一个人知道的多。
篇二:《Java应用项目开发总结报告_新》
闽南师范大学计算机科学与工程系
Java应用项目开发总结报告
篇三:《JAVA项目实验报告》
项目题目专业班级学生姓名学生学号
JAVA课程项目报告
利用JAVA实现一个小时钟的程序10软件工程闵楠
利用JAVA实现一个时钟的小程序
软件开发的需求分析
在当今的信息时代,时钟已经成为人们生活中必不可少的应用工具,Java 语言是当今流行的网络编程语言,它具有面向对象、与平台无关、安全、多线程等特点。
使用Java语言不仅可以实现大型企业级的分布式应用系统,还能够为小型的、嵌入式设备进行应用程序的开发。
面向对象的开发方法是当今世界最流行的开发方法,它不仅具有更贴近自然的语义,而且有利于软件的维护和继承。
为了进一步巩固课堂上所学到的知识,深刻把握Java语言的重要概念及其面向对象的特性,锻炼我们熟练的应用面向对象的思想和设计方法解决实际问题的能力,开设了Java程序设计课程设计。
此次课程设计的题目为简单的小时钟程序设计,通过做巩固所学Java语言基本知识,增进Java语言编辑基本功,掌握JDK、JCreator等开发工具的运用,拓宽常用类库的应用。
使我们通过该教学环节与手段,把所学课程及相关知识加
以融会贯通,全面掌握Java语言的编程思想及面向对象程序设计的方法,为今后从事实际工作打下坚实的基础。
2.具体实现
1设计思路
Java是一种简单的,面向对象的,分布式的,解释的,键壮的,安全的,结构中立的,可移植的,性能很优异的,多线程的,动态的语言。
Java去掉了C++语言的许多功能,让Java的语言功能很精炼,并增加了一些很有用的功能,如自动收集碎片。
这将减少平常出错的50%。
而且,Java很小,整个解释器只需215K 的RAM。
因此运用JAVA程序编写小时钟程序,实现简单显示时间的功能。
本次课程设计做的是Java简单小时钟,它是图形界面、线程、流与文件等技术的综合应用,其界面主要采用了java.awt包,javax.swing包等。
程序实现了小时钟的基本功能。
2设计方法
在设计简单小时钟时,需要编写5个Java源文件Server.java、Objecting.java、LogIn.java、ClientUser.java、Client.java。
小时钟除了需要编写的上述5个Java源文件所给出的类外,还需要Java系统提供的一些重要的类,如JTextField、JTextArea和File类。
3 运行环境
CPUPentium 8GHz以上内存256MB以上硬盘空间80G以上操作系统Windows XP 运行环境JDK,JCreator
4 程序功能图及程序相关说明
1 主功能框
图1 程序基本框图
表1 小时钟基本功能表
2 程序分析程序中引入的包
package Clock
import java.awt.Clock import java.awt.Graphics
import java.awt.event.WindowAdapter import
java.awt.event.WindowEvent import java.util.Calendar
import java.util.GregorianCalendar 用户自定义类类名Clock 作用定义小时钟继承的父类JFrame
public class clock extends JFrame{ 定义的对象
ClockPaint size
Resizable Location
Title Visible
WindowListener,WindowClosing 主要成员方法
public void center //定义小程序查看器的位置public void actionPerformed //定义处理异常机制定义子类ClockPaint 继承的父类名JPanel 继承的接口名Runnable
class ClockPaint extends JPanel implements Runnable
int h, m, s // 小时,分钟,秒主要成员方法public ClockPaint this.x=x this.y=y this.r=r
s=now.get(Calendar.SECOND) * 6 // 获得秒转换成度数
m=now.get(Calendar.MINUTE) * 6 // 获得分钟
h=(now.get(Calendar.HOUR_OF_DAY) - 12) * 30+
now.get(Calendar.MINUTE) / 12 * 6 // 获得小时主要成员方法
public void paint(Graphics g) // 清屏super.paint(g)
g.setColor(Color.BLACK)
g.fillRect(0, 0, r * 3, r * 3) // 画圆g.setColor(Color.WHITE)
g.drawOval(x, y, r * 2, r * 2) // 秒针g.setColor(Color.RED)
int x1=(int) ((r - 10) * Math.sin(rad * s)) int y1=(int) ((r - 10) * Math.cos(rad * s))
g.drawLine(x + r, y + r, x + r + x1, y + r - y1) // 分针
g.setColor(Color.BLUE)
x1=(int) ((r - r / 5) * Math.sin(rad * m)) y1=(int) ((r - r / 5) * Math.cos(rad * m))
g.drawLine(x + r, y + r, x + r + x1, y + r - y1) // 时针
g.setColor(Color.CYAN)
x1=(int) ((r - r / 5) * Math.sin(rad * h)) y1=(int) ((r - r / 5) * Math.cos(rad * h))
g.drawLine(x + r, y + r, x + r + x1, y + r - y1) // 数字
篇四:《软件工程实训(java)总结报告》
华东交通大学软件学院
2012年6周软件工程实训总结报告
专业班级09软件+电气4班学号20092110080402 学生姓名xx 指导教师xx
所在项目远程实验室管理系统项目经理xx
实训公司江西微软技术中心
实训周期2012 年11 月 5 日至2012 年12 月14 日{java项目总结报告}.
学生签名
年月日
篇五:《Java项目开发实训项目报告》
徐州工业职业技术学院
Java项目开发实训项目报告
完成人所在班级指导教师
完成时间2013年6月14日所在系部信息管理技术学院
一.设计项目名称
《网上书店》二.小组成员及分工
尚** a、界面设计;b、查询图书信息;c、浏览图书信息并实现分页功能;
d、删除图书信息;
e、用户登录;
f、根据客户编号查询订单信息
张** a、数据库的总体设计;b、添加图书信息;c、修改图书信息;d、用户注册;e、添加客户订单。
f、总体页面链接
三.项目功能需求分析用户登录功能用户注册功能
浏览所有图书并实现分页功能添加图书功能
修改图书功能6.删除图书功能7.添加客户订单
根据客户编号查询订单信息
图1总体流程图
四.项目数据库设计
1、BookInfo表
表1 BookInfo表
2、Custormer表{java项目总结报告}.
表2 Custormer表
3、UserInfo表{java项目总结报告}.
表3 UserInfo表
4、OrderInfo表
表4 OrderInfo表
四张表的关系图如下:
图1关系图
五.完成的主要功能登录功能
详细介绍输入正确的用户名和密码可以登录到info.jsp页面(管理员)或
index.jsp页面(普通用户),如果用户名或密码错误,弹出对话框,提出用户名或密码错误。
主要用到a、entity实体层UserInfo.java创建用户登录的方法,根据
userName查询UserInfo里面的字段。
b、dao实现类LoginDAOImpl.java运用Hibernate实现用户登录,其涉及到的接口为LoginDAO.java。
c、Action控制层LoginAction.java。
运行界面如图所示
图1 登录界面
注册功能
详细介绍点击index.jsp上的用户注册按钮,进入regist.jsp注册界面(如图2所示),输入用户名和密码,提交注册,弹出页面添加用户成功(如图3所示),否则弹出提交失败。
主要用到a、entity实体层UserInfo.java创建用户登录的方法,根据
userName查询UserInfo里面的字段。
b、dao实现类LoginDAOImpl.java运用Hibernate实现用户注册,其涉及到的接口为LoginDAO.java。
c、Action控制层LoginAction.java。
运行界面如图所示
篇六:《Java项目报告模版》
Java程序设计项目报告
班级
姓名
学号
指导教师
2010年06月3日{java项目总结报告}.{java项目总结报告}.
1、选题概述:
题目javaXX应用程序
简介通过本程序可以实现XX的基本功能。
程序是Frame类的子类。
使用GridLayout的布局方式对组件进行布局,用Panel类的容器存放按扭、文本框组件,程序中也用到大量的if—else语句。
等等
2、需求分析·打开{java项目总结报告}.
·保存
等等
3、总体设计
一实验目的
通过实训能够结合实例进一步理解面向对象程序设计的基本概念,掌握程序设计的基本方法和技巧,灵活的使用包,进一步的理解接口,熟练的掌握在接口
中对事件的实现。
深入理解和灵活运用面向对象程序设计的基本特性,培养良好的程序设计风格,提高抽象思维、逻辑思维的能力。
二实验内容
编写一个实现XX应用程序
三程序介绍及其功能的实现
程序需要导入import java.awt.*、import java.awt.event.*、import ng.*、import javax.swing.*包。
①程序的基本框架是
如————首先定义一个Frame类的子类,之后声明三个面板的布局,即定义了
GridLayout类的三个对象gl1、gl2、gl3。
之后是定义了Panel类的容器的四个对象p0、p1、p2、p3,其中p0用来存放显示屏文本框组件,p1采用gl1布局,用来存放删除和归零按钮,p3采用gl3布局,用来存放数字按钮和运算符按钮,p2采用gl2布局,用来存放其它功能按钮键按钮。
②具体的实现过程是
如————⑴、程序定义了JTextField类的对象tf1和TextField类的对象tf2及26个button类的按钮,在Counter类的构造方法中分别对各个对象进行了初始化,对面板进行了合适的布局,各个按钮也相应的添加到相应的容器中,在实例化所有按钮、设置其前景色的同时并注册监听器。
⑵、对各个组件进行相应的设计之后,即程序运行之后的可视化界面完成之后开始实现程序内部的事件过程,即接口的实现。
定义了一个名为Bt的类来实现接口,程序在
actionPerformed()方法中对各个按钮和文本框组件的具体方法进行实现,程序中不断的用else—if语句对按钮操作事件的实现,并对事件的异常进行处理。
4、技术选型
跨平台性
5、开发环境
Windows xp3 + jdk6 + eclipse
6、详细设计
各功能说明
XX功能具体设计如下(详细描述)
7、实习体会
8、程序界面
(普通型界面)
(科学型界面)
程序清单(部分代码)
篇七:《Java初级项目心得》
Java初级项目心得
从二十几天前的项目需求分析,到数据库设计,到后来的界面设计以及第一次全部整合项目,到最后的项目总调试到评审,中间出了很多问题,但最终还是
学到了很多在平时写Demo中学不到的东西,对于一个完整的项目流程还是有了更深层次的了解。
最开始的时候关于项目选题我们组间还是有比较大的争议的,各种想法不一样,对于想做出来的东西期望值太大,比如像做一个完善的教师学生管理集于一体的系统,在我设计的时候才发现以我们现在的水平这个事完全达不到的,时间和经验决定了我们只能做这个中间的一部分,最后才决定做学生和教师功能的一小部分。
开始做了的时候我是很有想法的,想搞一个标准让大家按照我的标准来做所有的事情,在这个事情上组员是比较反感的,因为觉得我写的东西不足以成为标准,并且将所有用到的固定值都用一个常量类来定义其实是很麻烦的一件事情,而且在设计界面过程中后面都是直接使用工具拖出来的界面,所有的固定值都是由系统计算给出的,全部写进常量类就更不现实了。
并且在设计这一块由于我最初写出的界面并未的到组员的认可,主要是因为我做的不美观并且没有让代码有很好的可读性。
设计的时候虽然列出了全部的功能实现但是在最初实现的时候我并不知道所有的实现需要用到的方法和需要返回的类型,传入的值部分,直观的说就是并没有用到面向对象核心思想去编程,所有到最后做出来的界面是每个部分一套,看起来像是多个项目,而且组员的交流很少,都只顾做自己的东西,这个是我的责任,有时候组员不按照我说的去做真的很无奈。
到了最后实现的时候,这时候我的分工出现了很严重的问题,当时没想那么
多,就想着自己多做一些,然后大家平均分配。
我觉得这样很公平,但是过了两天去问组员的进度,段超负责的部分已经按照计划提前实现了,我也多做了一些,其他组员还在数据库和java不知道怎么去连接,怎么获取数据,或者是获取数据后不知道怎么在界面显示。
在开始的时候并没有做太多的规范,虽然是说分了视图层,业务逻辑层和数据库查询层,但是有些查询和业务逻辑根本就是直接写在界面中,所有有两个组员写的都是教师端的功能到了最后自己写的类都不知道是用来做什么的,调试的时候一个方法要找好久才能知道是在哪里调用的。
以后
的过程中我会尽量先和组员说好这些事情,不会到了最后才发现那里有问题,这应该是一个很重要的规划问题,分配任务的时候不应该一次性全部分配好,可以根据组员的进度来调节任务的分配,在最初设计的时候不管有多少应该的功能,怎么也要出来个简单的框架,起码然组员不会为找一个类而头疼。
当然学到了很多,比如最初我开始对三层编程的不理解,在三个类之间同时编程的时候,没有一个类那么好查看错误,逻辑也不够清晰,知道了文档注释的重要性,对组员之间交流也肯定会进行的更多,对项目该怎么做有了一个最起码的结构在脑海里。
一路踉踉仓仓做出来的东西确实不是当初想的那么美好,无论怎么说还是有一个东西出来了,也算是这十几天的结晶,还是得到了很多有意义的经验,相信以后我会做的更好,达到想要到项目需求。
黄涛2014-07-28。