jsp实习报告模板

jsp实习报告模板
jsp实习报告模板

新疆农业职业技术学院

《Java程序设计》教学实习报告

部门:软件技术学院

专业:计算机网络技术

班级:2007高职网络

姓名:张博

指导教师:李欣

《JA V A程序设计》教学实习报告

一、实习时间:2009年5月14日至2009年5月20日

二、实习地点:第2微机室

三、实习目的

1、掌握搭建Java开发环境的方法;

2、通过团队合作,提高沟通、交流能力,培养团队合作精神;

3、严格按照Java语言编写规约编写代码,养成遵守规约的习惯,增强编码质量的意识;

4、教师面向对象程序实例的剖析,以及实际操作,理解面向对象编程的理念,并熟练编写程序;

5、掌握Java程序的调试方法;

四、实习内容及方法

实训一相关环境搭建

实验目的

1、熟悉JDK开发环境。

2、熟悉JCreator编辑器的使用。

实验内容

1、JDK开发环境及安装

第一步:下载。从学校网站上找:ftp://10.1.1.16选择编程软件中Java。

第二步:安装jdk。

第三步:安装好后,选择“开始”→“运行…”命令,在打开的“运行”窗口中输入“cmd”命令并“确定”。在打开的命令行窗口中,分别执行java和javac 命令。如下图所表示

第四步:查看操作系统环境变量。选择“我的电脑”的“属性”,选择“高级”中的“环境变量”。

第五步:设置环境变量及path环境变量的作用和设置。

编辑源文件

import java.io.*;

public class HelloWorld1{

public static void main(String arg[]){

System.out.println("Hello World!");}}

输出结果

实训分析总结

什么是Java虚拟机?它的作用是什么?

Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。

作用:运行JAVA applet小程序,没了它,好多网站的功能无法使用,因为现在很多服务是通过它实现的。JAVA不编译,他的字节码要靠虚拟机才能运行。

实训二Java基础-控制语句使用实例

实训目的:

1、掌握Java语言中的三种基本的流程控制

2、理解数组的概念,数组的定义方法,数组的应用。

实训内容:

1、随机输入3个数,要求按降序排列。

import java.util.*;\\导入包

public class bidaxiao{

public static void main(String[]args){

int length=3;

int[]ints=new int[length];

Scanner san=new Scanner(System.in);

for(int i=0;i

System.out.print("请输入第"+(i+1)+"个数:");

ints[i]=san.nextInt();}

Arrays.sort(ints);

System.out.println("这"+length+"个数从大到小的排列顺序为:");

for(int i=length-1;i>=0;i--){

System.out.print(ints[i]+"");}}}

输出结果:

2、编写程序,用循环语句列出1到10的阶乘值。

public class A{

public static void main(String args[]){

int i;

long A=1;

for(i=1;i<=10;i++){

A*=i;

System.out.println("!"+A);}}}

输出结果:

3、编写程序显示一年的月份。月份要保存在数组中。

public class year{

public static void main(String args[]){

int[]a=new int[12];

for(int i=1;i<=12;i++){

System.out.println("一年的第"+i+"个月是"+i+"月");}}}输出结果:

4、定义一个二维数组,从键盘输入数据,要求求出最大值元素、最小值元素。

