文档库 最新最全的文档下载
当前位置:文档库 › java期末大作业

java期末大作业

java期末大作业
java期末大作业

Java课程设计报告

班级: 1班姓名:李鹏飞学号:20097720119 1、组成员是:

李鹏飞

2、数据库功能的实现:

采用的数据库是:Access数据库;其中一共有 1 库, 2 张表。

表格举例:

3、系统功能是:

本程序共实现了两个功能:数据的查询(学生信息按学号查询)和数据的录入(学生信息录入)。

程序名称:Jdbc

数据库名称:student

数据源名称:lpf

建立表名称:message(学号、姓名、生日);fenshu(学号、英语)

其中:

子类 myframe:建立主页面样式(包括:窗体名称、菜单项目(学生管理-学生查询、学生录入;系统-退出系统)、窗体内容);

子类 xscx:查询学生信息(学号、姓名、生日);设计xscx窗口样式;sql语句的录入;

子类xstj:添加学生信息(学号、姓名、生日);设计xstj窗口样式;sql语句的录入。

子类Database:建立数据库连接;执行sql语句,返回结果集;

4、代码以及运行截图:

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

import java.sql.*;

import java.util.*;

import java.text.SimpleDateFormat;

public class Jdbc

{

public static void main(String args[])

{

myframe mf=new myframe();

}

}

class myframe extends JFrame implements ActionListener

{

MenuBar mb;

Menu m1,m2;

Label lb1=new Label("学籍管理系统",Label.CENTER);

Label lb2=new Label("20097720119 计算机辅助设计1班李鹏飞",Label.CENTER); MenuItem mi1,mi2,mi3,mi4;

myframe()

{

setTitle("学籍管理系统--制作:20097720119 计算机辅助设计李鹏飞"); mb=new MenuBar();

m1=new Menu("学生管理");

m2=new Menu("系统");

mb.add(m1);

mb.add(m2);

mi1=new MenuItem("学生查询");

mi2=new MenuItem("学生录入");

mi3=new MenuItem("退出系统");

m1.add(mi1);

m1.add(mi2);

m2.add(mi3);

Container con=this.getContentPane();

con.add(lb1);

con.add(lb2);

con.setLayout(new GridLayout(4,1,1,1));

lb1.setFont(new Font("黑体",Font.BOLD,60));

lb2.setFont(new Font("黑体",Font.BOLD,30));

mi1.addActionListener(this);

mi2.addActionListener(this);

mi3.addActionListener(this);

this.setMenuBar(mb);

setBounds(300,300,660,300);

setVisible(true);

}

public void actionPerformed(ActionEvent e)

{

if(e.getSource()==mi1)

{

xscx xs=new xscx();

xs.setBounds(400,350,300,300);

xs.setVisible(true);

}

else if(e.getSource()==mi2)

{

xstj xs=new xstj();

xs.setBounds(430,350,300,300);

xs.setVisible(true);

}

else if(e.getSource()==mi3)

{

dispose();

System.exit(0);

}

}

}

//学生信息查询

