javaee实验二
java EE 实验报告(桂电)

Java EE实验报告院系:计算机科学与工程学院专业:计算机科学与技术2014年6月20号一Java EE 开发环境一、实验目的1、掌握常用的Java EE 集成开发环境的使用。
2、通过在Java EE 开发环境中创建和运行一些实例项目,熟悉Java EE 的基本开发、部署和运行的过程。
为后续实验打下基础。
二、实验内容1、打开实验室计算机上的NetBeans 开发工具,将至少一个源自教材或实验指导书上的实例项目导入到开发环境中编译、部署和运行。
2、创建一个简单的“WEB 项目”,在其中创建至少一个自己的JSP 页面文件,该页面文件的功能是,通过在页面文件中嵌入Java 代码,并通过代码显示自己的学号和姓名,将其作为项目首页,进行部署、运行和演示。
三、实验步骤因NetBeans 针对Java EE 开发的版本在集成相关服务器方面比较齐全,容易安装部署,并且理论课教材上的实例项目也以NetBeans 作为平台,所以实验环境选用NetBeans 平台。
打开实验室计算机上的NetBeans6.8,选择菜单的“文件”——>“新建项目…”——>“Java Web”——>“Web 应用程序”,然后给项目取一个名字,一路默认下去(同时注意观察NetBeans 每一步做出了什么设置),最后一步选择“完成”。
会发现在NetBeans 左边的“项目”窗口中生成了所创建的项目。
展开项目下面的“Web 页”,系统已默认生成一个名为index.jsp 的页面文件。
双击index.jsp 将其打开,观察其内容。
然后右键单击项目名,单击“生成”项以生成项目。
观察NetBeans 在生成项目的过程中产生的提示信息。
项目若无问题,会提示“成功生成”。
在“生成”成功之后,右键单击项目名,选择“运行”项来运行项目,在运行之前,NetBeans 会部署项目并提示一些部署信息,注意观察了解。
在成功运行之后,NetBeans 会自动开启一个浏览器页面,页面会显示一个“Hello World!”的提示。
JavaEE上机实验报告2_201611

院系:计算机科学学院
专业:软件工程
年级: 14 课程名称: JavaEE程序设计
组号:十九
姓名(学号):柳真 201421092073
吴超 201421092077
刘仁杰 201421092068
张浩东 201421092082
陈初相 201421092119 指导教师:徐胜舟
2016年 12 月05 日
图3.用户登录首页
图4.用户注册界面注册成功后提示界面如下图五所示:
图5.注册成功后界面
图6.用户登录首页
图7.重新打开登陆首页页面
(5)查询商品和购买商品:此处功能主要是操作MongoDB数据库,返回商品的具体信息,只要弄懂用户登录功能后,此处的功能代码就会很快弄明白,此处展示一下具体界面。
用户登录成功后,查看商品的界面如下图八所示:
图8.产看商品和购物页面
图9.购物车未购买商品页面
用户查看购物车,删除已有商品和添加已购买商品的数量,结果如下图十所示:
图10.购物车已购买商品页面。
JavaEE实验(参考) 2

