JDBC、JSP、Servlet综合程序设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
昆明理工大学信息工程与自动化学院学生实验报告
( 2016 — 2017 学年第 2 学期)
课程名称:JAVA EE技术
开课实验室:呈贡校区信自楼 2017年4月17日
实验四 JDBC、JSP、Servlet综合程序设计
一、实验内容
1.通过上机,掌握JDBC、JSP、Servlet的联合应用。
2.编写一个实现JDBC、JSP、Servlet三种技术的综合程序,内容不限。
3.完成以上内容的程序调试,并运行出正确的结果。
二、所用仪器、材料
PC一台,JDK、Eclipse、Tomcat、MySQL
三、实验原理
1.JDBC: 一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问。
JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具
和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JDBC
也是个商标名。
2.JSP:java服务器页面,其根本是一个简化的Servlet设计。JSP技术有点类似ASP
技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插
入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。
用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上
运行。
3.Servlet: 是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数
据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的
Servlet是指任何实现了这个Servlet接口的类。
四、实验过程
(一)使用内存域(详细代码见代码附录)
1.新建动态web项目chenna_4中login.jsp
2.新建动态web项目chenna_4中error.jsp
3.新建动态web项目chenna_4下WebContent子目录Protected中的index.jsp
4.新建动态web项目chenna_4下WebContent子目录Protected中的logout.jsp
5.设置web项目chenna_4下的web.xml
6.修改Tomcat的tomcat-users.xml
7.(1)测试BASIC
(2)测试DIGEST(将
(3)测试FORM(将
定制表单
认证首页
(二)使用JDBC域
1.新建动态Web项目jdbcrealm_cn并在mysql中新建数据库tomcat,并在其中
建立表users和user_roles
2.配置tomcat中的context.xml
3.配置web.xml(tomcat角色和admin角色可以访问/Protected目录,但只有
admin角色可以访问/admin目录)
4.建立admin和protected子目录,并分别在目录下建立index.jsp与
logout.jsp
(1)admin目录下
(2)protected目录下
5.(1)运行admin下的index.jsp
以admin身份登陆
以tomcat身份运行
(2)运行Protected下的index.jsp 以admin身份登陆
以tomcat身份运行
(三)密文存放密码
(四)S SL协议
五、实验结果、分析和结论(误差分析与数据处理、成果总结等。其中,绘
制曲线图时必须用计算纸)
(1)本次实验是本学期以来难度最高的实验。但如果细化下去,却也没想象中的复杂,根据对课本代码逐渐的深入认识后,再将其总结后,将实验得以粗略的完
成。
(2)在windows安全提示输入密码时,对tomcat-users.xml的不了解,将其输为PC 机用户和密码,后来输入自己设置的tomcat用户,但未输入密码,出现401错
误,经过对代码的重新审查后才运行正确。
(3)在本次实验里,学会了如何将java EE与数据库连接,学会了密码在tomcat对的保存形式,但之前所使用的密码为明文密码,所以安全级别较低,在学会使
用密文存储密码后。其实还是在手工导入,没有实现自动化。
(4)本次实验是学期实验的综合,所以也很好的综合掌握了JavaEE的形式,对它的认识更近了一步,相信在后面的不断学习和不断的深化当中,我会更好的掌握
它,并且,我相信这次实验会给我在未来带来很大的影响。
源代码:
(一) chena_4项目中:
1.login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
"/TR/html4/loose.dtd">
body{
color : #000 ;
font-size : 12px ;
margin : 0px auto ;
}