class xscx extends JFrame implements ActionListener {

JLabel lb1;

JTextField tf1;

JButton bt1,bt2;

xscx()

{

setTitle("学生信息查询");

lb1=new JLabel("请输入学生的学号:");

tf1=new JTextField(7);

bt1=new JButton("查询");

bt2=new JButton("取消");

Container con=this.getContentPane();

con.setLayout(null);

lb1.setFont(new Font("宋体",Font.BOLD,12));

tf1.setFont(new Font("宋体",Font.BOLD,12));

bt1.setFont(new Font("宋体",Font.BOLD,12));

bt2.setFont(new Font("宋体",Font.BOLD,12));

lb1.setBounds(80,80,120,30);

tf1.setBounds(200,80,80,30);

bt1.setBounds(80,130,100,30);

bt2.setBounds(180,130,100,30);

con.add(lb1);con.add(tf1);

con.add(bt1);con.add(bt2);

bt1.addActionListener(this);

bt2.addActionListener(this);

this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

}

public void actionPerformed(ActionEvent e)

{

Database DB=new Database();

Database DB1=new Database();

int tem;

String temp[]=new String[6];

StringBuffer mess=new StringBuffer();

if(e.getSource()==bt1)

{

try

{

DB.OpenConn();

DB.rs=DB.executeQuery("select * from message where 学号='"+tf1.getText()+"'");

DB1.OpenConn();

while(DB.rs.next())

{

String sql1="select * from fenshu where 学号='"+tf1.getText()+"'";

tem=DB.rs.getInt(1);

temp[0]=DB.rs.getString(2);

temp[1]=DB.rs.getString(3);

mess.append("查找到"+tf1.getText()+"学生信息"+"\n"+"学号:"+tem+"\n"+"姓名:"+temp[0]+"\n"+"生日:"+temp[1]+"\n");

DB1.rs=DB1.executeQuery(sql1);

while(DB1.rs.next())

{

mess.append(""+DB1.rs.getString(1)+"的英语成绩"+DB1.rs.getInt(2)+"\n");

}

}

if(mess.length()==0)

JOptionPane.showMessageDialog(this,"未找到信息","",https://www.wendangku.net/doc/da2023670.html,RMATION_MESSAGE);

else

JOptionPane.showMessageDialog(this,mess,"",https://www.wendangku.net/doc/da2023670.html,RMATION_MESSAGE);

tf1.setText(null);

}

catch(Exception ex)

{

System.out.println(ex);

JOptionPane.showMessageDialog(this,"未找到信息","",https://www.wendangku.net/doc/da2023670.html,RMATION_MESSAGE);

}

finally

{

DB.closeStmt();

DB.closeConn();

DB1.closeStmt();

DB1.closeConn();

}

}

if(e.getSource()==bt2)

setVisible(false);

}

}

//学生信息添加

class xstj extends JFrame implements ActionListener

{

JLabel lb1,lb2,lb3;

JTextField tf1,tf2,tf3;

JButton bt1,bt2;

xstj()

{

setTitle("学生信息添加");

this.getContentPane().setLayout(null);

lb1=new JLabel("学号");

tf1=new JTextField(10);

lb2=new JLabel("姓名");

tf2=new JTextField(10);

lb3=new JLabel("生日");

tf3=new JTextField(10);

bt1=new JButton("插入");

bt2=new JButton("取消");

lb1.setBounds(0,40,100,30);tf1.setBounds(100,40,100,30); lb2.setBounds(0,70,100,30);tf2.setBounds(100,70,100,30); lb3.setBounds(0,100,100,30);tf3.setBounds(100,100,100,30); bt1.setBounds(30,220,80,30);bt2.setBounds(120,220,80,30);

Container con=this.getContentPane();

con.add(lb1);con.add(tf1);

con.add(lb2);con.add(tf2);

con.add(lb3);con.add(tf3);

con.add(bt1);con.add(bt2);

bt1.addActionListener(this);

bt2.addActionListener(this);

this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

}

public void actionPerformed(ActionEvent e)

{

Database DB=new Database();

if(e.getSource()==bt1)

{

try

{

if(tf1.getText().length()!=0 &&

tf2.getText().length()!=0 && tf3.getText().length()!=0)

{

String s=new String();

String sql="insert into message values("+Integer.parseInt(tf1.getText())+

",'"+tf2.getText()+"','"+tf3.getText()+"')";

DB.OpenConn();

DB.executeUpdate(sql);

JOptionPane.showMessageDialog(this,"学生信息添加成功!!","",https://www.wendangku.net/doc/da2023670.html,RMATION_MESSAGE);

tf1.setText(null);tf2.setText(null);tf3.setText(null);

}

else

JOptionPane.showMessageDialog(this,"","",https://www.wendangku.net/doc/da2023670.html,RMATION_MESSAGE);

}

catch(Exception ex)

{

System.out.println(e);

JOptionPane.showMessageDialog(this,"","",https://www.wendangku.net/doc/da2023670.html,RMATION_MESSAGE);

}

finally

{

DB.closeStmt();

DB.closeConn();

}

}

if(e.getSource()==bt2)

setVisible(false);

}

}

class Database {

private Statement stmt=null;

ResultSet rs=null;

private Connection conn=null;

String sql;

String lpf="jdbc:odbc:student";

public Database(){

}

public void OpenConn()throws Exception{

try{

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

conn=DriverManager.getConnection("jdbc:odbc:lpf","",""); }

catch(SQLException e){

System.err.println("OpenConn:"+e.getMessage());

}

}

public ResultSet executeQuery(String sql){

stmt = null;

rs=null;

try{

stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ ONLY);

rs=stmt.executeQuery(sql);

}

catch(SQLException e){

System.err.println("executeQuery:"+e.getMessage());

}

return rs;

}

public void executeUpdate(String sql){

stmt=null;

rs=null;

try{

stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ ONLY);

stmt.executeQuery(sql);

https://www.wendangku.net/doc/da2023670.html,mit();

}

catch(SQLException e){

System.err.println("executeUpdate:"+e.getMessage());

}

}

public void closeStmt(){

try{

stmt.close();

}

catch(SQLException e){

System.err.println("closeStmt:"+e.getMessage());

}

}

public void closeConn(){

try{

conn.close();

}

catch(SQLException ex){

System.err.println("aq.closeConn:"+ex.getMessage()); }

}

}

截图

程序运行

运行结果1

点击【学生管理】,运行结果

点击【学生查询】,运行结果

输入【2009001】,点击【查询】,运行结果

输入【2009004】,点击【查询】,运行结果

点击【学生录入】,添加信息,运行结果

单击【插入】,运行结果

再次查询学生信息,输入【2009004】,点击【查询】,运行结果

查询结果中出现【学号:2009004 姓名:李鹏飞生日:1989-09-04】,插入成功

点击【系统】,运行结果

点击【退出系统】,结果如下

Java语言程序设计期末大作业

《Java语言程序设计》公选课期末大作业 学号:姓名:分数: 一、程序分析题 1、写出下列语句的打印结果: a. System.out.println(2+”bc”); b. System.out.println(2+3+”bc”); c. System.out.println((2+3)+”bc”); c. System.out.println(“bc”+2+3); 2、执行以下代码,m和n的值是多少? int n=123456789; int m=0; while(n!=0) { m=(10*m)+(n%10); n=n/10; } m= n= 3、以下代码将什么值存储在数组a[]中? int N=10; int [] a =new int[N]; a[0]=1; a[1]=1; for(int i=2;i

java期末考试试题及答案

1.谈谈final, finally, finalize的区别。 final关键字: a) 如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。 b) 将变量或方法声明为final,可以保证它们在使用中不被改变。 c) 被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。 d) 被声明为final的方法也同样只能使用,不能重载。 finally关键字:在异常处理时提供finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的catch 子句就会执行,然后控制就会进入finally 块。 finalize:方法名,不是关键字。Java技术允许使用finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在Object 类中定义的,因此所有的类都继承了它。子类覆盖finalize() 方法以整理系统资源或者执行其他清理工作。finalize()方法是在垃圾收集器删除对象之前对这个对象调用的。 2.GC是什么? 为什么要有GC? GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一: System.gc() Runtime.getRuntime().gc() 3.Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 写程序Math.round(11.5) = 12 Math.round(-11.5) = -11 4.给我一个你最常见到的runtime exception ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException

java考试试卷及答案

JAVA考试试卷及答案 选择题 3、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方法来完成一些画 图操作。 A. start() B. stop() C. init() D. paint() 3、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?B A)安全性B)多线程C)跨平台D)可移植 4、下列哪个类声明是正确的?D A)abstract final class HI{···}B)abstract private move(){···} C)protected private number; D)public abstract class Car{···} 6、在Java语言中,下列哪些语句关于内存回收的说明是正确的? B A.程序员必须创建一个线程来释放内存; B.内存回收程序负责释放无用内存 C.内存回收程序允许程序员直接释放内存 D.内存回收程序可以在指定的时间释放内存对象 10、下列Object类中的方法,哪一项不是完全跟线程有关:A A.String toString() B.void notify() C.void notifyAll() D.void wait() 11、给出下面代码:C public class Person{ static int arr[] = new int[10]; public static void main(String a[]) { System.out.println(arr[1]); } } 下列说法中正确的是? A.编译时将产生错误; B.编译时正确,运行时将产生错误; C.输出零; D.输出空。 12、字符串是Java已定义的类型,关于它的构造函数,下面说法不正确的是:B A.String(char[] value, int offset, int count) B.String(int[] codePoints,int offset, int count) C.String(String original) D.String(StringBuffer buffer) 13、下列说法中正确的是:C A.导入包会影响程序的性能

