基于JSP开发社区医院收费系统课程设计报告文档格式.docx
《基于JSP开发社区医院收费系统课程设计报告文档格式.docx》由会员分享,可在线阅读,更多相关《基于JSP开发社区医院收费系统课程设计报告文档格式.docx(46页珍藏版)》请在冰豆网上搜索。
装完后在我的电脑->
属性->
高级->
环境变量->
系统变量中添加以下环境变量:
(假设你的JDK安装在c:
/jdk)
JDK_HOME=C:
\jdk
classpath=.;
%JDK_HOME%\lib\dt.jar;
%JDK_HOME%\lib\tools.jar
在PATH(原来就已存在)中添加:
%JDK_HOME%\bin
这样jdk环境配置成功。
2.双击安装你的Tomcat。
(建议安装在D:
/tomcat)
注:
tomcat6.0.x版本不需配置环境变量就可以使用,但如果需要编译Servlet则必须将tomcat的两个jar文件也放到环境变量中,具体方法如下:
在我的电脑->
系统变量中添加:
TOMCAT_HOME=D:
\tomcat
修改classpath变成:
.
;
%JDK_HOME%\lib\tools.jar;
%TOMCAT_HOME%\common\lib\servlet-api.jar;
%TOMCAT_HOME%\common\lib\jsp-api.jar;
这样已经完整安装完Tomcat了。
建议:
在PATH中再添加:
%JDK_HOME%\bin;
%TOMCAT_HOME%\bin
这样做的目的是在虚拟dos中可以使用tomcat的工具
最后顺便把第一步下载回来的三个jar文件放到tomcat目录下的common/lib目录中
3.测试:
打开开始菜单中的tomcat(小猫图案)的monitor工具,点击start
server,显示绿色三角形即为启动,打开浏览器在地址栏输入:
http:
//localhost:
8080/可以看到小猫图案说明已经配置成功。
4.安装数据库(mysql)
windows
xp下安装企业版。
一直next就可以(微软的东西就是方便),这里注意到域帐户默认用户名root,设置密码,设置数据库编码UTF-8
5.安装myeclipse
三、开始编程:
1>
开启myeclipse新建项目
2>
配置tomcat:
window-->
Preperence--->
server-->
tomcat
2.1.1
对硬件条件的要求
JSP运行对CPU和内存要求比较高,尤其是开发的过程。
目前常规的CPU已经完全可以满足需求,一般P41.7以上的CPU就可以完全胜任开发和运行工作了。
对内存的要求是使用1G以上的内存,尤其是开发数据库的项目,尤其需要大内存,不然调试程序的效率极其低下。
2.1.2
对操作系统的要求
操作系统环境可以选择Windows操作系统,也可以采用Unix家族的桌面系统。
推荐使用WindowsXP/2003Server
操作系统。
尽量和以后系统发布的环境一致,这样就可以尽量避免出错的可能性。
其实Linux和FreeBSD下的KDE环境对Eclipse支持的也很好,我目前的项目就在FreeBSD6.1+KDE3.5+Eclipse3.1下开发。
2.1.3
对软件环境的要求
JDK5做了很多的改动,添加了很多功能,所有不再建议使用JDK1.4.2的版本。
开发JDK推荐使用Tomcat,目前的Tomcat5.5.x完全可以满足JSP的运行需要。
当开发项目的时候,需要一个集成开发环境,有两个选择JBuilder和Eclipse,2005年之前,我一直使用Jbuider,国内的大多数程序员使用的也是Jbuilder,因为当时Eclipse还不是很成熟,目前两个开发环境都非常的好用,如果谁觉得那个不好用,只是因为对其还不是很熟悉精通。
但是Eclipse是免费发布的,国外非常注重版权问题,所以我从2005年以后,逐步开始转向Eclipse,本书也全部使用Eclipse作为集成开发环境。
数据库支持是必须的,国内很多基于JSP的项目都采用Oracle,因为Oracle的昂贵,很多中小项目还在使用SQLServer数据库。
因此Oracle和SQLServer是两个需要配置数据库环境。
这里选择Oralce10g和SQLServer2000来安装和配置。
2.2数据库设计
用户表:
user
科室表
疾病表
药品表
患者表
2.3数据配置与连接
publicclassConnectPool{
publicConnectionconn;
publicStatementstmt;
publicResultSetrs;
publicConnectPool(){
try{
Class.forName("
org.gjt.mm.mysql.Driver"
);
conn=DriverManager
.getConnection("
jdbc:
mysql:
3306/CommunityHospital?
user=root&
password=root&
useUnicode=true&
characterEncoding=utf-8"
}catch(ClassNotFoundExceptione){
e.printStackTrace();
}catch(SQLExceptione){
}
}
}
第3章系统详细设计与实现
3.1类的设计
3.11用户类:
User
publicclassUser{
privateintid;
privateStringuserName;
privateStringpassword;
privateintflag;
privateintuserType;
publicintgetUserType(){
returnuserType;
publicvoidsetUserType(intuserType){
this.userType=userType;
publicintgetId(){
returnid;
publicvoidsetId(intid){
this.id=id;
publicintgetFlag(){
returnflag;
publicvoidsetFlag(intflag){
this.flag=flag;
publicStringgetUserName(){
returnuserName;
publicvoidsetUserName(StringuserName){
this.userName=userName;
publicStringgetPassword(){
returnpassword;
publicvoidsetPassword(Stringpassword){
this.password=password;
3.12科室类:
Dept
publicclassDept{
privateStringdeptName;
publicStringgetDeptName(){
returndeptName;
publicvoidsetDeptName(StringdeptName){
this.deptName=deptName;
3.13疾病类:
Disease
publicclassDisease{
privateStringdiseaseName;
privatedoublediseasePrice;
publicStringgetDiseaseName(){
returndiseaseName;
publicvoidsetDiseaseName(StringdiseaseName){
this.diseaseName=diseaseName;
publicdoublegetDiseasePrice(){
returndiseasePrice;
publicvoidsetDiseasePrice(doublediseasePrice){
this.diseasePrice=diseasePrice;
3.14药品类:
Medicine
publicclassMedicine{
privateStringmedicineName;
privatedoubleprice;
privateStringunit;
privateStringproducer;
publicStringgetMedicineName(){
returnmedicineName;
publicvoidsetMedicineName(StringmedicineName){
this.medicineName=medicineName;
publicdoublegetPrice(){
returnprice;
publicvoidsetPrice(doubleprice){
this.price=price;
publicStringgetUnit(){
returnunit;
publicvoidsetUnit(Stringunit){
this.unit=unit;
publicStringgetProducer(){
returnproducer;
publicvoidsetProducer(Stringproducer){
this.producer=producer;
3.15患者类:
Patient
publicclassPatient{
privateStringpatientName;
privateintdiseaseId;
privateintage;
privateStringsex;
publicStringgetPatientName(){
returnpatientName;
publicvoidsetPatientName(StringpatientName){
this.patientName=patientName;
publicintgetAge(){
returnage;
publicvoidsetAge(intage){
this.age=age;
publicStringgetSex(){
returnsex;
publicvoidsetSex(Stringsex){
this.sex=sex;
publicintgetDiseaseId(){
returndiseaseId;
publicvoidsetDiseaseId(intdiseaseId){
this.diseaseId=diseaseId;
3.2Servlet的设计
3.21登录:
LoginServlet
publicclassLoginServletextendsHttpServlet{
/**
*Constructoroftheobject.
*/
publicLoginServlet(){
super();
*Destructionoftheservlet.<
br>
publicvoiddestroy(){
super.destroy();
//Justputs"
destroy"
stringinlog
//Putyourcodehere
*ThedoGetmethodoftheservlet.<
*
*Thismethodiscalledwhenaformhasitstagvaluemethodequalstoget.
*@paramrequest
*therequestsendbytheclienttotheserver
*@paramresponse
*theresponsesendbytheservertotheclient
*@throwsServletException
*ifanerroroccurred
*@throwsIOException
publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
doPost(request,response);
*ThedoPostmethodoftheservlet.<
*Thismethodiscalledwhenaformhasitstagvaluemethodequalsto
*post.
publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)
request.setCharacterEncoding("
utf-8"
Stringusername=request.getParameter("
username"
Stringpassword=request.getParameter("
password"
LoginDaodao=newLoginDao();
Useruser=dao.getUserInfo(username,password);
HttpSessionsession=request.getSession();
//*获得保存的值number
Stringnumber=(String)session.getAttribute("
number"
/*StringimageNumber=request.getParameter("
imageNumber"
PrintWriterout=response.getWriter();
//匹配用户提交的数据与程序保存的数据
if(number!
=null){//程序保存
if(number.equalsIgnoreCase(imageNumber)){
//输入正确
out.print("
验证通过"
}else{
//验证码错误
验证码错误"
}
//无论情况,程序存储的数据,只能使用一次
session.removeAttribute("
}else{
out.print("
验证码失效"
}*/
if(user.getUserType()!
=0)
{
request.getSession().setAttribute("
username);
flag"
user.getUserType());
userId"
user.getId());
request.getRequestDispatcher("
/pages/index.jsp"
).forward(request,response);
}else
{
response.setContentType("
text/html;
charset=UTF-8"
response.setCharacterEncoding("
UTF-8"
PrintWriterout=response.getWriter();
<
scriptlanguage='
javascript'
>
alert('
用户名密码不正确!
重新输入!
'
window.location='
login.jsp'
/script>
"
//request.getRequestDispatcher("
/login.jsp"
*Initializationoftheservlet.<
*ifanerroroccurs
publicvoidinit()throwsServletException{
3.22药品:
MedicineServlet
publicclassMedicineServletextendsHttpServlet{
*Constructorof