JavaEE与中间件技术实验报告

合集下载

Java EE与中间件实验---Web 应用程序开发方法

Java EE与中间件实验---Web 应用程序开发方法

本科实验报告课程名称:J2EE与中间件实验项目:Web 应用程序开发方法实验地点:专业班级:学号:学生姓名:指导教师:一、实验目的和要求1.熟悉NetBeans开发环境;2. 学会建立JSP文件;3. 学会创建JavaBean;4. 掌握在JSP中调用JavaBean的方法;5.学会使用集成开发环境发布Web应用程序。

二、实验内容和原理该实验用来使同学了解使用 NetBeans IDE 来开发 Web 应用的基本方法。

同学将学习如何创建一个简单的 Web 应用,将其部署到服务器,并在浏览器中进行浏览。

这个应用使用JavaServer Pages™ (JSP)技术作为用户输入的界面处理,要求输入用户的姓名。

然后使用 JavaBeans™ 组件技术在 HTTP 会话期间持久化输入的姓名,最后在另一个 JSP 页面显示用户的输入。

本实验将涉及如下内容:∙安装开发环境及软件∙创建一个Web 应用工程∙创建与编辑Web 应用源文件o创建Java 包与Java 源文件o生成Getter 与Setter 方法o编辑默认的JSP 文件o创建一个JSP 文件∙构建并运行Web 应用三、主要仪器设备硬件:pc一台。

软件:∙NetBeans IDE 6.0,及其Web 与Java EE 支持∙Java SE Development Kit™四、操作方法与实验步骤创建一个Web 应用工程1.从主菜单选择File > New Project (Ctrl-Shift-N),并在工程分类中选择Web ,选择Web Application,然后单击Next。

2.第二步,在工程名输入框里输入工程名实验一web应用程序开发方法。

注意上下文(Context)路径(例如,服务路径) 变为了/exp1。

3.规定工程路径到计算机上的任何目录。

在本教程中,这个参考目录为$PROJECTHOME.4.选择一个想要部署该应用的服务器。

您在IDE 中注册过的服务器在此将被列出。

javaee实训报告总结

javaee实训报告总结

javaee实训报告总结本次JavaEE实训报告旨在总结我在实训期间所学到的知识和技能,以及实践中的所思所悟。

通过实际项目的开发和实践,我深刻地理解了JavaEE技术的核心概念和应用,提升了编程能力和项目管理能力。

以下是对本次实训的总结和回顾。

一、实训概述在本次实训中,我们团队共同开发了一个基于JavaEE的Web应用项目。

该项目的主要功能是实现在线购物平台,包括用户注册、商品浏览、购买结算等功能。

我们采用了敏捷开发的方法,通过多次迭代和反馈,逐步完善和优化项目。

二、所学知识和技能1. JavaEE技术栈:在实训中,我深入学习和应用了JavaEE技术栈的相关知识,包括Servlet、JSP、JDBC、Spring框架、MyBatis等。

我了解了它们之间的关系和使用方法,并成功地将它们应用到项目中。

2. 数据库设计与管理:我通过实战项目熟悉了数据库的设计和管理,包括建表、插入数据、查询等操作。

我掌握了SQL语句的编写和调优,并学会了使用关系型数据库管理系统(如MySQL)。

3. 前端开发:为了实现一个友好的用户界面,我学习了HTML、CSS和JavaScript等前端开发技术。

我可以自主设计和构建网页,实现用户交互和样式美化。

三、实训反思和收获1. 团队合作:在实训中,我们团队充分发挥各自的优势和专长,高效协作完成项目开发。

通过项目的合作开发,我深刻体会到团队合作的重要性,学会了与他人合作,共同解决问题。

2. 项目管理:在实训过程中,我们采用了敏捷开发的方法,通过迭代和反馈不断优化项目。

我学会了制定合理的计划和目标,并根据实际进展进行调整和优化。

在项目管理方面,我提升了自己的能力。

3. 自我学习能力:在实训中,我们面临许多问题和挑战,有些是之前未接触过的。

通过自主学习和寻找解决方案,我成功解决了一些难题。

我意识到在技术发展迅速的领域,自我学习能力是很重要的。

四、实训心得和展望通过本次实训,我对JavaEE技术栈有了更深入的理解和应用经验。

javaee实训报告总结

javaee实训报告总结

javaee实训报告总结JavaEE(Java Platform, Enterprise Edition)是用于开发企业级应用程序的一种Java平台。