JAVA学生管理系统期末大作业

JA V A学生管理系统大作业 课程名称:JA V A编程基础 题目:学生信息管理系统 专业:计算机软件 班级:计算机软件121班 学号:8000612030 学生姓名:李俊楠 完成人数:1人 起讫日期:第十六周至第十八周 任课教师:龚根华职称:副教授 部分管主任: 完成时间:2015-1-2

目录 ------------------------------2 课题设计内容------------------------------3 程序功能简介 需求分析--------------------------------------------------3 总体设计---------------------------------------------------3 模块详细设计---------------------------------------------------4 数据库设计 ------------------------------5 主体内容 ------------------------------6 心得体会 -----------------------------11 参考书籍 -----------------------------12

一:课题设计内容 学生管理系统 学生信息管理系统是学校管理的重要工具,是学校不可或缺的部分。随着在校大学生人数的不断增加,教务系统的数量也不断的上涨。学校工作繁杂、资料众多,人工管理信息的难度也越来越大,显然是不能满足实际的需要,效率也是很低的。并且这种传统的方式存在着很多的弊端,如:保密性差、查询不便、效率低,很难维护和更新等。然而,本系统针对以上缺点能够极大地提高学生信息管理的效率,也是科学化、正规化的管理,与世界接轨的重要条件。所以如何自动高效地管理信息是这些年来许多人所研究的。 二:程序功能简介 2.1 需求分析 本系统需要实现的功能: (1)、管理员对学生信息和课程信息进行增加、删除、修改、查找等操作,对选课信息进行管理,对成绩信息和用户信息进行修改、查找等操作。 (2)、学生对学生信息和成绩信息进行查看,对个人的密码信息进行修改等。 2.2 总体设计 学生信息管理系统主要包括管理员和学生两大模块。管理员模块包括:学生信息管理、课程信息管理、选课信息管理、成绩信息管理、用户信息管理等。用户模块包括:学生信息查看、成绩信息查看、个人信息管理等。系统总体结构如图所示。 总体结构图 2.3 模块详细设计 1、学生信息管理模块 学生信息管理模块包括增加、删除、修改、查询、显示全部等。具体的结构图如图所

