软件工具与环境 实验报告 杨杰.docx
《软件工具与环境 实验报告 杨杰.docx》由会员分享,可在线阅读,更多相关《软件工具与环境 实验报告 杨杰.docx(18页珍藏版)》请在冰豆网上搜索。
软件工具与环境实验报告杨杰
学生学号
0120910680405
实验课成绩
武汉理工大学
学生实验报告书
实验课程名称软件工具与环境
开课学院计算机科学与技术学院
指导老师姓名张能立
学生姓名杨杰
学生专业班级软件工程0904
2011—2012学年第1学期
实验课程名称:
软件工具与环境
实验项目名称
Eclipse平台及程序调试技术
实验成绩
实验者
杨杰
专业班级
软件0904
组别
同组者
实验日期
年月日
第一部分:
实验分析与设计(可加页)
一、实验内容描述(问题域描述)
1、掌握Eclispe平台的工作台(Workbench)、透视图(Perspectives)、视图(Views)、首选项(Preferences)概念。
2、掌握透视图切换的方法。
3、编写一个简单的Java程序,并能正确运行
4、掌握设置断点及调试跟踪程序的方法。
二、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述)
1、启动Eclispe,在Java透视图、JavaDebug透视图、MyEclipseDatabaseExplorer透视图以及MyEclipseJavaEnterprise透视图之间来回切换,与同学或老师讨论一下这些透视图的作用。
2、编写一个在控制台输出“HelloWorld!
”的程序和一个在控制台输出1+2+3+…+100之和的程序。
publicclassHelloWorld{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)
{
System.out.println("HelloWorld");
}
publicclassSum_while{
//TODOAuto-generatedmethodstub
inti=1,n=100,sum=0;
while(i{sum+=i;i++;}System.out.println("i="+i);System.out.println("Sum="+sum);}} 三、主要仪器设备及耗材计算机Eclipse开发工具 第二部分:实验调试与结果分析(可加页)一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等)二、实验结果及分析(包括结果描述、实验现象分析、影响因素讨论、综合分析和结论等)第一个:HelloWorld!第二个:i=100Sum=4950 三、实验小结、建议及体会通过本次实验进一步掌握了Eclipse平台及程序调试技术,同时也对Java有了进一步的认识。也认识到了自己的不足,会在以后的学习中进一步加强学习! 实验课程名称:软件工具与环境实验项目名称用TDD模式开发求N的阶乘程序实验成绩实验者杨杰专业班级软件0904组别同组者实验日期年月日第一部分:实验分析与设计(可加页)三、实验内容描述(问题域描述)1、了解单元测试的重要意义2、初步掌握JUnit的用法3、了解TDD(测试驱动开发)的理念,初步掌握TDD模式程序开发方法 四、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述)1、建立Java项目:TDDDemoProject2、建立包com.whut,com.whut.unittest3、在包com.whut.unittest建立一个单元测试类TestCalcFact4、在类TestCalcFact中新建一个方法testCalc()5、对该方法做相应修改:publicclassTestCalcFactextendsTestCase{CalcFactcalcFact;protectedvoidsetUp()throwsException{super.setUp();calcFact=newCalcFact();}protectedvoidtearDown()throwsException{super.tearDown();}publicvoidtestCalc(){assertEquals(0,calcFact.calc(-1));}}6、在包com.whut内建立CalcFact类及方法publiclongcalc(intn)publiclongcalc(intn){longresult=0;if(n<0){result=0;}returnresult;}7、运行测试类TestCalcFact,测试通过OK8、在testCalc中增加断言:assertEquals(1,calcFact.calc(0));assertEquals(1,calcFact.calc(1));9、运行测试类TestCalcFact,测试不通过。10、修改类CalcFact方法calc:if(n<0){result=0;}elseif(n==0||n==1){result=1;}11、在testCalc中增加断言:assertEquals(3628800,calcFact.calc(10));12、运行测试类TestCalcFact,测试不通过。13、修改类CalcFact方法calc:if(n<0){result=0;}elseif(n==0||n==1){result=1;}else{result=1;for(inti=1;i<=n;i++){result=result*i;}}14、在testCalc中增加断言:assertEquals(0,calcFact.calc(21));15、运行测试类TestCalcFact,测试不通过。16、修改类CalcFact方法calc:publiclongcalc(intn){longresult=0;//0表示没有定义if(n<0||n>20){result=0;}elseif(n==0||n==1){result=1;}else{result=1;for(inti=1;i<=n;i++){result=result*i;}}returnresult;}三、主要仪器设备及耗材计算机Eclipse软件开发工具第二部分:实验调试与结果分析(可加页)四、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等) 五、实验结果及分析(包括结果描述、实验现象分析、影响因素讨论、综合分析和结论等)测试1:测试2:测试3:测试4: 测试5: 六、实验小结、建议及体会通过本次实验进一步掌握了Eclipse开发工具操作。了解单元测试的重要意义,并且初步掌握JUnit的用法了解TDD(测试驱动开发)的理念,初步掌握TDD模式程序开发方法。对自己的学习有很大的帮助。 实验课程名称:软件工具与环境实验项目名称SWT程序开发实验成绩实验者杨杰专业班级软件0904组别同组者实验日期年月日第一部分:实验分析与设计(可加页)五、实验内容描述(问题域描述)1、了解SWT的历史2、掌握SWT程序开发基本步骤3、掌握SWT组件的事件处理机制及方法4、掌握SWT中的Label、Text、List、Combo、Table、Tree、Composite、Group、Tabfolder、Menus组件的用法。 六、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述)1、新建一Java工程项目:SWTDemoProject2、设置项目的建构路径,右单击项目名,BuildPath->ConfigureBuildPath,单击AddExternalJARs,3、定位到C:\ProgramFiles\MyEclipse6.5\eclipse\plugins,选中org.eclipse.swt.win32.win32.x86_3.3.3.v3349.jar和org.eclipse.swt_3.3.2.v3349d.jar,单击“打开”按钮4、在包com.whut中新建一个类LabelDemo:publicclassLabelDemo{publicstaticvoidmain(String[]args){//Display连接底层平台和SWT,负责管理SWT事件循环,以及提供访问SWT所需的底层平台资源。Displaydisplay=newDisplay();Shellshell=newShell(display);//shell是程序的主窗口shell.setText("HelloWorld");//设置主窗口的标题shell.setBounds(100,100,200,50);//设置主窗口的大小(长200像//素,高50像素)和位置(窗口的左角离显示器左角顶点100,100像素处)shell.setLayout(newFillLayout());//设置主窗口的布局Labellabel=newLabel(shell,SWT.CENTER);//创建标签组件label.setText("HelloWorld");//设置组件的标题Colorred=newColor(display,255,0,0);//创建颜色对象label.setForeground(red);//改变标签的前景色shell.open();//打开主窗口while(!shell.isDisposed()){if(!display.readAndDispatch())//得到事件并且调用对应的监听器进行处理display.sleep();//等待事件发生}red.dispose();//析构对象reddisplay.dispose();//析构对象display}}在包com.whut中新建一个类ButtonDemo:publicclassButtonDemo{publicstaticvoidmain(String[]args){Displaydisplay=newDisplay();Shellshell=newShell(display);shell.setText("ButtonExample");shell.setBounds(100,100,200,100);shell.setLayout(newFillLayout());finalButtonbutton=newButton(shell,SWT.PUSH);button.setText("ClickMeNow");button.addSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEventevent){button.setText("IWasClicked");}});shell.open();while(!shell.isDisposed()){if(!display.readAndDispatch())display.sleep();}display.dispose();}三、主要仪器设备及耗材计算机Eclipse软件开发工具 第二部分:实验调试与结果分析(可加页)一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等) 二、实验结果及分析(包括结果描述、实验现象分析、影响因素讨论、综合分析和结论等)LabelDemo: ButtonDemo: 三、实验小结、建议及体会通过本次实验,对Java有了进一步的了解,同时对SWT的历史和SWT程序开发基本步骤有了进一步掌握,同学也初步学习了SWT组件的事件处理机制及方法掌握SWT中的Label、Text、List、Combo、Table、Tree、Composite、Group、Tabfolder、Menus组件的用法。 实验课程名称:软件工具与环境实验项目名称MySQL-Front和CaseStudio的使用实验成绩实验者杨杰专业班级软件0904组别同组者实验日期年月日第一部分:实验分析与设计(可加页)七、实验内容描述(问题域描述)1、熟悉MySQL-Front软件的基本用法2、熟悉CaseStudio软件的基本用法 八、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述)1、用MySQL-Front软件在教务管理数据库中,分别建立学生数据表、课程表、选课表(1)、学生数据表(students)字段:学号(studentid)、姓名(name)、性别(sex)、出生日期(birthday)、籍贯(province)、家庭地址(address)、学院(college)、班级(class)(2)、课程表(courses)字段:课程代码(courseid)、课程名称(coursename)、课时(coursetime)、上课教室(courseroom)、开课日期(begintime)、最大选修人数(maxnumber)。(3)、选课表字段(selectcourses):学号(studentid)、课程代码(courseid)、成绩(score)要求:(1)、对于学生表,要求设立学号为主键,并分别以出生日期、籍贯、学院,建立3个索引。(2)、对于课程表,要求设立课程代码为主键,建立开课日期索引。(3)、对于选课表,要求设立学号和课程代码为复合主键,学号为外键、课程代码为外键。(4)、对于学生表,要求手工输入自己的信息。2、用CaseStudio软件重新做一遍 三、主要仪器设备及耗材1、操作系统:Windows72、数据库:MySQL3、工具软件:MySQL-Front4、工具软件:CaseStudio 第二部分:实验调试与结果分析(可加页)一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等) 二、实验结果及分析(包括结果描述、实验现象分析、影响因素讨论、综合分析和结论等) 三、实验小结、建议及体会通过本次实验熟悉MySQL-Front软件的基本用法,同时也进一步对CaseStudio软件的基本用法有了基本了解。在实验中也认识到了自己的不足,在以后的学习中会进一步努力学习。 实验课程名称:软件工具与环境实验项目名称JSP程序开发实验成绩实验者杨杰专业班级软件0904组别同组者实验日期年月日第一部分:实验分析与设计(可加页)九、实验内容描述(问题域描述)5、掌握基本的HTML语言6、掌握JSP基本语法7、掌握JSP程序开发和部署的基本方法8、掌握用JSP技术开发动态Web程序的基本方法 一十、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述)5、新建一Web工程项目:WebDemoProject(1)、打击File主菜单,选择New->WebProject。(2)、在PojectName处输入:WebDemoProject(3)、单击Finish按钮。6、将mysql-connector-java-3.1.12-bin.jar文件拷贝到工作空间项目\WebDemoProject\WebRoot\WEB-INF\lib文件夹下。7、在包浏览器中,在WEB-INF文件夹下,打开Index.jsp文件,在和之间输入如下代码:
sum+=i;
i++;
System.out.println("i="+i);
System.out.println("Sum="+sum);
三、主要仪器设备及耗材
计算机Eclipse开发工具
第二部分:
实验调试与结果分析(可加页)
一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等)
二、实验结果及分析(包括结果描述、实验现象分析、影响因素讨论、综合分析和结论等)
第一个:
HelloWorld!
第二个:
i=100
Sum=4950
三、实验小结、建议及体会
通过本次实验进一步掌握了Eclipse平台及程序调试技术,同时也对Java有了进一步的认识。
也认识到了自己的不足,会在以后的学习中进一步加强学习!
用TDD模式开发求N的阶乘程序
三、实验内容描述(问题域描述)
1、了解单元测试的重要意义
2、初步掌握JUnit的用法
3、了解TDD(测试驱动开发)的理念,初步掌握TDD模式程序开发方法
四、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述)
1、建立Java项目:
TDDDemoProject
2、建立包com.whut,com.whut.unittest
3、在包com.whut.unittest建立一个单元测试类TestCalcFact
4、在类TestCalcFact中新建一个方法testCalc()
5、对该方法做相应修改:
publicclassTestCalcFactextendsTestCase{
CalcFactcalcFact;
protectedvoidsetUp()throwsException{
super.setUp();
calcFact=newCalcFact();
protectedvoidtearDown()throwsException{
super.tearDown();
publicvoidtestCalc(){
assertEquals(0,calcFact.calc(-1));
6、在包com.whut内建立CalcFact类及方法publiclongcalc(intn)
publiclongcalc(intn){
longresult=0;
if(n<0){
result=0;
returnresult;
7、运行测试类TestCalcFact,测试通过OK
8、在testCalc中增加断言:
assertEquals(1,calcFact.calc(0));
assertEquals(1,calcFact.calc
(1));
9、运行测试类TestCalcFact,测试不通过。
10、修改类CalcFact方法calc:
}elseif(n==0||n==1){
result=1;
11、在testCalc中增加断言:
assertEquals(3628800,calcFact.calc(10));
12、运行测试类TestCalcFact,测试不通过。
13、修改类CalcFact方法calc:
}else{
for(inti=1;i<=n;i++){
result=result*i;
14、在testCalc中增加断言:
assertEquals(0,calcFact.calc(21));
15、运行测试类TestCalcFact,测试不通过。
16、修改类CalcFact方法calc:
longresult=0;//0表示没有定义
if(n<0||n>20){
计算机Eclipse软件开发工具
四、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等)
五、实验结果及分析(包括结果描述、实验现象分析、影响因素讨论、综合分析和结论等)
测试1:
测试2:
测试3:
测试4:
测试5:
六、实验小结、建议及体会
通过本次实验进一步掌握了Eclipse开发工具操作。
了解单元测试的重要意义,并且初步掌握JUnit的用法了解TDD(测试驱动开发)的理念,初步掌握TDD模式程序开发方法。
对自己的学习有很大的帮助。
SWT程序开发
五、实验内容描述(问题域描述)
1、了解SWT的历史
2、掌握SWT程序开发基本步骤
3、掌握SWT组件的事件处理机制及方法
4、掌握SWT中的Label、Text、List、Combo、Table、Tree、Composite、Group、Tabfolder、Menus组件的用法。
六、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述)
1、新建一Java工程项目:
SWTDemoProject
2、设置项目的建构路径,右单击项目名,BuildPath->ConfigureBuildPath,单击AddExternalJARs,
3、定位到C:
\ProgramFiles\MyEclipse6.5\eclipse\plugins,
选中org.eclipse.swt.win32.win32.x86_3.3.3.v3349.jar
和org.eclipse.swt_3.3.2.v3349d.jar,单击“打开”按钮
4、在包com.whut中新建一个类LabelDemo:
publicclassLabelDemo{
publicstaticvoidmain(String[]args){
//Display连接底层平台和SWT,负责管理SWT事件循环,以及提供访问SWT所需的底层平台资源。
Displaydisplay=newDisplay();
Shellshell=newShell(display);//shell是程序的主窗口
shell.setText("HelloWorld");//设置主窗口的标题
shell.setBounds(100,100,200,50);//设置主窗口的大小(长200像
//素,高50像素)和位置(窗口的左角离显示器左角顶点100,100像素处)
shell.setLayout(newFillLayout());//设置主窗口的布局
Labellabel=newLabel(shell,SWT.CENTER);//创建标签组件
label.setText("HelloWorld");//设置组件的标题
Colorred=newColor(display,255,0,0);//创建颜色对象
label.setForeground(red);//改变标签的前景色
shell.open();//打开主窗口
while(!
shell.isDisposed()){
if(!
display.readAndDispatch())//得到事件并且调用对应的监听器进行处理
display.sleep();//等待事件发生
red.dispose();//析构对象red
display.dispose();//析构对象display
在包com.whut中新建一个类ButtonDemo:
publicclassButtonDemo{
Shellshell=newShell(display);
shell.setText("ButtonExample");
shell.setBounds(100,100,200,100);
shell.setLayout(newFillLayout());
finalButtonbutton=newButton(shell,SWT.PUSH);
button.setText("ClickMeNow");
button.addSelectionListener(newSelectionAdapter(){
publicvoidwidgetSelected(SelectionEventevent){
button.setText("IWasClicked");
});
shell.open();
display.readAndDispatch())display.sleep();
display.dispose();
LabelDemo:
ButtonDemo:
通过本次实验,对Java有了进一步的了解,同时对SWT的历史和SWT程序开发基本步骤有了进一步掌握,同学也初步学习了SWT组件的事件处理机制及方法掌握SWT中的Label、Text、List、Combo、Table、Tree、Composite、Group、Tabfolder、Menus组件的用法。
MySQL-Front和CaseStudio的使用
七、实验内容描述(问题域描述)
1、熟悉MySQL-Front软件的基本用法
2、熟悉CaseStudio软件的基本用法
八、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述)
1、用MySQL-Front软件在教务管理数据库中,分别建立学生数据表、课程表、选课表
(1)、学生数据表(students)字段:
学号(studentid)、姓名(name)、性别(sex)、出生日期(birthday)、籍贯(province)、家庭地址(address)、学院(college)、班级(class)
(2)、课程表(courses)字段:
课程代码(courseid)、课程名称(coursename)、课时(coursetime)、上课教室(courseroom)、开课日期(begintime)、最大选修人数(maxnumber)。
(3)、选课表字段(selectcourses):
学号(studentid)、课程代码(courseid)、成绩(score)
要求:
(1)、对于学生表,要求设立学号为主键,并分别以出生日期、籍贯、学院,建立3个索引。
(2)、对于课程表,要求设立课程代码为主键,建立开课日期索引。
(3)、对于选课表,要求设立学号和课程代码为复合主键,学号为外键、课程代码为外键。
(4)、对于学生表,要求手工输入自己的信息。
2、用CaseStudio软件重新做一遍
1、操作系统:
Windows7
2、数据库:
MySQL
3、工具软件:
MySQL-Front
4、工具软件:
CaseStudio
通过本次实验熟悉MySQL-Front软件的基本用法,同时也进一步对CaseStudio软件的基本用法有了基本了解。
在实验中也认识到了自己的不足,在以后的学习中会进一步努力学习。
JSP程序开发
九、实验内容描述(问题域描述)
5、掌握基本的HTML语言
6、掌握JSP基本语法
7、掌握JSP程序开发和部署的基本方法
8、掌握用JSP技术开发动态Web程序的基本方法
一十、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述)
5、新建一Web工程项目:
WebDemoProject
(1)、打击File主菜单,选择New->WebProject。
(2)、在PojectName处输入:
(3)、单击Finish按钮。
6、将mysql-connector-java-3.1.12-bin.jar文件拷贝到工作空间项目\WebDemoProject\WebRoot\WEB-INF\lib文件夹下。
7、在包浏览器中,在WEB-INF文件夹下,打开Index.jsp文件,在
用户名:
150">密 码:150">
150">
密 码:
8、在WEB-INF文件夹中新建login.jsp,main.jsp,continue.jsp,checkvalid.jsp等文件,其具体代码见压缩包中相关文件。
9、用MySQL-Front新建数据库demodb,然后新建一数据表users,包含两个字段name和password,(这两个字段都设置为字符串varchar)。
用手工输入一条或多条记录。
10、单击部署按钮,完成项目的部署。
11、打开IE浏览器,在地址栏目输入http:
//127.0.0.1:
8080/WebDemoProject,观察运行结果。
运行MyEclipse运行tomCat在浏览器输入http:
//localhost:
8080/Web/index.jsp执行如下图:
在mySQL-Front中创建数据库demodb,两个字段name和password.期中name初始化数据为karant,password初始化为123456;
在界面不输入,或者只输入用户名,或者只输入密码运行效果如图:
然后又回到原来界面
如果输入如下图:
则显示如下图:
用户名输入错误也会报出用户名错误的提示
输入正确之后,按键提示输入正确
按确定后会转到新的界面,也就是欢迎界面
本实验的过程是输入数据,与从数据库读取数据进行核对,然后把结果返回。
通过本次实验复习了下HTML,同时学习了Jsp的基础知识,以及安装MyEclipse并配置Tomcat和连接数据库,复习了用MySQL-Front操作数据库,掌握了掌握JSP程序开发和部署的基本方法,掌握用JSP技术开发动态Web程序的基本方法,以及如何用MyEclipse连接操作数据库和Tomcat服务器结合使用的基本方法,对JSP开发过程和框架有了更深一步的了解
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1