本科实验报告课程名称:Java EE编程技术实验项目:语法基础代码风格实验实验地点:逸夫楼404专业班级:软件1028 学号:2010005249 学生姓名:赵才轩指导教师:高保禄2013 年 4 月26 日一.实验目的熟悉Java、JSP、Servlet、Html等相关语法,培养良好的代码风格,为其他实验做好准备。
二.实验内容熟悉NetBeans开发环境,通过编写一个Jsp调用Servlet的程序,熟悉Java、JSP、Servlet、Html等相关语法,培养良好的代码风格。
可以任选以下任一题目:A.网站计数器;B.简易购物车;C.编写一个自定义标记,将Servlet返回的英文字符串转换为大写。
三、实验要求:参照课本,快速熟悉相关内容,按所需题目编写程序,熟悉Java等编程语言或技术的基本编程技巧,注重良好的代码风格(如变量命名、代码注释、Servlet 与类中代码的结构等),初步掌握编写Web应用程序的能力。
2)设法在用户主目录中以home_mycal的文件名来调用mydir/mycal文件。
四、实验环境:软件环境:Windows 7/XP/2000/2003/2008,NetBeans5.5.1/6.5/7.3;硬件环境:P4 2.4G/80G/1G/64M及较高配置的PC机。
五、实验步骤和实验结果:(A、B、C三个实验都有)A.网站计数器:(1)思维方法:首先,网页浏览次数每个用户都可以查看,所以用Servlet 上下文去保存数据;再者:网站计数器要确保在网页重新部署时或服务器重新启动时记得数不会从1开始,所以,我选择用文件把Servlet上下文的数据进行保存;最后,如果在用户访问一次就要读写文件的话,这样效率会很低,所以我利用Servlet的生命周期,把文件的读放在init()方法中,把文件的写放在destory()方法中,这样就完成了对浏览网页的计数。
(2)实现方法:(由于代码较多,所以选择重要的代码写入报告中)Init()方法:(实现了读文件,如果不存在文件则创建一个,并写入初值)public void init() throws ServletException {String counter=null;File FCounter=new File("j:\\counter.txt");if(!FCounter.exists())try {FCounter.createNewFile();FileWriter fw=new FileWriter("j:\\counter.txt");BufferedWriter bw=new BufferedWriter(fw);bw.write("0");bw.close();} catch (IOException ex) {Logger.getLogger(ZCXWebCount.class.getName()).log(Level.SEVERE, null, ex);}try {FileReader fr=new FileReader("j:\\counter.txt");BufferedReader br=new BufferedReader(fr);try {counter=br.readLine();br.close();} catch (IOException ex) {Logger.getLogger(ZCXWebCount.class.getName()).log(Level.SEVERE, null, ex);}} catch (FileNotFoundException ex) {Logger.getLogger(ZCXWebCount.class.getName()).log(Level.SEVERE, null, ex);}this.getServletContext().setAttribute("counter", counter);}●Destory()方法:(实现了跟新文件内容的功能)public void destroy() {String counter=null;try {FileWriter fw=new FileWriter("j:\\counter.txt");BufferedWriter bw=new BufferedWriter(fw);counter=(String) this.getServletContext().getAttribute("counter");bw.write(counter);bw.close();} catch (IOException ex) {Logger.getLogger(ZCXWebCount.class.getName()).log(Level.SEVERE, null, ex);}}●processRequest()方法:(实现了用户浏览后加一的功能,以及显示给用户)protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html;charset=UTF-8");PrintWriter out = response.getWriter();String counter=null;counter=(String) this.getServletContext().getAttribute("counter");int count=Integer.parseInt(counter);count++;counter=String.valueOf(count);this.getServletContext().setAttribute("counter", counter);try {out.println("<html>");out.println("<head>");out.println("<title>网站计数器</title>");out.println("</head>");out.println("<body>");out.println("<center><h1>赵才轩网页计数器</h1>");out.println("<h1>访问次数:" +this.getServletContext().getAttribute("counter") + "</h1>");out.println("</center></body>");out.println("</html>");} finally {out.close();}}(3)简易截图:B.简易购物车(1)思维方法:首先,在这个简易的购物车中我不设计数据库,只是从简单的思路中说明问题,所以我的商品数据在jsp页面中体现,并且各个商品的默认属性都是一致的,只是数据不同,这些属性用表单的形式发送处理;再者,我用对象ArrayList去收集购物车中的数据,并用会话session中的setAttribute()方法去保存用户的购物车,再用getAttribute()方法把购物车中的数据显示给用户,最后,在显示出购物车的数据后可以再放回商品页面继续购物。
《JavaEE轻量级框架技术》实验指导书