JavaWeb期末大作业

西安欧亚学院2015—2016学年第二学期考试成绩评定表专业:软件工程课程:Web开发技术(Java)年级:14级

《Web开发技术(Java)》 大作业 姓名: 题目:Web开发技术大作业 专业:软件工程 班级: 日期:

目录 1.JSP开发概述 (1) 1.1.JSP M ODEL1 (1) 1.2.JSP M ODEL2 (1) 1.3.MVC设计模式 (2) 2.JSP MODEL1案例 (4) 2.1功能描述 (4) 2.2C ACULATOR类分析 (4) 2.3JSP页面代码分析 (4) 2.4功能实现 (4) 2.5测试用例设计 (6) 3.JSP MODEL2案例 (7) 3.1功能描述 (7) 3.2MVC架构分析 (7) 3.3M ODEL层类分析 (8) 3.4控制类分析 (8) 3.5V IEW层界面分析 (8) 3.6功能实现 (8) 3.7测试用例设计 (10)

1.JSP开发概述 1.1.JSP Model1 JSP Model 1采用了JSP+JavaBean的技术,将页面显示和业务逻辑分开。其中,JSP实现流程控制和页面显示,JavaBean对象封装数据和业务逻辑。接下来通过一张图来描述JSP Model 1的工作原理,如图1-1所示。 图1-1 JSP Model 1模型的工作原理图 从图1-1中可以看出,JSP Model 1模型将封装数据以及处理数据的业务逻辑的任务交给了JavaBean组件,JSP只负责接受用户请求和调用JavaBean的组件来响应用户的请求,这种设计实现了数据,业务逻辑和页面显示的分离,在一定程度上实现了程序开发的模块化,降低了程序修改和维护的难度。 1.2.JSP Model2 JSP Model 2架构模型采用JSP+Servlet+JavaBean的技术,此技术将原本JSP 页面中的流程控制代码提取出来,封装到Servlet中,从而实现了整个程序页面显示、流程控制和业务逻辑的分离。实际上JSP Model 2模型就是MVC设计模式,其中控制器的角色是由Servlet实现,视图的角色是由JSP页面实现,模型的角色是由JavaBean实现。接下来通过一张图来描述Model 2的工作原理,如图1-2所示。 从图1-2中可以看出,Servlet充当了控制器的角色,它接受用户请求,并实例化JavaBean对象封装数据和对业务逻辑进行处理,然后将调用JSP 页面显示JavaBean中的数据信息。

Java期末考试试卷1

信息学院2006—2007学年第二学期期末考试试题A 课程名称:Java 语言程序设计主讲:年级: 班级姓名学号 题号一二三四五合计 分数 一、选择(每题1分,共20分) 1.有一个名为MyClass的public类,想成功编译需满足以下哪个条件?() A. MyClass类中必须定义一个正确的main()方法。 B. MyClass必须定义在MyClass.java源文件中。 C. MyClass类必须定义在MyClass包中。 D. MyClass类必须被导入。 2.以下哪些修饰符不能用于顶层类?( ) A. public B. private C. abstract D. final 3.以下哪个是java中合法的关键字?( ) A. array B. Boolean C. protect D. super 4.以下哪些是合法的标识符?( ) A.%abcd B. 2abcd C. package D. _a_long_name 5.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同。这种面向对象程序的特性称为. () A、隐藏 B、覆盖 C、重载 D、Java不支持此特性 6.有以下代码,请问该程序的运行结果是什么?( ) class Example { public static void main(String args[]){ boolean b=true; System.out.println(b); } } A. 打印输出true B. 打印输出1 C.编译错误 D. 无内容输出 7.以下哪些是基本数据类型?( ) A.int B. String C. Integer D. Float 8. 给出以下代码,请选择正确的选项?( ) class Example{ public static void main(String[] args){ char a=”\u1234”; } } A. 代码编译成功 B. 代码编译成功,但有警告 C. 代码编译失败 9.以下哪个语句用于声明一个二维数组?( ) A. int[5][5] a=new int[][]; B. int a=new int[5,5] C. int[][] a=new int[5][5]; D. int[][] a=new [5]int[5]; 10.给出以下代码,请问该程序的运行结果是什么?()

