Java EE技术 实验指导书.docx
- 文档编号:4000808
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:59
- 大小:33.98KB
Java EE技术 实验指导书.docx
《Java EE技术 实验指导书.docx》由会员分享,可在线阅读,更多相关《Java EE技术 实验指导书.docx(59页珍藏版)》请在冰豆网上搜索。
JavaEE技术实验指导书
JavaEE技术
实验指导书
计算机与通信学院
2014.2
概述
本课程实验教学的目的在于训练学生的能手能力,以期更好地掌握JavaEE相关原理及方法,并为后期课程设计及以后从事JAVA体系开发工作打下良好的基础。
实验内容
本门课程必做的实验有6个,共8次,其中Hibernate应用实验和Spring应用实验分别有两次。
1.HTML应用(属性、表格、表单及Frame)
2.JSP应用(留言板应用)
3.Struts2应用(“添加学生信息”项目
4.Hibernate应用(“学生选课系统”项目)
5.Spring应用(SSH整合)
6.Ajax应用(Ajax的基础应用)
实验环境
硬件为个人微机,软件为操作系统WINDOWSXP,Eclipse3.2+,JavaEESDK6+,MySQL5+。
实验要求
本课程实验教学的要求包括:
1、根据教材中规定的内容在要求的时间内完成实验内容;
2、成功部署实验中要求实现的内容,并能演示;
3、提交实验中规定的开发内容的核心代码;
4、实验代码必须提交到SVN版本管理服务器中;
5、提交实验报告。
实验一HTML应用(属性、表格、表单及Frame)
(实验课时:
2实验性质:
设计)
实验名称:
HTML应用(属性、表格、表单及Frame)
实验目的和要求:
(1)熟悉HTML语法。
(2)通过实验,熟练掌握MyEclipse8.X的日常应用。
(3)认真书写实验报告,如实填写各项实验内容。
实验内容和步骤:
(1)打开MyEclipse8.XIDE。
用鼠标单击“开始”后,将鼠标分别指向程序/MyEclipse,运行该程序。
(2)利用MyEclipse创建工程HTML_DEMO。
(3)运行程序。
(4)在MyEclipse中进行其它操作,熟悉并掌握其使用技巧。
实验源代码:
Head.html
学生信息管理系统
Left.html
right.html
frame.html
此网页使用了框架,但你的浏览器不支持。
table.html见教材P19–20页。
form_table.html源代码见教材P22–24页。
补充内容:
1、SVN客户端的安装
2、SVN的常规应用
实验思考题(在实验报告中写出答案)
1.MyEclipse环境中如何配置Web服务器?
除Tomcat外,请另外下载ResinWeb服务器,并配置好,并在浏览器中验证之。
2、SVN的整体架构属于何种类型?
与其功能相类似的其它代码管理服务器有哪些?
请列举你在本实验过程中出现的关于SVN安装和使用的问题及解决方法。
3、请设计一系列操作步骤,演示同组人员在代码提交时的“冲突”,并观察其现象,并提出解决办法。
将上述列举出来。
4、设计实验,验证Servlet接口定义的五个方法的存在。
实验二JSP应用(留言板应用)
(实验课时:
2实验性质:
设计)
实验名称:
JSP应用(留言板应用)
实验目的和要求:
(1)使用MyEclipse8.XIDE进行JSP应用程序的开发
(2)使用MyEclipse8.XIDE进行程序的编辑和调试方法:
(3)通过实验,熟练掌握JSP语法及JSP相关标签的应用。
(4)通过实验,熟练掌握用Servlet做为控制器,实现用户请求的处理及页面的跳转。
(5)认真书写实验报告,如实填写各项实验内容。
实验内容和步骤:
1.在MyEclipse8.XIDE中建立Web工程;
2.按书第二章2.3节实现的步骤,完成留言版内容;
3.运行项目,进入登录界面;
4.按操作流程运行系统,并针对错误进行调试;
5.将代码提交到SVN版本服务器中。
实验源代码:
ccc.hut.database.DB.java
packageccc.hut.database;
importjava.sql.Connection;
//importjava.sql.Date;
importjava.sql.DriverManager;
importjava.sql.PreparedStatement;
importjava.sql.ResultSet;
importjava.util.ArrayList;
importccc.hut.javabean.LyTable;
importccc.hut.javabean.User;
publicclassDB{
privatestaticConnectionct;
privatePreparedStatementpstm;
publicDB(){
try{
Class.forName("com.mysql.jdbc.Driver");
ct=DriverManager.getConnection("jdbc:
mysql:
//localhost:
3306/javaee","root","");
}catch(Exceptionex){
ex.printStackTrace();
}
}
publicUsercheckUser(Stringusername,Stringpassword){
try{
pstm=ct.prepareStatement("select*fromuserTablewhereusername=?
andpassword=?
");
pstm.setString(1,username);
pstm.setString(2,password);
ResultSetrs=pstm.executeQuery();
Useruser=newUser();
while(rs.next()){
user.setId(rs.getInt
(1));
user.setUsername(rs.getString
(2));
user.setPassword(rs.getString(3));
returnuser;
}
returnnull;
}catch(Exceptionex){
ex.printStackTrace();
returnnull;
}
}
publicStringgetUserName(intid){
Stringusername=null;
try{
pstm=ct.prepareStatement("selectusernamefromuserTablewhereid=?
");
pstm.setInt(1,id);
ResultSetrs=pstm.executeQuery();
while(rs.next()){
username=rs.getString
(1);
}
returnusername;
}catch(Exceptionex){
ex.printStackTrace();
returnnull;
}
}
publicArrayList
try{
ArrayList
pstm=ct.prepareStatement("select*fromlyTable");
ResultSetrs=pstm.executeQuery();
while(rs.next()){
LyTablely=newLyTable();
ly.setId(rs.getInt
(1));
ly.setUserId(rs.getInt
(2));
ly.setDate(rs.getDate(3));
ly.setTitle(rs.getString(4));
ly.setContent(rs.getString(5));
al.add(ly);
}
returnal;
}catch(Exceptionex){
ex.printStackTrace();
returnnull;
}
}
//添加留言
publicbooleanaddInfo(LyTablely){
try{
pstm=ct.prepareStatement("insertintolyTablevalues(?
?
?
?
?
)");
pstm.setNull(1,java.sql.Types.INTEGER);
pstm.setInt(2,ly.getUserId());
pstm.setDate(3,ly.getDate());
pstm.setString(4,ly.getTitle());
pstm.setString(5,ly.getContent());
pstm.executeUpdate();
returntrue;
}catch(Exceptionex){
ex.printStackTrace();
returnfalse;
}
}
publicbooleaninsertUser(Stringusername,Stringpwd){
try{
pstm=ct.prepareStatement("insertintouserTablevalues(?
?
?
)");
pstm.setNull(1,java.sql.Types.INTEGER);
pstm.setString(2,username);
pstm.setString(3,pwd);
pstm.executeUpdate();
returntrue;
}catch(Exceptionex){
ex.printStackTrace();
returnfalse;
}
}
}
ccc.hut.javabean.LyTable.java
packageccc.hut.javabean;
importjava.sql.Date;
//importjava.util.Date;
publicclassLyTable{
privateintid;
privateintuserId;
privateDatedate;
privateStringtitle;
privateStringcontent;
publicintgetId(){
returnid;
}
publicvoidsetId(intid){
this.id=id;
}
publicintgetUserId(){
returnuserId;
}
publicvoidsetUserId(intuserId){
this.userId=userId;
}
publicDategetDate(){
returndate;
}
publicvoidsetDate(Datedate){
this.date=date;
}
publicStringgetTitle(){
returntitle;
}
publicvoidsetTitle(Stringtitle){
this.title=title;
}
publicStringgetContent(){
returncontent;
}
publicvoidsetContent(Stringcontent){
this.content=content;
}
}
ccc.hut.javabean.User.java
packageccc.hut.javabean;
publicclassUser{
privateintid;
privateStringusername;
privateStringpassword;
publicintgetId(){
returnid;
}
publicvoidsetId(intid){
this.id=id;
}
publicStringgetUsername(){
returnusername;
}
publicvoidsetUsername(Stringusername){
this.username=username;
}
publicStringgetPassword(){
returnpassword;
}
publicvoidsetPassword(Stringpassword){
this.password=password;
}
}
ccc.hut.servlet.AddServlet.java
packageccc.hut.servlet;
importjava.io.IOException;
importjava.sql.Date;
importjavax.servlet.ServletException;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
importccc.hut.database.DB;
importccc.hut.javabean.LyTable;
importccc.hut.javabean.User;
publicclassAddServletextendsHttpServlet{
publicvoiddoPost(HttpServletRequestreq,HttpServletResponseres)
throwsServletException,IOException{
req.setCharacterEncoding("gb2312");
res.setCharacterEncoding("gb2312");
Stringtitle=req.getParameter("title");
Stringcontent=req.getParameter("content");
Useruser=(User)req.getSession().getAttribute("user");
LyTablely=newLyTable();
ly.setUserId(user.getId());
ly.setDate(newDate(System.currentTimeMillis()));
ly.setTitle(title);
ly.setContent(content);
if(newDB().addInfo(ly)){
res.sendRedirect("success.jsp");
}
}
publicvoiddoGet(HttpServletRequestreq,HttpServletResponseres)
throwsServletException,IOException{
doPost(req,res);
}
}
ccc.hut.servlet.MainServlet.java
packageccc.hut.servlet;
importjava.io.IOException;
importjava.util.ArrayList;
importjavax.servlet.ServletException;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
importjavax.servlet.http.HttpSession;
importccc.hut.database.DB;
importccc.hut.javabean.LyTable;
importccc.hut.javabean.User;
publicclassMainServletextendsHttpServlet{
publicvoiddoPost(HttpServletRequestreq,
HttpServletResponseres)throwsServletException,IOException{
req.setCharacterEncoding("gb2312");
res.setCharacterEncoding("gb2312");
Stringusername=req.getParameter("username");
Stringpwd=req.getParameter("pwd");
DBdb=newDB();
HttpSessionsession=req.getSession();
Useruser=(User)session.getAttribute("user");
if(user==null){
user=db.checkUser(username,pwd);
}
session.setAttribute("user",user);
if(user!
=null){
ArrayList
session.setAttribute("al",al);
res.sendRedirect("main.jsp");
}else{
res.sendRedirect("login.jsp");
}
}
publicvoiddoGet(HttpServletRequestreq,HttpServletResponseres)
throwsServletException,IOException{
doPost(req,res);
}
}
ccc.hut.servlet.RegisterServlet.java
packageccc.hut.servlet;
importjava.io.IOException;
importjavax.servlet.ServletException;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
importccc.hut.database.DB;
publicclassRegisterServletextendsHttpServlet{
publicvoiddoPost(HttpServletRequestreq,HttpServletResponseres)
throwsServletException,IOException{
req.setCharacterEncoding("gb2312");
res.setCharacterEncoding("gb2312");
Stringusername=req.getParameter("username");
Stringpassword=req.getParameter("pwd");
if(newDB().insertUser(username,password)){
res.sendRedirect("login.jsp");
}
}
publicvoiddoGet(HttpServletRequestreq,HttpServletResponseres)
throwsServletException,IOException{
doPost(req,res);
}
}
login.jsp
<%@pagelanguage="java"
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java EE技术 实验指导书 EE 技术 实验 指导书