public class MaxArray{

public static void main(String[]args){

int a[][]={{3,2,6},{6,8,2,10},{5},{12,3,23}};

int max=0;int min=0;

for(int i=0;i

for(int j=0;j

max=a[0][0];

if(max

else{min=a[i][j];}}}

System.out.println("二维数组的最大值为:"+max);

System.out.println("二维数组的最小值为:"+min);}}

输出结果:

实训分析总结:

1、三种循环语句的数据流程图如何执行?

do-while流程图for流程图while流程图

2、三种循环语句的语法格式。

while循环语句的语法格式:

[initialization]

while(loop-condition){body;

[iteration;]}

for循环语句的语法格式:

for([initialization];[loop-condition];[iteration;]){

body;}

3、什么是数组?数组的定义形式?

数组是由相同的数据类型数据按顺序组成的数据集合。

数组的定义形式:

一维数组:type arrayName[]或者type[]arrayName

二维数组:type arrayName[][]或者type[][]arrayName

实训三类的封装、继承与多态性

实训目的:

1、理解类、封装、继承多态的概念和类的对象的创建和使用。

2、理解方法的概念,方法的调用,参数的传递。

3、熟练掌握类的继承。

实训内容:

1、编写程序,给定圆的半径和高度,计算圆柱体的体积,利用引用对象方法的形式表示。

import java.io.*;

class tj{

private double r;private double h;

public tj(double r,double h){

if(r>0)this.r=r;

if(h>0)this.h=h;}

public boolean setr(double r){

if(r>0){this.r=r;

return true;}

else return false;}

public double getr(){

return r;}

public boolean seth(double h){

if(h>0){return true;}

else return false;}

public double geth(){return h;}

public double tj(){return3.14*r*r*h;}

public static void main(String args[])throws IOException{

BufferedReaderin=new BufferedReader(new InputStreamReader(System.in));

System.out.println("请输入圆的半径:");

double r=Double.parseDouble(in.readLine());

System.out.println("请输入圆柱的高:");

double h=Double.parseDouble(in.readLine());

tj v=new tj(r,h);

System.out.println("圆柱的半径为:"+v.getr()+"\t高为:"+v.geth());

System.out.println("圆柱的体积为:"+v.tj());}}

2、试设计一个Calculator类,并完成下列的各方法的程序设计:

定义add(a,b)方法,用来计算两数之和。

定义mul(a,b)方法,用来计算两数的乘积。

定义sub(a,b)方法,用来计算两数之差。

定义div(a,b)方法,用来计算a/b。

import java.io.*;

class Calculator{

private double a;private double b;

public Calculator(double a,double b){

if(a>0)this.a=a;

if(b>0)this.b=b;}

public boolean seta(double a){

if(a>0){this.a=a;

return true;}

else return false;}

public double geta(){return a;}

public boolean setb(double b){

if(b>0){return true;}

else return false;}

public double getb(){return b;}

public double add(){return a+b;}

public double mul(){return a*b;}

public double sub(){return a-b;}

public double div(){return a/b;}

public static void main(String args[])throws IOException{

BufferedReaderin=newBufferedReader(new InputStreamReader(System.in));

System.out.println("请输入a的值:");

double a=Double.parseDouble(in.readLine());

System.out.println("请输入b的值:");

double b=Double.parseDouble(in.readLine());

Calculator c=new Calculator(a,b);

//System.out.println(""+c.geta()+"\t"+c.getb());

System.out.println("a,b的和:"+c.add());

System.out.println("a,b的积:"+c.mul());

System.out.println("a,b的差:"+c.sub());

System.out.println("a,b的商:"+c.div());}}

输出结果

3、请逐步完成下列的程序设计:

(a)、设计一个父类Caaa,内含public两个整数数据成员。

(b)、设计一个子类Cbbb,继承自Caaa类,并加入set_num()方法,可用来赋值从父类继承而来的成员num1,num2,和show()方法,用来显示num1与num2的值。

(c)、在Caaa类里加入一个没有参数的构造函数Caaa(),它可用来把num1和num2赋值初值为1。

(d)、在类里加入另一个有参数的构造函数Caaa(int a,int b),它可用来把num1赋值为a,把num2赋值为b。

(e)、在main()方法里编写程序代码,测试(c)和(d)的结果。

不带参数

class Caaa{

public int num1;public int num2;

public Caaa(){}

public void setnum1(int num1){this.num1=num1;}

public int getnum1(){return num1;}

public void setnum2(int num2){this.num2=num2;}

public int getnum2(){return num2;}

public void printOtherInfo(){

System.out.print("num1="+num1);

System.out.print("\tnum2="+num2);

System.out.println();}}

class Cbbb extends Caaa{}

class Cbbbtest{

public static void main(String agrs[]){

Cbbb b=new Cbbb();

b.setnum1(1);

b.setnum2(1);

b.printOtherInfo();}}

输出结果

带参数的

class Caaa{public int num1;public int num2;}

class Cbbb extends Caaa{void set_num(int a,int b){

num1=a;num2=b;}

void show(){System.out.println("num1="+num1+","+"num2="+num2);}}

class app{public static void main(String args[]){

Cbbb bb=new Cbbb();

bb.set_num(5,10);

bb.show();}}

输出结果

4、设计一个类,内含一个方法可以判别输入的值为奇数还是偶数,如果为奇数就输出“此数为奇数”,反之若为偶数就输出“此数为偶数”。

import java.io.*;

public class jo{private int a;

public jo(int a){if(a>0)

this.a=a;}

public boolean seta(int a){

if(a>0){this.a=a;

return true;}

else return false;}

public double geta(){return a;}

public static void main(String args[])throws IOException{

BufferedReaderin=new BufferedReader(new InputStreamReader(System.in));

System.out.println("请输入a的值:");

double a=Double.parseDouble(in.readLine());

if(a%2==1){System.out.println("此数为奇数");}

else{System.out.println("此数为偶数");}}}

输出结果

实训分析总结:

1、什么是类?请写出定义类的格式。

2、如何创建一个类和该类的对象?

1、什么是类?写出定义类的格式,如何创建类的对象?

类是组成java程序的基本元素,一个java程序由若干个类组成。

Java中使用关键字class声明一个类,大括号用来指出类体的开始和结束。

创建类:class Student{创建类的对象:

//类的成员变量声明Student studeng=new Student

//类的方法声明}

2、类的成员变量和方法?

类的成员变量用来描述对象的状态,也称为属性、数据或域。

类的方法是用来描述对象的行为。

3、什么是继承?什么是封装?

像大客车和小轿车与车类之间存在的关系为继承

封装是指信息与实现细节的隐藏。

实训四简单计算器模拟

实训目的:

1、熟练掌握图形用户界面的设计和各组件的应用

2、能够处理一般事件的响应

实训内容:

1、设计一个窗口,内含一个按钮,当按下此按钮的时候,窗口的颜色会从原来的白色变成其他你所设置的颜色。

import java.awt.Button;

import java.awt.Color;

import java.awt.FlowLayout;

import java.awt.Frame;

import java.awt.Panel;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

public class button extends MouseAdapter{

Frame f=new Frame();Panel P1=new Panel();

Button b1=new Button("绿色");

public static void main(String args[]){

button ct=new button();

ct.init();}

public void init(){

f.setLayout(new FlowLayout());

f.add(b1);

P1.setBackground(Color.red);

P1.setVisible(true);

b1.addMouseListener(this);

f.setSize(200,150);

f.setVisible(true);}

public void mousePressed(MouseEvent e2){

if(e2.getSource()==b1){

f.setBackground(Color.green);}}}

2、设计一个包含有文本框和标签的窗口,在文本框中输入一段文字,按回

车后,将该段文字内容加入到标签中显示。

import java.awt.GridLayout;

import java.awt.event.KeyAdapter;

import java.awt.event.KeyEvent;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

import javax.swing.JTextField;

public class zhuanhuan{public static void main(String[]args){

JFrame jf=new JFrame();JPanel jp=new JPanel();

final JLabel jl=new JLabel();final JTextField jtf=new JTextField();

jf.add(jp);

jp.setLayout(new GridLayout(2,1));

jp.add(jl);jp.add(jtf);

jtf.addKeyListener(new KeyAdapter(){

public void keyPressed(KeyEvent e){

if(e.getKeyCode()==KeyEvent.VK_ENTER){

jl.setText(jtf.getText());}}});

jf.setSize(144,144);

jf.setVisible(true);}}

输出结果

3、学生注册系统

import java.util.*;//导入工具包

import java.awt.*;//导入抽象窗口工具包

import java.awt.event.*;//导入软件包

import javax.swing.*;//导入轻量级的工具包

import java.io.*;//导入软件包

class学生extends Panel{

class ShowWin extends JFrame implements ActionListener{

LinkedList students_list=null;

JTextField学号文本框=new JTextField(),

姓名文本框=new JTextField(),

年龄文本框=new JTextField(),//创建新实例

班级文本框=new JTextField(),

删除文本框=new JTextField();

JButton b_add=new JButton("添加学生"),

b_del=new JButton("删除学生"),

b_show=new JButton("显示学生名单");

JTextArea显示区=new JTextArea();

students_list=new LinkedList();

JPanel save=new JPanel();

save.setLayout(new GridLayout(5,2));

save.add(new Label("输入学号:"));save.add(学号文本框);//添加文本内容save.add(new Label("点击添加:"));save.add(b_add);

JPanel del=new JPanel();del.setLayout(new GridLayout(2,2));//删除文本内

del.add(new Label("输入删除的学号:"));del.add(删除文本框);

del.add(new Label("点击删除:"));del.add(b_del);

JPanel show=new JPanel();show.setLayout(new BorderLayout());

show.add(pane,BorderLayout.CENTER);

show.add(b_show,BorderLayout.SOUTH);//显示添加的商品清单

JSplitPane split_one,split_two;

split_one=new JSplitPane(JSplitPane.VERTICAL_SPLIT,save,del);

split_two=new

JSplitPane(JSplitPane.HORIZONTAL_SPLIT,true,split_one,show);

con.add(split_two,BorderLayout.CENTER);

b_show.addActionListener(this);}

public void actionPerformed(ActionEvent e){

if(e.getSource()==b_add){String xuehao=null;

String xingming=null;String nianling=null;String banji=null;

banji=班级文本框.getText();

学生students=new学生(xuehao,xingming,nianling,banji);

students_list.add(students);

try{FileOutputStream file=new FileOutputStream("students.txt");

ObjectOutputStream out=new ObjectOutputStream(file);

out.writeObject(students_list);out.close();}

catch(IOException event){}}

else if(e.getSource()==b_del){

String xuehao=删除文本框.getText();

try{FileInputStream come_in=new FileInputStream("students.txt");

ObjectInputStream in=new ObjectInputStream(come_in);

students_list=(LinkedList)in.readObject();in.close();}

catch(ClassNotFoundException event){}

catch(IOException event){}

for(int i=0;i

学生te=(学生)iter.next();

ShowWin win=new ShowWin();

win.setSize(460,300);//设置尺寸大小

win.setVisible(true);//设置属性(trun显示,false隐藏)

win.addWindowListener(new WindowAdapter()//继承WindowAdapter,然后又覆盖

实训分析总结:

1、布局管理器,它有什么用?

JAVA是与平台无关的,就是应用程序的界面的大小,位置与硬件没关系,与平台无关就是说你不能通过setSize()这样的方法去设置窗体中组件的大小。由此问题产生了。

当一个窗体中有文本控件,又有标签,还有按钮,这时你怎么控制它们在窗体中的排列顺序和位置呢,JAVA定义了布局管理器来处理这个问题

2、说明文本区和文本框的主要不同点。

文本区:是用户输入、编辑、格式化、查看文本数据的区域。单击鼠标左键定位插入点。

文本框就是可以向其中输入文字的框,比如百度。

实训五扩展—Java和JSP编写要点练习

实训目的:

1、理解JSP运行环境要求。

2、掌握JSP建立与测试开发环境的方法

3、了解j2ee

实训内容:

1、链接到指定的email地址

在网站中,你经常会看到“联系我们”的链接,一点击这个链接,就会触发你的邮件客户端,比如Outlook Express,然后显示一个新建mail的窗口。用可以实现这样的功能。

联系我们

2、给定系统的自我学习

后台分析:

计算机图书信息后台维护系统分析

点击删除

点击修改

它的路径

路径

http://localhost:8080/aaa/book/index.jsp

http://localhost:8080/aaa/book/RequestAdd.jsp 实训分析总结:

1、JSP文件的建立过程?

第一步安装JDK

第二步安装Tomcat

第三步安装Eclipse

第四步安装MyEclipse

第五步破解MyEclipse

第六步指定Eclipse+MyEclipse的JRE和Tomcat服务器

第七步新建个项目来测试一下Eclipse+MyEclipse开发环境是否搭建成功

2、JSP的特点。

1.将内容的生成和显示进行分离

2.强调可重用的组件

3.采用标识简化页面开发

五、结论

在为期一个星期的实习中,让我收获不少,并且发现自己存在的不足。

通过这次实习我受益匪浅,知道JAVA的功能和使用方法以及编译技术,以前只知道玩手机中的小游戏,并不知道是用JAVA做出来的,现在实习也使自己掌握了JAVA技术,也通过实习使我了解到我更多的不足,在做题时没有一点点的思路,注意力不是很集中,在每项实训中不是很认真的听讲,在调试程序的时候,发现不了问题的根本原因,一个简单的程序少了那小小的一个标点都不行,发现了自己粗心大意的一面。在以后会多加努力的。

六、致谢

通过这次实习,我深感自己的不足,我对知识的渴望远远超过这些,我将努力学习知识,取长补短,为自己注入新鲜的血液。相信自己会在以后的实习工作中更加努力。

这次非常感谢老师在实习中对我们的指导,我们有什么不懂的问题都是老师悉心教导,不耐其烦的告知我们,和我们一起实习,在这里向老师说声,您辛苦了。也非常感谢同学在学习上给予我的帮助。感谢学校为我们安排的这次实习。

相关主题
相关文档
最新文档