JAVA期末试题及答案

Java 程序设计》课程试卷 1.使用 Java 语言编写的源程序保存时的文件扩展名是( )。 (A ) .class ( B ) .java C ) .cpp ( D ) .txt 2.设 int a=-2 ,则表达式 a>>>3 的值为( )。 (A ) 0 (B )3 (C ) 8 (D )-1 3.设有数组的定义 int[] a = new int[3] ,则下面对数组元素的引用错误的是( ) ( A )a[0]; ( B ) a[a.length-1]; (C )a[3]; (D )int i=1 ; a[i]; 4.在类的定义中可以有两个同名函数,这种现象称为函数( )。 (A )封装 (B )继承 (C )覆盖 (D )重载 5.在类的定义中构造函数的作用是( )。 (A )保护成员变量 (B )读取类的成员变量 (C )描述类的特征 (D )初始化成员变量 6.下面关键字中,哪一个不是用于异常处理语句( )。 ( A ) try ( B ) break ( C ) catch ( D ) finally 7.类与对象的关系是( )。 (A )类是对象的抽象 (B )对象是类的抽象 15. Java 语言使用的字符码集是 (A) ASCII (B) BCD (C) DCB 16. 如果一个类的成员变量 (A) public (B) (C 对象是类的子类 (D )类是对象的具体实例 )。 8.下面哪一个是 Java 中不合法的标识符( ( A )$persons ( B ) twoNum ( C )_myVar ( D )*point 9.为 AB 类的一个无形式参数无返回值的方法 ( ) 。 ( A ) static void method( ) ( B ) public void method( ) ( C ) final void method( ) ( D ) abstract void method( ) 10.欲构造 ArrayList 类的一个实例,此类继承了 ( A ) ArrayList myList=new Object( ) ( B ) List myList=new ArrayList( ) ( C ) ArrayList myList=new List( ) ( D ) List myList=new List( ) 11. Java 源文件和编译后的文件扩展名分别为( (A) .class 和 .java (C).class 和 .class 12. 在 Java Applet 程序用户自定义的 (A) start( ) (B) stop( ) (C) init( ) 13. 对于一个 Java 源文件, (A) package,import,class (C) import,package,class 14. 下面哪个是非法的: (A) int I = 32; (C) double d = 45.0; method 书写方法头,使得使用类名 List 接口,下列哪个方法是正确的( ) ( B).java 和 .class (D) .java 和 .java Applet 子类中,一般需要重载父类的 (D) paint( ) import, class (B) class,import,package (D) package,class,import ( ) 定义以及 package 正确的顺序是: (B) float f = 45.0; (D) char c = // 符号错 AB 作为前缀就可以调用它,该方法头的形式为 方法来完成一些画图操作。 (D) Unicode 只能 在所在类中使用 则该成员变量必须使用的修饰是

JAVA期末大作业

JAVA期末大作业 1.圆柱体: import java.util.*; public class cylinder { public static void main(String[] args) { double radius,height; final double PI=3.14; double area,volume; Scanner s=new Scanner(System.in); radius=s.nextDouble(); height=s.nextDouble(); area=2*PI*radius*radius+2*PI*radius*height; volume=PI*radius*radius*height; System.out.println("area="+area); System.out.println("volume="+volume); } } 结果: 2.heap: import java.util.*; public class heap { public static boolean isYearHeap(int x){ if(x%4==0||x%400==0){ return true; }else{ return false;

} } public static void main(String args[]){ int i; Scanner s=new Scanner(System.in); i=s.nextInt(); if(isYearHeap(i)){ System.out.println("Heap"); }else{ System.out.println("Not a heap year"); } } } 结果: 3.符号: import java.util.*; public class test { public static void main(String[] args) { int a=60;/*60=0011 1100*/ int b=13;/*13=0000 1101*/ int c=0; c=a&b;/*12=0000 1100*/ System.out.println("a&b="+c); c=a|b; System.out.println("a|b="+c); c=a^b; System.out.println("a^b="+c); c=~a; System.out.println("~a="+c); c=a<<2;

JSP程序设计期末大作业

JSP程序设计期末大作业 1.网站的运行环境 在这次大作业中,我使用的软件是NetBeans IDE 8.0和MySQl,(额外使用了名为Navicat for MySQL的辅助性软件,主要是更方便的测试表的内容) 2.设计思路 这次的网页包括三个三个主页面。 存放登录代码的Pnl1.jsp, 存放主静态页面的pnl3.jsp存放留言信息的,liuyanban.jsp。 以及,存放身份验证的Pnl2.jsp,显示此次留言的liuyan.jsp,修改留言的update.jsp,删除留言的delete.jsp。 3.网站功能模块 4.核心技术 4.1jsp JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它[1]是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP 文件,后缀名为(*.jsp)。用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。 它实现了Html语法中的java扩展(以<%, %>形式)。JSP与Servlet一样,是在服务器端执行的。通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。

JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。 Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet 和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 4.2HTML 超级文本标记语言是标准通用标记语言下的一个应用,也是一种规范,一种标准, 它通过标记符号来标记要显示的网页中的各个部分。网页文件本身是一种文本文件,通过在文本文件中添加标记符,可以告诉浏览器如何显示其中的内容(如:文字如何处理,画面如何安排,图片如何显示等)。浏览器按顺序阅读网页文件,然后根据标记符解释和显示其标记的内容,对书写出错的标记将不指出其错误,且不停止其解释执行过程,编制者只能通过显示效果来分析出错原因和出错部位。但需要注意的是,对于不同的浏览器,对同一标记符可能会有不完全相同的解释,因而可能会有不同的显示效果. 4.3CSS 随着HTML的成长,为了满足页面设计者的要求,HTML添加了很多显示功能。但是随着这些功能的增加,HTML变的越来越杂乱,而且HTML页面也越来越臃肿。于是CSS便诞生了。 层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。 CSS 能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力。 4.4MySQL ySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属 于Oracle旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在WEB 应用方面,MySQL是最好的RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。 MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 MySQL所使用的SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL 作为网站数据库。

JAVA语言程序设计期末考试试题及答案

J A V A语言程序设计期末考试试题及答案 TTA standardization office【TTA 5AB- TTAK 08- TTA 2C】

J A V A语言程序设计考试试题及部分答案 一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。 1.下列语句序列执行后,k 的值是( B )。 int m=3, n=6, k=0; while( (m++) < ( -- n) ) ++k; A) 0 B) 1 C) 2 D) 3 2.设 i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( B )。 A) i = i + 2 B) a[0] = 7; C) i++ - --j; D) a(0) = 66; 3.Java语言的类间的继承关系是( B )。 A) 多重的 B) 单重的 C) 线程的 D) 不能继承 4.设有定义 int i = 6 ;,则执行以下语句后,i 的值为( C )。 i += i - 1; A) 10 B) 121 C) 11 D) 100 5.下列选项中,用于在定义子类时声明父类名的关键字是( C )。 A)interface B) package C) extends D) class 6.若已定义 byte[ ] x= {11,22,33,-66} ; 其中0≤k≤3,则对x数组元素错误的引用是( C )。 A) x[5-3] B) x[k] C) x[k+5] D) x[0]