通过JavaEE平台,开发人员可以轻松地创建大规模、复杂的Web应用程序,从而满足企业的需求。

在本次实训中,我有幸参与了一个JavaEE项目的开发,并在这个过程中收获了许多宝贵的经验和知识。

1. 项目背景本次实训的项目是一个在线图书销售平台。

该平台允许用户浏览、购买图书,并提供了个人信息管理、订单管理等功能。

我作为一名实习生,参与了平台的前后端开发工作。

与我一同合作的团队成员都是经验丰富的开发工程师,他们的指导和帮助对我的成长起到了很大的促进作用。

2. 技术选型在项目开始之前,我们首先进行了技术选型。

考虑到项目规模较大,我们决定采用JavaEE作为开发平台。

具体而言,我们选择了Spring MVC作为后端框架,用于处理请求和响应;Hibernate作为ORM框架,用于与数据库进行交互;同时,使用了Bootstrap来提供前端的样式和布局。

3. 项目规划在项目启动之初,我们进行了详细的项目规划和需求分析。

通过与项目经理和产品经理的沟通,我们明确了项目的功能和模块划分。

我们将整个项目分为用户模块、图书管理模块、订单模块等,每个模块又细分为多个子功能。

这样的模块划分有助于团队合作和任务分配,提高了开发效率。

4. 开发过程在项目开发的过程中,我们采用了敏捷开发的方法。

每个工作日开始时,我们都会进行简短的站立会议,讨论前一天的工作成果和今天的计划。

这有助于整个团队保持信息同步和高效协作。

我主要负责的是用户模块的开发。

首先,我使用Spring MVC搭建了整个模块的后端框架,并编写了相关的控制器和服务类。

我参考了Spring MVC的官方文档和一些开发教程,逐步掌握了如何处理请求、参数绑定、视图解析等技术。

随后,我开始编写前端页面。

我采用了Bootstrap作为前端框架,利用其提供的样式和组件,快速搭建了用户注册、登录、个人信息管理等页面。

JAVAEE实验报告7-石博洋

JAVAEE实验报告7-石博洋

《JavaEE与中间件技术专题实验》课程实验报告七班级:计算机1602 班学号: 3 姓名:石博洋实验内容:(1)使用hibernate配置文件创建学生信息表(学号、姓名、性别、出生日期、班级)、班级信息表(班级编号、班级名称、开班日期)。

(2)完成对班级和学生信息的增删改查。

(3) 使用hibernate完成两表的主外键关联。

(选做)(4) 将配置文件配置成单向多对一,完成对班级和学生信息的增删改查。

(选做)一、给出实现方案。

首先配置好hibernate,实现和数据库的连接,在java类中创建对数据库的各种操作,实现对数据库的增删查改,在数据库中建立数据库login实现和程序的连接,创建两个表,并建立两个表的主外键。

然后在程序中实现各种映射。

二、给出项目结构和核心代码。

