JSP实训报告.docx

上传人:b****3 文档编号:2977515 上传时间:2022-11-16 格式:DOCX 页数:14 大小:65.43KB
下载 相关 举报
JSP实训报告.docx_第1页
第1页 / 共14页
JSP实训报告.docx_第2页
第2页 / 共14页
JSP实训报告.docx_第3页
第3页 / 共14页
JSP实训报告.docx_第4页
第4页 / 共14页
JSP实训报告.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

JSP实训报告.docx

《JSP实训报告.docx》由会员分享,可在线阅读,更多相关《JSP实训报告.docx(14页珍藏版)》请在冰豆网上搜索。

JSP实训报告.docx

JSP实训报告

一、实习内容

1、问题的提出

无论是在商业网站还是在社区中,留言板都是一种重要的功能,通过留言板,用户可以将自己的想法、感受等发表出来以更好地进行交流。

留言板的基本功能是让使用者撰写留言或者查看别人的留言。

一个功能完善的留言板也有着复杂的功能,这种复杂性主要表现在留言板的管理权限和留言丰富的表现形式两个方面。

本次实训项目介绍使用纯文本的留言,并具有添加和删除的权限。

2、问题分析与总体设计

(1)包含模块

①撰写留言模块

功能比较单一,就是给出表单,让撰写者填写留言的标题和内容。

一般来说,这个模块要注意的是对留言权限的限制,不同的权限具有不同的功能要求,有的系统允许不登录(匿名)留言,有的系统只有登录过的用户才能留言。

本项目允许匿名留言,由JSP、JavaBean、Serlet共同实现,JSP负责显示留言撰写页面,JavaBean完成数据库的连接及添加操作,Serlet负责执行留言记录的添加。

阅读留言模块

由JSP和JavaBean共同完成,JavaBean完成数据库的连接及查询查询操作,JSP负责显示具体的留言内容,包括留言人、日期、E-mail、留言主题、留言内容、多余留言的分页显示。

留言管理模块

主要负责留言的删除操作,由JavaBean和Serlet共同实现,JavaBean负责数据库的连接及删除操作,Serlet执行留言记录的删除。

(2)MVC模式

MVC(model-view-controller,模型-视图-控制器)模式的核心思想是将整个程序代码分成既相对独立又能协同工作的3个组成部分。

①模型:

业务逻辑层。

实现具体的业务逻辑、状态管理的功能。

②视图:

表示层。

即与用户实现交互的界面,通常实现数据的输入和输出功能。

③控制器:

控制层。

起到控制整个业务流程的作用,实现视图和模型部分的协同工作。

(3)数据库设计

在SQLServer中新建数据库message,新建数据表mas,其中“留言id”字段数值为自动编码,表的结构如图所示:

3、项目实现(依据MVC模式)

(1)模型(DB.com)

DB.conn代码:

packageapp63;

importjava.sql.*;

publicclassDBconn{

StringDBDriver="sun.jdbc.odbc.Jdbc.OdbcDriver";

StringConnstr="jdbc:

odbc:

message";

Connectioncon=null;

ResultSetrs=null;

publicDBconn(){

try{

Class.forName(DBDriver);

}

catch(ClassNotFoundExceptione){

System.err.println("DBconn:

classnotfoundexception");

}

}

publicvoidexecuteInsert(Strings){

inti=0;

Statementsql;

try{

//con=DriverMananger.get.Connection(Connstr,username,password);

con=DriverManager.getConnection(Connstr);

sql=con.createStatement();

i=sql.executeUpdate(s);

}

catch(SQLExceptionsqlexception){

System.err.println("executeInsert:

"+sqlexception.getMessage());

}

}

publicResultSetQuerysimple(Strings){

rs=null;

Statementsql;

try{

con=DriverManager.getConnection(Connstr);

sql=con.createStatement();

rs=sql.executeQuery(s);

}

catch(SQLExceptionsqlexception){

System.err.println("executeQuery:

"+sqlexception.getMessage());

}

returnrs;

}

publicvoidexecuteDelete(Strings){

Statementsql;

try{

//con=DriverManager.getConnection(Connstr);

sql=con.createStatement();

sql.executeUpdate(s);

}

catch(SQLExceptionsqlexception){

System.err.println("executeDelete:

"+sqlexception.getMessage());

}

}

publicintexecuteUpdate(Strings){

inti=0;

Statementsql;

try{

con=DriverManager.getConnection(Connstr);

sql=con.createStatement();

i=sql.executeUpdate(s);

}

catch(SQLExceptionsqlexception){

System.err.println("executeUpdate:

"+sqlexception.getMessage());

}

returni;

}

publicvoidclose(){

try{

if(rs!

=null)

rs.close();

if(con!

=null)

con.close();

}

catch(SQLExceptionsqlexception){

System.err.println("close:

"+sqlexception.getMessage());

}

}

}

strConvert代码:

packageapp63;

publicclassStrConvert{

publicStrConvert(){

}

publicStringchStr(Stringstr){

if(str==null){

str="";

}

else{

try{

str=(newString(str.getBytes("ISO-8859-1"),"GB2312")).trim();

}

catch(Exceptione){

System.out.println("chStr");

System.out.println(e.getMessage());

}

}

returnstr;

}

}

(2)视图(message.jsp)截图

单击“增加留言”连接即可进入添加留言页面,如图所示:

Message.jsp的视图代码:

<%@pagecontentType="text/html;charset=gb2312"%>

<%@pageimport="java.sql.*"%>

察看留言

useBeanid="con"class="app63.DBconn"scope="request"/>

增加留言

<%

Stringsqli="SELECT*FROMmasORDERBY留言idDESC";

ResultSetrs=con.executeQuery(sqli);

Stringcolor="";

Stringstrpages=(String)request.getParameter("pages");

intpages=0;

if(strpages==null){

pages=0;

}else{

pages=Integer.parseInt(strpages);

}

rs.last();

intsqan=4,i=0,fcount=0;

intcount=rs.getRow();

intcountpage=count/sqan;

if(count%sqan>0)countpage=countpage+1;

if(pages<0)pages=0;

if(pages>countpage-1)pages=countpage-1;

fcount=pages*sqan+1;

intfpage=(count-fcount)/sqan+1;

rs.absolute(fcount);

rs.previous();

while(rs.next()){

intid=rs.getInt("留言id");

Stringusername=rs.getString("留言人");

Stringtime=rs.getString("留言时间");

if(masinfo==null)masinfo="";

if(color==""){

color="#ffffff";

}else{

color="";

}

%>

<%=username%>

<%=time%>

<%=topic%>

">

留言人:

<%=username%> 

留言主题:

<%=topic%> 

">

日期:

<%=time%>

<%=masinfo%> 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1