7.下列语句序列执行后,ch1 的值是( B )。 char ch1='A',ch2='W'; if(ch1 + 2 < ch2 ) ++ch1; A) 'A' B) 'B' C) 'C' D) B 8.下列语句序列执行后,i 的值是( D )。 int i=8, j=16; if( i-1 > j ) i--; else j--; A) 15 B) 16 C) 7 D) 8 9.下列语句序列执行后,k 的值是( C )。 int i=10, j=18, k=30; switch( j - i ) { case 8 : k++; case 9 : k+=2; case 10: k+=3; default : k/=j; } A) 31 B) 32 C) 2 D) 33 10.下面语句执行后,i 的值是( B )。 for( int i=0, j=1; j < 5; j+=3 ) i=i+j; A) 4 B) 5 C) 6 D) 7 11.设有定义 float x=, y=, z=;则以下的表达式中,值为true的是( B )。 A) x > y || x > z B) x != y

JAVA语言程序设计期末考试试题及答案

《JA V A语言程序设计》期末考试试题及答案1(应考必备题库) 一、单选择题 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。 A. java B. .class C. html D. .exe 2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( A )。 A. 3 B. 3. 5 C. 4 D. 5 3、不允许作为类及类成员的访问控制符的是( C )。 A. public B. private C. static D. protected 4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。 2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用2字节内存空间,这样,无论是中文字符还是英文字符,都是占 用2字节内存空间。 3、设x = 2 ,则表达式( x + + )/3 的值是0 。 4、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为true和false。 5、抽象(abstract) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法是不能被当前类的子类重新定义的方法。 6、创建一个名为MyPackage 的包的语句是package MyPackage ; , 该语句应该放在程序的位置为:应该在程序第一句。 7、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是120。

java大作业编一个程序打印出公司月各员工工资