:package class Student {private Integer id;private String studentid;private String name;private String sex;private String birthday;private String classname;public Integer getId() {return id;public void setId(Integer id) {= id;}public String getStudentid() {return studentid;}public void setStudentid(String studentid) { = studentid;}public String getName() {return name;}public void setName(String name) {= name;}public String getSex() {return sex;}public void setSex(String sex) {= sex;}public String getBirthday() {return birthday;}public void setBirthday(String birthday) { = birthday;public String getClassname() {return classname;}public void setClassname(String classname) {= classname;}public Student() {super();}public Student(String studentid, String name, String sex, String birthday, String classname) {super();= studentid;= name;= sex;= birthday;= classname;}}ClassInfo .java:package class ClassInfo {private Integer id;private String classid;private String classname;private String date;public Integer getId() {return id;}public void setId(Integer id) {= id;}public String getClassid() {return classid;}public void setClassid(String classid) {= classid;}public String getClassname() {return classname;}public void setClassname(String classname) {= classname;}public String getDate() {return date;}public void setDate(String date) {= date;}public ClassInfo(String classid, String classname, String date) { = classid;= classname;= date;}public ClassInfo() {super();}}version=""><!DOCTYPE hibernate-mapping PUBLIC "-onfigure();ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder() .applySettings()).build();sessionFactory = (serviceRegistry);session = ();"请依次输入学号姓名性别出生日期班级:");String studentid=();String name=();String sex=();String birthday=();String classname=();Student student = new Student(studentid,name,sex,birthday,classname);transaction = ();(student);();();();();}}package class StudentDeleteMain {public static void main(String[] args) {Scanner cin=new Scanner;SessionFactory sessionFactory = null;Session session = null;Transaction transaction = null;Configuration configuration = new Configuration().configure();ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder() .applySettings()).build();sessionFactory = (serviceRegistry);session = ();"请输入要删除的学生id:");int id =();Student student =(Student),id);transaction = ();(student);();();();();}}package class StudentSearchMain {public static void main(String[] args) {Scanner cin=new Scanner;SessionFactory sessionFactory = null;Session session = null;Transaction transaction = null;Configuration configuration = new Configuration().configure();ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder() .applySettings()).build();sessionFactory = (serviceRegistry);session = ();"请输入要查询的学生姓名:");String name=();String hql="FROM Student s WHERE = ";Query query=(hql);(0, name);List<Student>list=();for(Student s:list){}transaction = ();();();();();}}package class StudentUpdateMain {public static void main(String[] args) {Scanner cin=new Scanner;SessionFactory sessionFactory = null;Session session = null;Transaction transaction = null;Configuration configuration = new Configuration().configure();ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder() .applySettings()).build();sessionFactory = (serviceRegistry);session = ();"请输入要修改的学生姓名:");String name=();Student student =(Student),1);transaction = ();"请依次输入学号性别生日班级:");String studentid=();String sex=();String birthday=();String classname=();(studentid);(sex);(birthday);(classname);(student);();();();();}}package class ClassInfoDeleteMain {public static void main(String[] args) {Scanner cin=new Scanner;SessionFactory sessionFactory = null;Session session = null;Transaction transaction = null;Configuration configuration = new Configuration().configure();ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder() .applySettings()).build();sessionFactory = (serviceRegistry);session = ();"请输入要删除的班级id:");int id =();ClassInfo classinfo =(ClassInfo),id);transaction = ();(classinfo);();();();();}}package class ClassInfoInsertMain {public static void main(String[] args) {Scanner cin=new Scanner;SessionFactory sessionFactory = null;Session session = null;Transaction transaction = null;Configuration configuration = new Configuration().configure();ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder() .applySettings()).build();sessionFactory = (serviceRegistry);session = ();"请依次输入班级编号名称开班日期:");String classid=();String classname=();String date=();ClassInfo classinfo = new ClassInfo(classid,classname,date);transaction = ();(classinfo);();();();();}}package class ClassInfoSearchMain {public static void main(String[] args) {Scanner cin=new Scanner;SessionFactory sessionFactory = null;Session session = null;Transaction transaction = null;Configuration configuration = new Configuration().configure();ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder() .applySettings()).build();sessionFactory = (serviceRegistry);session = ();"请输入要查询的班级名称:");String classname=();String hql="FROM ClassInfo c WHERE = ";Query query=(hql);(0, classname);List<ClassInfo>list = ();for(ClassInfo c:list){}transaction = ();();();();();}}package class ClassInfoUpdateMain {public static void main(String[] args) {Scanner cin=new Scanner;SessionFactory sessionFactory = null;Session session = null;Transaction transaction = null;Configuration configuration = new Configuration().configure();ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder() .applySettings()).build();sessionFactory = (serviceRegistry);session = ();"请输入要修改的班级名称:");String name=();ClassInfo classinfo =(ClassInfo),1);transaction = ();"请依次输入班级编号班级名称开班日期:");String classid=();String classname=();String date=();(classid);;(classname);(date);(classinfo);();();();();}}三、实验过程中遇到的问题及解决办法。

javaee实训报告总结

javaee实训报告总结

javaee实训报告总结随着信息技术的飞速发展,JavaEE技术成为企业级应用开发的重要工具之一。

在这次实训中,我有幸学习和实践了JavaEE技术,了解了其在企业级应用开发中的应用和优势。

本文将对我在实训中的学习和收获进行总结。

一、实训背景与目的本次实训旨在通过实践的方式掌握JavaEE技术的相关知识和应用。

通过实际项目的开发,让学员加深对JavaEE技术的理解,培养实际项目开发的能力和经验。

二、实训内容1. 环境搭建首先,我们需要搭建JavaEE开发环境。

这包括安装JDK、Eclipse、Tomcat等软件,并进行相关配置。

搭建好环境后,我们就可以开始进行后续的实训项目开发了。

2. 项目需求分析在实训开始之前,我们需要对项目需求进行仔细分析。

这包括与客户的需求沟通、制定项目计划与进度安排等。

只有在充分理解项目需求的基础上,我们才能进行准确的开发工作。

3. 数据库设计在进行项目开发之前,我们需要设计数据库模型。

这包括数据库的表结构设计、关系建立以及索引的创建等。

良好的数据库设计是项目成功的关键之一。

4. 业务逻辑实现接下来,我们开始进行具体的项目开发工作。

这包括编写业务逻辑代码、实现数据持久化等。

在JavaEE开发中,我们可以使用诸如Spring、Hibernate等框架来提高开发效率。

5. 测试与调试在开发完成后,我们需要进行测试与调试工作。

这包括编写测试用例、进行单元测试、修复bug等。

只有确保系统的稳定性和可靠性,我们才能交付给客户。

6. 文档编写与报告撰写最后,在实训结束时,我们需要进行文档编写与报告撰写工作。

这包括撰写项目的技术文档、用户手册以及报告总结等。

这些文档将成为项目开发的重要参考资料。

三、实训收获通过这次实训,我对JavaEE技术的理解更加深入。

我学会了使用Eclipse进行项目开发,掌握了Spring和Hibernate框架的使用,提高了开发效率。

在与团队成员的合作中,我也学会了团队协作与沟通技巧。

javaee实训报告总结

javaee实训报告总结

javaee实训报告总结一、引言本篇报告旨在总结我在JavaEE实训过程中的学习和实践经验,分享我对JavaEE技术的理解和应用能力的提升。

通过实训项目的开发,我对JavaEE的各个方面有了更深入的了解,并在实践中积累了丰富的经验。

本报告将从项目背景、项目需求、技术难点以及实战经验等方面进行总结。

二、项目背景在实训项目中,我们主要负责开发一个企业级的人力资源管理系统,该系统旨在帮助企业高效管理人力资源、提升员工工作效率。

本次实训开发的系统包含员工信息管理、薪资管理、考勤管理、培训管理和招聘管理等模块,功能复杂且需求繁多,对我们的技术能力提出了很大的挑战。

三、项目需求1. 员工信息管理模块在该模块中,我们需要实现员工的增删改查功能,包括员工的基本信息、部门信息以及职位信息的管理和展示。

2. 薪资管理模块薪资管理模块需要实现对员工薪资的核算、发放和统计分析。

管理员可以根据员工职位、工作时长等因素进行工资的计算,并能够生成相应的工资报表。

3. 考勤管理模块该模块需要实现对员工考勤记录的管理和统计。

管理员可以查看员工的考勤情况,包括迟到、早退、缺勤等信息,并能够生成相应的考勤报表。

4. 培训管理模块培训管理模块需要实现对员工培训计划的制定和培训记录的管理。

管理员可以制定培训计划,并查看员工的培训情况,以便对员工进行培训评估和晋升。

5. 招聘管理模块该模块需要实现对招聘信息和招聘流程的管理。

管理员可以发布招聘需求,管理招聘流程,并筛选合适的候选人。

四、技术难点在实训过程中,我遇到了一些技术难点,主要包括以下几个方面:1. 数据库设计与优化在项目开发过程中,合理且高效的数据库设计对系统性能至关重要。

我通过学习数据库设计原理和优化技巧,对系统数据库进行了合理设计和调优,提高了系统的运行效率。

2. MVC框架的应用MVC(Model-View-Controller)是一种软件设计模式,能够有效地分离出数据逻辑、界面展示和用户交互,提高系统的可维护性和可扩展性。

JavaEE与中间件技术实验报告

福建师范大学协和学院本科实验报告课程名称:JavaEE与中间件技术系别:信息技术系专业:计算机科学技术班级:计科一班学号:************ ************124112012030 124112012050 学生姓名:魏少华郑云益林准俞伟杰2014年实验项目列表实验相关说明实验要求:1.明确实验课是课程的重要组成部分,与理论课有着同等地位,是培养自身的实验技能与创新能力的重要途径;2.在实验前,对实验的目的、要求和基本内容,实验的重点和难点,应进行预习与讨论,确定实施措施,并编写好程序;3.了解实验室的规章制度和安全用电常识、实验设备损坏赔偿制度等,加强安全意识,爱惜实验设备;4.实验课期间不得擅自离开实验室或从事与本实验无关的活动,按时按质完成实验作业,培养创造性思维,努力提高自身的实践能力。

实验须知:1.实验完成之后,学生须填写实验报告,并打印上交。

报告内容包括:实验目的、实验内容、实验步骤、需求分析、流程图、数据字典、核心算法思想、程序源代码(程序代码部分可以只交电子档)、实验中未解决的问题、屏幕出错提示代码、出错原因、解决方法及实验心得等内容。

2.学生除了上交实验报告打印稿外,还须提交实验报告和程序代码电子文件,并以本人姓名和学号命名实验报告文件和程序代码压缩文件,例如“张三·实验报告(12420050611).doc”,“张三·实验程序代码(12420050611).rar”。

注意:程序代码压缩文件,包含程序代码、数据库转储文件、使用说明等。

3.实验任务必须在课程结束前完成,并经过指导老师检查才能得分。

没能按时完成,及没按时提交打印稿和电子文件的同学,实验成绩为0分。

4.实验报告若有拷贝现象,程序代码大部分雷同的学生,实验成绩一律为0分。

5.电子档提交信箱:******************。

福建师范大学协和学院《JavaEE与中间件技术》课程实验报告《JavaEE与中间技术》大型综合实验一、实验目的充分利用JDBC数据库技术、JSP技术、Servlet技术、Java Bean技术、SSH框架技术以及其他相关协议与开发包,进行深层次的技术开发与应用。

javaee实训报告总结

JavaEE实训报告总结一、实习目的与岗位认识本次JavaEE实训旨在让我们通过实践操作,深入理解JavaEE的相关知识和技能,提高我们解决实际问题的能力。

在实习过程中,我对于JavaEE开发岗位有了更深入的理解。

JavaEE作为企业级应用的主要技术框架,对于提高企业的软件研发效率和质量具有重要意义。

同时,JavaEE开发工程师在软件开发行业中扮演着重要的角色,他们需要具备扎实的Java基础、熟悉各种JavaEE框架,并能够根据业务需求进行高效的应用开发。

二、实习过程与问题解决在实习过程中,我主要参与了几个项目的开发和维护工作。

其中,最具挑战性的项目是一个基于Spring Boot和MyBatis的后台管理系统。

在这个项目中,我遇到了很多问题,如如何优化数据库查询性能、如何处理复杂的业务逻辑等。

通过查阅相关资料和请教同事,我逐渐找到了问题的解决方案。

例如,为了优化数据库查询性能,我学习了分页查询和索引优化的相关知识,并在项目中进行了实践。

同时,在处理复杂的业务逻辑时,我学会了将业务逻辑进行模块化处理,提高了代码的可读性和可维护性。

三、实习总结与不足建议通过本次JavaEE实训,我不仅提高了自己的技术水平,也收获了很多宝贵的经验。

首先,我认识到实践是检验真理的唯一标准,只有通过不断的实践,才能真正掌握和理解JavaEE的相关知识和技能。

其次,我明白了团队合作的重要性,只有和团队成员密切合作,才能高效地完成项目。

最后,我也发现了自己的不足之处,如对某些技术细节了解不够深入、沟通协调能力有待提高等。

针对这些不足,我建议自己要多加学习、勤于思考和实践,同时加强与同事的交流和合作。

四、对实习过程中的体会和收获在实习过程中,我深刻体会到了JavaEE开发的重要性和挑战性。

通过实际的项目开发,我不仅提高了自己的技术水平,也锻炼了自己的逻辑思维和解决问题的能力。

同时,我也认识到了团队合作的重要性,只有和团队成员共同协作,才能高效地完成项目。

javaee实训报告总结

javaee实训报告总结本次实训项目为JavaEE开发实训,旨在通过实践加深对JavaEE技术的理解与掌握。

在实训中,我们团队通过分阶段的任务和合理的组织,成功完成了一个基于JavaEE的Web应用的开发。

本文将对实训过程中的经验以及问题进行总结和反思,以期对今后的学习与工作有所借鉴。

一、需求分析在实训开始前,我们首先进行了需求分析。

通过与项目负责人的交流,我们明确了所开发应用的功能和要求。

然后,我们基于这些需求,制定了详细的开发计划和设计方案。

这个阶段主要目的是帮助我们对项目有一个整体的了解,并为后续的开发工作提供指导。

二、技术选型在需求分析之后,我们进行了技术选型。

根据项目的要求,我们决定使用JavaEE作为开发框架。

其优点在于强大的企业级开发能力以及丰富的开发组件。

另外,我们选择了MySQL作为数据库,并采用Spring MVC框架进行模型-视图-控制器的设计。

这些技术的选用是基于我们对项目需求的充分理解和对技术的全面考虑。

三、开发过程在实际的开发过程中,我们严格按照项目计划进行组织和协作。

首先,我们搭建了项目的基础环境,配置了所需的开发工具和开发环境。

然后,我们根据需求进行了详细的需求分析和数据库设计。

接下来,我们按照模块进行开发,每个人负责一个或多个模块的实现,通过持续的代码提交和团队内部交流,确保代码的质量和整体的进度。

四、问题与解决在开发过程中,我们也遇到了一些问题。

其中主要包括技术难题和人员调配问题。

对于技术难题,我们通过查阅资料、向老师请教以及内部团队讨论的方式解决了。

对于人员调配问题,我们通过灵活的分工和协作,最大程度地发挥每个人的优势。

五、项目总结经过几周的努力,我们成功地完成了JavaEE实训项目的开发。

通过这次实训,我们对JavaEE的技术有了更深入的理解,并学会了如何合作开发一个完整的Web应用。

同时,我们也认识到了团队合作的重要性,以及项目管理与组织的必要性。

这些经验对于我们今后的学习和工作都将起到巨大的帮助作用。

JavaEE实验报告八

实验报告八课程中间件与J2EE 实验名称Strut2初步体验一、实验目的熟练掌握Strut2的基本配置方法;二、实验环境1、微型计算机一台2、WINDOWS操作系统,Myeclipse6.0,MySQL三、实验内容在mysql数据库中新建数据库MySchool,在该数据库中建立表T_book(bookID,bookName,bookPrice), bookID设置为主键并自增,字段类型分别为:int,varchar(50),float,都不可为空。

手工插入一些记录便于测试验证。

1)、开发图书信息模糊查询界面,输入图书名称的模糊信息,能够显示查询图书的ID、名称和价格。

要求使用Strut2完成;2)、在上题中,图书信息后面增加一个“删除图书”链接,单击,可以将图书信息从数据库中删除。