软件工程系《Java EE 轻量级框架技术》实验指导书专业班级:软件 11-1、 2指导教师:朱亚玲实验一 MVC设计(一)一、实验目的1.进一步理解 MVC 的模型结构;2.掌握 JSP、JavaBean和 Servlet 的逻辑关系并熟练掌握;3.掌握基于 MVC 模式的 Web 程序的编译、部署和运行方法。
二、实验环境PC 机一台: JDK6.0+Tomcat6.0+Eclipse3.2+MyEclipse 插件+MySQL5.1+Navicator8 三、实验内容结合课本实例,在 webapps目录下新建一个 Web 服务目录: ShanghuSys,该项目基于 MVC 模式,实现简易商户信息的管理,实现的功能包括:列表显示商户信息,如下图所示。
完成下面的实验:1.利用向导创建 Web 项目。
2.利用向导创建 Servlet。
3.利用向导创建相关的 JavaBean,完成与 Servlet 的调试。
4.利用向导创建 JSP,完成视图功能。
四、实验步骤五、实验总结六、书写实验报告要求:①写出实验步骤②写出源程序关键代码,记录结果③如果有编译错误,在实验报告中一一列举④写出实验总结:包括实验做得效果、容易出错的问题、对知识点掌握的情况。
附实验报告书写格式:实验一MVC 设计(一)一、实验目的 3. 模型设计(写出相关的Bean ):二、实验环境 4. 视图设计:三、实验内容 5. 控制器设计(写出 Servlet 的关键代码):在 webapps 目录下新建一个Web 服务目录: 6.Web 项目结构:ShanghuSys ,该项目基于 MVC 模式,实现简易7.项目部署和运行:商户信息的管理,实现的功能包括:列表显示商户(1)部署后的项目结构图:信息。
(2)部署后的访问路径:四、实验步骤(3)抓取运行后的效果图。
1.数据库逻辑结构设计(给出表结构):五、实验总结2.建立 web 项目 ShanghuSys:实验二 MVC设计(二)一、实验目的1.进一步理解 MVC 的模型结构;2.掌握 JSP、JavaBean和 Servlet 的逻辑关系并熟练掌握;3.掌握基于 MVC 模式的 Web 程序的编译、部署和运行方法。
实验二Java类编程实验