姓名:王镱澍 Java大作业 一、题目 白浪公司的雇员根据参数月份来确定工资,如果该月员工过生日,则公司会额外奖励100元。 雇员分为以下若干类: SalariedEmployee:拿固定工资的员工。 HourlyEmployee:按小时拿工资的员工。 SalesEmployee:销售人员,工资由月销售额和提成率决定。 BasePlusSalesEmployee:有固定底薪的销售人员,工资由底薪加上销售提成。 公司会给SalaryEmployee每月另外发放2000元加班费,给 BasePlusSalesEmployee发放1000元加班费。编一个java程序创建上述若干类,并实现确定月份以及该月不同员工的工作情况后打印出该公司该月各员工工资,公司总的工资支出情况。 二、程序功能说明 编一个java程序创建上述若干类,并实现确定该月不同员工的工作情况以及输入月份后打印出该公司该月各员工工资,公司总的工资支出情况。 三、类、属性、方法说明 程序中已给出详细解释在此只作简要说明: Employee:这是所有员工总的父类。 属性:员工的姓名和生日月份。 方法:getSalary(int month) 根据参数月份来确定工资,如果该月员工过生日,则公司会额外奖励100元。 SalariedEmployee:Employee的子类,拿固定工资的员工。 属性:月薪。 方法:每月工作超出160小时的部分按照倍工资发放。 HourlyEmployee:Employee的子类,按小时拿工资的员工。 属性:每小时的工资、每月工作的小时数。 SalesEmployee:Employee的子类,销售人员。 属性:月销售额、提成率。 方法:工资由月销售额和提成率决定。 BasePlusSalesEmployee:SalesEmployee的子类,有固定底薪的销售人员。 属性:底薪。 方法:工资由底薪加上销售提成部分。 四、程序代码 import .*; class MyException extends Exception {

《JAVA语言程序设计》期末考试试题及答案

《JA V A语言程序设计》期末考试试题及答案 (应考必备题库) 一、单选择题 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。 A. java B. .class C. html D. .exe 2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( )。 A. 3 B. 3. 5 C. 4 D. 5 3、不允许作为类及类成员的访问控制符的是( )。 A. public B. private C. static D. protected 4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。 2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用2字节内存空间,这样,无论是中文字符还是英文字符,都是占 用2字节内存空间。 3、设x = 2 ,则表达式( x + + )/3 的值是0 。 4、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为true和false。 5、抽象(abstract) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法是不能被当前类的子类重新定义的方法。 6、创建一个名为MyPackage 的包的语句是package MyPackage ; , 该语句应该放在程序的位置为:应该在程序第一句。 7、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是120。

java期末考试复习题及答案

《Java程序设计》课程试卷 1.使用Java语言编写的源程序保存时的文件扩展名是( B )。 (A).class (B).java (C).cpp (D).txt 2.设int a=-2,则表达式a>>>3的值为( C )。 (A)0 (B)3 (C)8 (D)-1 3.设有数组的定义int[] a = new int[3],则下面对数组元素的引用错误的是( C )。 (A)a[0]; (B)a[a.length-1]; (C)a[3]; (D)int i=1; a[i]; 4.在类的定义中可以有两个同名函数,这种现象称为函数( D )。 (A)封装(B)继承(C)覆盖(D)重载 5.在类的定义中构造函数的作用是( D )。 (A)保护成员变量(B)读取类的成员变量(C)描述类的特征(D)初始化成员变量 6.下面关键字中,哪一个不是用于异常处理语句( B )。 (A)try (B)break (C)catch (D)finally 7.类与对象的关系是( A )。 (A)类是对象的抽象(B)对象是类的抽象(C)对象是类的子类(D)类是对象的具体实例 8.下面哪一个是Java中不合法的标识符( D )。 (A)$persons (B)twoNum (C)_myVar (D)*point 9.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。 (A)static void method( ) (B)public void method( ) (C)final void method( ) (D)abstract void method( ) 10.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的( C )。 (A)ArrayList myList=new Object( ) (B)List myList=new ArrayList( ) (C)ArrayList myList=new List( ) (D)List myList=new List( ) 11.Java源文件和编译后的文件扩展名分别为( B ) (A) .class和 .java (B).java和 .class (C).class和 .class (D) .java和 .java

JAVA课程大作业文档模板

皖西学院 JA V A课程期末大作业 ( 2016 -- 2017 年度第二学期) 课程名称:JA V A程序设计 题目:备忘录系统 院系:电信学院 班级:电子1402班 组名:风尘三侠 组员(姓名+学号): 陈松龄(2014013860) 陈志康(2014013863) 贾林松(2014013870)授课教师:范祥林 日期:2017 年6 月18 日

备忘录系统 摘要: 本作业利用JAVA进行开发,实现个人备忘录管理系统是能够运行在普通个人电脑上,为使用者提供日常信息管理功能的工具软件,使用者可以通过个人备忘录管理系统对日常工作/生活琐事进行更有效的管理,主要是为使用者提供对个人信息更方便的记录和查询功能,为使用者在个人信息管理上带来更多的便利。具有日常记事:记录日常生活或者工作事件,以免遗忘,并提供记录的查询,添加和删除等管理功能。 一、目的与要求 1.需求描述:基于MySql实现备忘录系统功能。 2.通过实践训练,进一步掌握JAVA开发方法,测试方法,提高软件开发 和设计的能力。 3.进一步加强和提高工程文档的编写能力; 二、需求分析 本次系统采用结构化的设计方法进行设计,是设计成一个相对封闭的单机运行系统,作为大众化的应用软件,其用户界面是决定软件质量的首要条件。所以,界面设计是开发与设计的重点。充分贯彻简单易用、美观大方的基本原则,采用快速开发平台netbeans进行开发,并结合access数据库完成数据的导入。 NetBeans 平台是一种可重复使用的框架用于简化其他桌面应用程式的开发。当基于NetBeans 平台的应用被执行,平台主要类别的main方法便会被执行。可用的模组会被放置在存储器中,并且开始执行任务。通常模组会只在被需

java期末考试试题(含答案)

模拟B卷 考试说明: 1.使用Eclipse编写程序。项目名称为:班级_姓名_学号_卷号。注意:卷号为A或B 2.在项目文件夹下新建一个文本文件,文件名为:答案.txt 3.将编程题外的所有题目写在文本文件中,答案要标明题号。 注意:考试期间遇到死机等问题,需要请示老师,切勿自行解决。否则后果自负。 一、单项选择题:共20题,每小题1分,满分20分 1、下列选项中,不属于Java语言特点的一项是。( D ) A、安全性 B、分布式 C、面向对象 D、编译执行 2、Java语言和c++语言相比,哪一项是Java有的,而c++没有?( C ) A、面向对象 B、有类库 C、跨平台 D、动态链接 3、如下哪个不是Java中有效的变量名。( A ) A、 if B、hello C、name D、good 4、下列不属于Java保留字的一个是( B )。 A、else B、Unicode C、if D、static 5、现有2个char,类型的变量al=’a’、a2=2,当执行al=(char)(al+a2);语句之后,al的值应 该是( C )。 A、’a’ B、12 C、’c’ D、语句在编译时出错 6、下列关于int类型和long类型的说法中,正确的一个是( A )。 A、int类型可以自动转换为long类型 B、long类型可以自动转换为int类型 C、long类型占的存储空间比int类型的小 D、long类型和int类型数据能表示整数的范围一样 7、下列类的定义中,错误的是( B )。 A、class y{ .... } B、public x extends y{ .... } C、public class x extends y{ .... } D、class x extends y implements y1{ .... } 8、执行语句int i = 1, j = ++i; 后i与j的值分别为( D )。 A、1与1 B、2与1 C、1与2 D、2与2 9、为了区分重载多态中同名的不同方法,要求( C )。 A、调用时用类名或对象名做前缀 B、返回值类型不同 C、形式参数个数或者类型不同 D、形式参数名称不同 10、定义类头时能使用的修饰符是( C )。 A、private B、static C、protected D、abstract 11、如果在编译Java程序时,编译结果报告说找不到要编译的代码,错误是( D )

JAVA大作业

import java.util.Scanner; /*四则运算*/ class arithmetic{ privatedouble n1; privatedouble n2; publicdouble getN1() { return n1; } publicvoid setN1(double n1) { this.n1 = n1; } publicdouble getN2() { return n2; } publicvoid setN2(double n2) { this.n2 = n2; } double subtration(double n1,double n2){ return n1-n2; } double addition(double n1,double n2){ return n1+n2; } double multiplication(double n1,double n2){ return n1*n2; } double division(double n1,double n2){ return n1/n2; } public arithmetic(double n1,double n2){ this.getN1(); this.getN2(); } } /*计算三角函数值*/ class TriFun{ privatedouble x;

publicdouble getX() { return x; } publicvoid setX(double x) { this.x = x; } publicvoid sin(){ System.out.println("正弦值为"+Math.sin(x)); } publicvoid cos(){ System.out.println("余弦值为"+Math.cos(x)); } publicvoid tan(){ System.out.println("正切值为"+Math.tan(x)); } publicvoid asin(){ if(x>=-1&&x<=1) System.out.println("反正弦值为"+Math.asin(x)); else System.out.println("没有反正弦值!"); } publicvoid acos(){ if(x>=-1&&x<=1) System.out.println("反余弦值为"+Math.asin(x)); else System.out.println("没有反余弦值!"); } publicvoid atan(){ if(x!=0) System.out.println("反正切值为"+Math.atan(x)); else System.out.println("反正切值为PI/2="+Math.PI/2); } public TriFun(double x){ this.x=x; }

相关文档