删除后跳转到模糊查询界面。

要求使用Struts2完成。

四、实验步骤和结果表数据:工程结构:两题代码:index.jsp主要代码:<body>输入书籍名称:<form action="/struts2test/book.action" method="post"><input type="text" name="bookname"><br/><input type="submit" name="search" value="模糊查询"></form></body>bookshow.jsp主要代码:<body>书籍信息如下:<br/><table border="1"><tr><td>编号</td><td>名称</td><td>价格</td><td>操作</td></tr> <%=session.getAttribute("bookname") %></table></body>Book,java主要代码:public class Book {private int bookid;private String bookname;private float bookprice;public int getBookid() {return bookid;}public void setBookid(int bookid) {this.bookid = bookid;}public String getBookname() {return bookname;}public void setBookname(String bookname) {this.bookname = bookname;}public float getBookprice() {return bookprice;}public void setBookprice(float bookprice) {this.bookprice = bookprice;}}GetAllIBook.java主要代码:public class GetAllBook {final String htmlPattern="<tr><td>{0}</td> <td>{1}</td><td>{2}</td>" +"<td><a href=\"struts2test/book.action?choose={3}\">删除图书</a></td></tr>";public String getAllBookinfo(String name) {String result=htmlPattern;List<Book> books=null;try{Class.forName("com.mysql.jdbc.Driver");Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/myschool", "root", "123");Statement stat = conn.createStatement();String sql = "select * from T_book where bookName like '%"+name+"%';";ResultSet rs = stat.executeQuery(sql);books=new ArrayList<Book>();while (rs.next()) {Book bookinfo=new Book();bookinfo.setBookid(rs.getInt("bookID"));bookinfo.setBookname(rs.getString("bookName"));bookinfo.setBookprice( rs.getFloat("bookPrice"));books.add(bookinfo);}rs.close();stat.close();conn.close();}catch( Exception e){e.printStackTrace();}if(books!=null){StringBuilder sb=new StringBuilder();for(Book bl: books){sb.append(MessageFormat.format(htmlPattern,bl.getBookid(),bl.g etBookname(),bl.getBookprice(),bl.getBookid()));}result=sb.toString();}else{//没有查询的书籍信息,返回没有记录result="<tr colspan='3'><td>没有记录!</td></tr>";}return result;}/** 删除书籍信息*/public void deleteBookinfo(String id) {try{Class.forName("com.mysql.jdbc.Driver");Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/myschool", "root", "123");Statement stat = conn.createStatement();String sql = "delete from T_book where bookID="+id;stat.executeUpdate(sql);stat.close();conn.close();System.out.print("删除成功!!");}catch( Exception e){e.printStackTrace();}}}struts.xml主要代码:<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN""/dtds/struts-2.3.dtd"><struts><package name="default" extends="struts-default"><action name="book" class="prj12.SearchAction"><result name="show">/bookshow.jsp</result><result name="search">/index.jsp</result></action></package></struts>web.xml主要代码:<?xml version="1.0" encoding="UTF-8"?><web-app version="2.5"xmlns="/xml/ns/javaee"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/xml/ns/javaee/xml/ns/javaee/web-app_2_5.xsd"><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list><filter><filter-name>Struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFi lter</filter-class></filter><filter-mapping><filter-name>Struts2</filter-name><url-pattern>/*</url-pattern></filter-mapping></web-app>第一题运行结果:(1)(2)第二题运行结果:查询书籍信息:点击删除图书,跳转:再查询书籍信息:五、实验总结。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

福建师范大学协和学院本科实验报告课程名称:JavaEE与中间件技术系别:信息技术系专业:计算机科学技术班级:计科一班学号:************ ************124112012030 124112012050 学生姓名:魏少华郑云益林准俞伟杰2014年实验项目列表实验相关说明实验要求:1.明确实验课是课程的重要组成部分,与理论课有着同等地位,是培养自身的实验技能与创新能力的重要途径;2.在实验前,对实验的目的、要求和基本内容,实验的重点和难点,应进行预习与讨论,确定实施措施,并编写好程序;3.了解实验室的规章制度和安全用电常识、实验设备损坏赔偿制度等,加强安全意识,爱惜实验设备;4.实验课期间不得擅自离开实验室或从事与本实验无关的活动,按时按质完成实验作业,培养创造性思维,努力提高自身的实践能力。

实验须知:1.实验完成之后,学生须填写实验报告,并打印上交。

报告内容包括:实验目的、实验内容、实验步骤、需求分析、流程图、数据字典、核心算法思想、程序源代码(程序代码部分可以只交电子档)、实验中未解决的问题、屏幕出错提示代码、出错原因、解决方法及实验心得等内容。

2.学生除了上交实验报告打印稿外,还须提交实验报告和程序代码电子文件,并以本人姓名和学号命名实验报告文件和程序代码压缩文件,例如“张三·实验报告(12420050611).doc”,“张三·实验程序代码(12420050611).rar”。

注意:程序代码压缩文件,包含程序代码、数据库转储文件、使用说明等。

3.实验任务必须在课程结束前完成,并经过指导老师检查才能得分。

没能按时完成,及没按时提交打印稿和电子文件的同学,实验成绩为0分。

4.实验报告若有拷贝现象,程序代码大部分雷同的学生,实验成绩一律为0分。

5.电子档提交信箱:******************。

福建师范大学协和学院《JavaEE与中间件技术》课程实验报告《JavaEE与中间技术》大型综合实验一、实验目的充分利用JDBC数据库技术、JSP技术、Servlet技术、Java Bean技术、SSH框架技术以及其他相关协议与开发包,进行深层次的技术开发与应用。

使学生掌握JavaEE的编程思想和SSH框架技术的综合运用。

并掌握业务需求分析的基本方法和完整系统的设计流程。

通过基于B/S结构的JavaEE项目开发,进而培养学生分析能力与解决实际问题的能力。

二、实验环境1、操作系统Windows XP2、JA V A开发包JSDK1.63、代码编辑器Jcreart3.24、数据库管理系统MySQL5.05、数据库可视化管理平台CapVideo8.06、Web服务器TomCat5.0、WebLogic10.07、JA V A开发工具MyEclipse7.08、微机三、实验选题综合项目名称:_____工资信息管理系统_________采用到的技术:JDBC数据库技术JSP技术Servlet技术Java Bean技术SSH框架技术四、进度安排与分工情况:五、系统功能描述在本系统中需要对用户身份进行管理,包括员工身份和系统管理员身份2种,在登陆界面用户需要输入用户名及密码,选择权限,验证成功后,才能进入系统。

员工身份可以对自己的工资信息进行查询,系统管理员身份具有查看所有的工资信息,添加新的员工工资信息,修改工资信息,删除工资信息,根据员工考勤状况,来对员工工资进行增加或者减少。

其具体功能实现如下:1、系统管理用户操作1)系统管理员可以对自己的个人信息进行查看,修改,和修改个人密码等操作2)管理工资信息:系统管理员添加员工工资信息,可对其查看、修改和删除。

3)管理考勤信息:系统管理员添加员工考勤信息,可对其查看、修改和删除。

2、员工用户操作1)员工用户可以对自己的个人信息进行查看,修改,和修改个人密码等操作2)员工用户可以查看自己的具体工资信息。

3)员工用户可以查看自己的具体考勤信息。

六、具体实现过程(核心功能算法设计或主要功能的实现代码)查询:public void search(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {Employee employee = new Employee();employee.setEid(request.getParameter("eid"));IEmployeeDAO employeeDAO = new EmployeeDAO();PageUtil pageUtil = new PageUtil(request);pageUtil.setPageSize(6); // 设置分页大小int pageSize = pageUtil.getPageSize();int rsCount = employeeDAO.getRsCount(employee);// 获得记录总数pageUtil.setRsCount(rsCount);int pageCount = pageUtil.getPageCount();// 计算页数int currentPage = pageUtil.getCurrentPage();// 获得当前页String pageTool = pageUtil.createPageTool(PageUtil.BbsText);// 创建分页工具条request.setAttribute("pageTool", pageTool);ArrayList<Employee> list = employeeDAO.search(employee,pageSize,currentPage);request.setAttribute("employeelist", list);request.getRequestDispatcher("/employeewage.jsp").forward(request,response);}插入:public void insert(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {Employee employee = new Employee();employee.setEid(request.getParameter("eid"));employee.setEname(request.getParameter("ename"));employee.setEworkyear(request.getParameter("eworkyear"));employee.setEgraduateschool(request.getParameter("egraduateschool"));employee.setEnative(request.getParameter("enative"));employee.setWmaritalstatus(request.getParameter("wmaritalstatus"));employee.setEtime(request.getParameter("etime"));IEmployeeDAO employeeDAO = new EmployeeDAO();if (employeeDAO.insert(employee)) {request.setAttribute("message", "账户添加成功!");request.getRequestDispatcher("/register.jsp").forward(request,response);} else {request.setAttribute("message", "操作失败!");request.getRequestDispatcher("/register.jsp").forward(request,response);}}更新:public void update(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {Employee employee = new Employee();String eid=request.getParameter("eid");IEmployeeDAO employeeDAO = new EmployeeDAO();employee.setEid(request.getParameter("eid"));employee.setEworkyear(request.getParameter("eworkyear"));employee.setEname(request.getParameter("ename"));employee.setEnative(request.getParameter("enative"));employee.setEgraduateschool(request.getParameter("egraduateschool"));employee.setWmaritalstatus(request.getParameter("wmaritalstatus"));employee.setEtime(request.getParameter("etime"));if (employeeDAO.update(employee)) {request.setAttribute("message", "修改成功!");search(request,response);} else {request.setAttribute("employee", employeeDAO.getById(eid));request.setAttribute("message", "操作失败!");request.getRequestDispatcher("/edit.jsp").forward(request,response);}}删除:public void deleteH(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {Employee employee = new Employee();employee.setEid(request.getParameter("eid"));employee.setEname(request.getParameter("ename"));IEmployeeDAO employeeDAO = new EmployeeDAO();if (employeeDAO.delete(employee)) {request.setAttribute("message", "删除成功!");search(request,response);} else {request.setAttribute("employee", employeeDAO.getById("eid"));request.setAttribute("message", "操作失败!");request.getRequestDispatcher("/delete.jsp").forward(request,response);}}七、UML视图(主要为用例图、类图、时序图、系统框架图等)用例图:类图:系统框架图:八、数据字典(ER关系图与数据库表)E-R关系图:员工信息表:属性名意义数据类型取值范围主键其他约束备注Eno 工号字符串0001-9999 是Ename 姓名字符串否Enative籍贯字符串否Etime入职时间字符串否婚姻状况判断否是/否是否已婚EMaritalstatus毕业院校字符串否Egraduate school工作年限时间否Eworkyeas员工基本工资表:属性名意义数据类型取值范围主键其他约束备注wage 工资字符串0001-9999 是Eno 在职人员字符串否工号工资等级字符串否wageslevel考勤情况表:属性名意义数据类型取值范围主键其他约束备注Eno 工号字符串否九、系统测试结果(主要功能界面效果截图)登入界面截图:个人主界面:增加员工信息界面:信息查询界面:信息修改界面:注销界面:十、实验结论与系统评价(主要是已完成的情况,系统仍存在哪些问题与不足,以及拟采用什么技术解决等。

相关文档
最新文档