实验⼆Java类编程实验实验⼆Java类编程实验实验⽬的1.掌握Java类的基本定义和使⽤⽅法2.熟悉Java语⾔的基本语法和运⾏原理3.掌握Java的基本数据类型、表达式和程序控制结构4.熟悉Eclipse开发环境的基本使⽤⽅法实验内容1. 对象的创建和使⽤使⽤集成开发环境编写⼀个圆环类Ring的Java程序。
圆环类有3个数据成员,分别是内半径innerRadius,外半径outerRadius 和颜⾊color,这些属性通过get和set⽅法进⾏封装。
另外,圆环类中的getArea⽅法可以返回其⾯积。
把程序中的代码补充完整,并查看结果。
public class Ring {private double innerRadius;private double outerRadius;private String color;public Ring(double iRadius, double oRadius, String c) { //初始化数据成员}//⽤get和set⽅法封装数据成员public double getArea() {}public static void main(String[] args) {Ring ring = new Ring(5,8,"red");System.out.println("圆环的内半径: " +ring.getInnerRadius( ));System.out.println("圆环的外半径: " + ring.getOuterRadius( ));System.out.println("圆环的颜⾊: " + ring.color);System.out.println("圆环的⾯积: " + ring.getArea() + "\n");ring.setInnerRadius(4);//设置圆环ring的外半径为6ring.setColor("blue");System.out.println("圆环的内半径: " + ring.getInnerRadius( ));System.out.println("圆环的外半径: " + ring.getOuterRadius( ));System.out.println("圆环的颜⾊: " + ring.color);System.out.println("圆环的⾯积: " + ring.getArea());}}思考:1)将程序中的语句Ring ring = new Ring(5,8,"red"); 改成Ring ring = newRing();修改后编译运⾏,此时有错误发⽣吗?分析错误的原因。
JavaEE实验题目

实验一:数组、类与对象实验1.利用一维数组实现Fibonacci数组前50项;2.将平面坐标系上的点定义为一个类Point,该类有一个求坐标系上两点间的距离的方法。
设计测试类TestPoint,对Point类进行测试,输出已创建对象间的距离。
3.对Point类进行完善:Point类提供求得坐标系上两点间的距离的功能、获取和设置坐标的功能、获取极坐标的功能,和完成对已创建的Point类对象统计功能。
4.设计并实现一个Course类,它代表学校中的一门课程。
课程一般包括如下属性:课程代号、课程名称、课程类别、学时、学分等。
定义类Course,包括上述属性,并在类中定义各个属性相关的访问方法,最后使用主函数测试这个类。
实验二:类的继承、Java异常与Java包1.以一所高校中各类人员为研究对象,例如可以定义教师类,包括以下属性:姓名、性别、出生日期、工资号、所在系所、职称等基本信息,同时定义相关的方法。
教师类又可以包含研究系列、实验系列、图书管理系列、行政系列等子类,这些子类可以从父类中继承属性和方法,也可以再定义其他的属性和方法。
根据上述内容,请定义一所高校中包含的各类人员的类(要求至少定义5个类),为每个类指明应有的属性,按实际情况组织类的层次。
对每个类的每个属性,要定义必要的访问方法。
分析提示:根据题意,可以定义一个教师类,它包括3个子类系列的教师,分别是:研究系列、实验系列、图书管理系列和行政系列。
所有教师都有一些共同的属性,各个子系列的教师又具有区别于其他系列的特殊属性。
因此我们定义一个基类Teacher,它包括的通用属性有:姓名、性别、出生日期、工资号、所在系所、名称等;基类下派4个子类,分别是:研究系列教师ResearchTeacher、实验系列老师LabTeacher、图书管理系列教师LibTeacher和行政系列教师AdminTeacher。
这些子类除继承父类的属性和方法外,还具有各自独特的属性和方法。
javaEE实验报告2---SQLHelper工具类的编写

}
ps.executeUpdate();
}catch(Exceptione) {
e.printStackTrace();
//向调用者抛出异常
thrownewRuntimeException();
}finally{
close(rs,ps,ct);
}
}
//一个通用的查询语句
publicstaticResultSetexecuteQuery(Stringsql,String[]parameters){
}catch(Exceptione) {
//TODO:handleexception
}
returnrs;
//此处无法及时关闭资源,谁调用,谁负责关闭资源。
}
publicstaticvoidclose(ResultSetrs,Statementps,Connectionct){
//关闭资源
if(rs!=null){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}finally{
ps=null;
}
}
if(ct!=null){
try{
ct.close();
}catch(SQLExceptione) {
//TODOAuto-generatedcatchblock
Class.forName(driver);
//
}catch(Exceptione) {
//TODO:handleexception
e.printStackTrace();
}finally{
try{
fis.close();
}catch(IOExceptione) {
java实验报告Y.Daninel.Liang实验二

2014-2015学年第一学期实验报告课程名称:Java EE 平台技术实验名称:JA VA编程(基础练习)目录一、实验目的 (4)二、实验内容 (4)2.1 编写一个各位随机数计算器。
(4)2.2 输出收入50000-60000之间的人的交税表。
(4)2.3 计算两个数的最小公倍数。
(4)2.4 创建类并测试 (4)2.4.1 创建矩形类并测试。
(4)2.4.2 创建时间类并测试。
(4)三、实验环境 (4)四、实验结果 (4)4.1随机数计算器 (4)4.2交税表 (4)4.3最小公倍数 (4)4.4. 创建类 (5)4.4.1 创建矩形类 (5)4.4.2 创建时间类 (5)五、附录 (5)5.1 问题分析 (5)5.1.1 随机数计算器 (5)5.1.2 交税表 (5)5.1.3 最小公倍数 (5)5.1.4 创建类 (5)5.1.4.1 矩形类 (5)5.1.4.2 时间类 (5)5.2 设计方案 (5)5.2.1 随机数计算器 (5)5.2.2 交税表 (5)5.2.3 最小公倍数 (5)5.2.4 创建类 (5)5.2.4.1 矩形类 (6)5.2.4.2 时间类 (6)5.3 算法 (6)5.3.1 随机数计算器 (6)5.3.2 交税表 (6)5.3.3 最小公倍数 (6)5.3.3.1 求质因数 (6)5.3.3.2 求最小公倍数 (7)5.3.4 创建类 (8)5.3.4.1 矩形类 (8)5.4. 设计图 (8)5.4.1 矩形类UML设计图 (8)5.4.2 时间类UML设计图 (9)5.5 仿真结果 (9)5.5.1 随机数计算器 (9)5.5.2 交税表 (10)5.5.3 最小公倍数 (10)5.5.4.1矩形类 (11)5.5.4.2 时间类 (12)5.6 调试心得 (12)5.6.1 错误分析 (12)5.6.2 心得与收获 (12)一、实验目的通过使用JA V A语言进行基本程序的开发,掌握JA V A通用IDE,练习类的封装使用、JA V A基本类库的使用、利用UML进行简单建模。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
课程名称:指导教师:实验成绩:实验项目编号:实验项目名称:
班级:姓名:学号:
上机实践日期:上机实践时间:学时
一实验目的
1、了解javaEE基本架构
2、学习JPA和JSF
二实验设备
一台pc机(硬盘40GB、内存256M、CPU2.0GHZ以上),系统盘,和一支笔。
Myesciple10软件。
三实验内容
1、为flightweb设计登录
1、界面设计
(1)
代码:
body>
<f:view>
<h:form>
<h:dataTable value="#{addItem.allUser}"
var="item"
styleClass="orders"
headerClass="ordersHeader"
columnClasses="evenColumn,oddColumn">
<h:column>
<f:facet name="header">
<h:outputText value="商品编号"/>
</f:facet>
<h:outputText value="#{item.goodId}"/>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="商品名"/>
</f:facet>
<h:outputText value="#{item.goodName}"/>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="商品起拍价"/>
</f:facet>
<h:outputText value="#{item.goodVail}"/>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="商品描述"/>
</f:facet>
<h:outputText value="#{item.goodMaoshu}"/>
</h:column>
</h:dataTable>
ID:<h:inputText value="#{addItem.goodUser.goodId}"></h:inputText><br>商品名:<h:inputText id="name"value="#{addItem.goodUser.goodName}"> </h:inputText><br>
商品描述:<h:inputText id="maosu"
value="#{addItem.goodUser.goodMaoshu}"></h:inputText><br>
起拍价格:<h:inputText id="initPrice"
value="#{addItem.goodUser.goodVail}"></h:inputText><br>
有效时间:<h:selectOneMenu value="#{addItem.goodUser.date}">
<f:selectItem itemLabel="一天"itemValue="1"/>
<f:selectItem itemLabel="一星期"itemValue="2"/>
<f:selectItem itemLabel="一个月"itemValue="3"/>
</h:selectOneMenu><br>
物品总类:<h:selectOneMenu value="#{addItem.goodUser.goodType}"> <f:selectItem itemLabel="电脑"itemValue="diannao"/>
<f:selectItem itemLabel="书籍"itemValue="shu"/>
<f:selectItem itemLabel="房产"itemValue="fang"/>
</h:selectOneMenu><br>
<h:commandButton value="添加"
action="#{addItem.addItems}"></h:commandButton>
</h:form>
</f:view>
</body>
</html>
2、受管bean编写
代码:
public class AddItem {
private List<GoodInfo>allUser;
private ListDataModel model = null;
private GoodInfoDAO dao;
private GoodInfo goodUser=new GoodInfo();
private String goodname;
private EntityManager em = EntityManagerHelper.getEntityManager();
public AddItem() {
// TODO Auto-generated const
dao=new GoodInfoDAO();
allUser=dao.findAll();
model= new ListDataModel(allUser);
}
public GoodInfo getGoodUser() {
return goodUser;
}
public void setGoodUser(GoodInfo goodUser) {
this.goodUser = goodUser;
}
public String addItems()
{
em.getTransaction().begin();
dao.save(goodUser);
em.getTransaction().commit();
allUser=dao.findAll();
return " ";
}
public List<GoodInfo> getAllUser() {
return allUser;
}
public void setAllUser(List<GoodInfo> allUser) { this.allUser = allUser;
}
public ListDataModel getModel() {
return model;
}
public void setModel(ListDataModel model) {
this.model = model;
}
}
运行结果:
3实验总结:
1、在编写bean时要注意命名,防止在face配置时出错。