新闻网页设计报告 下载本文

4系统详细设计

4.1数据库访问模块

数据库使用一个JavaBean来专门完成多个JSP页面对数据库的连接,访问等操作。即每次访问数据库时只需实例化一个封装数据库的类,并利用类里的各种公有方法来完成对应功能。下列是类中的几个方法:

(1) 方法DBBean() public DBBean()

{ }

try { }

catch(ClassNotFoundException ex) { }

System.out.println(ex.getMessage()); Class.forName(driverStr);

(2) 执行SQL语句的方法1executeQuery(String sql)

public ResultSet executeQuery(String sql)

{ }

ResultSet rs = null; try { }

catch(SQLException ex) { }

return rs;

System.out.println(ex.getMessage()); conn =

stmt = conn.createStatement(); rs = stmt.executeQuery(sql);

DriverManager.getConnection(connStr,userName,userPassword);

(3) 执行SQL语句的方法2executeUpdate(String sql)

public int executeUpdate(String sql) {

int result=0; try{

conn =

- 9 -

DriverManager.getConnection(connStr,userName,userPassword); }

}

catch(SQLException ex){ }

return result;

System.out.println(ex.getMessage()); stmt = conn.createStatement(); result = stmt.executeUpdate(sql);

(4) 关闭语句对象方法close()

public void close()

{

try{ }

catch(SQLException ex){ }

System.out.println(ex.getMessage()); stmt.close(); conn.close();

4.3新闻查看模块

新闻查看模块全部新闻分页显示,显示新闻内容,新闻搜索方式等功能。完成新闻显示,搜索等操作。

1) 新闻发布系统首页

其功能有:新闻查看页面,如下图所示:

关键代码如下:

function datail(id)

{

window.open('detail.jsp?id='+id,'infoWin','height=400,width=600,scrollbars=yes,resizable=yes');

}

<%

request.setCharacterEncoding(\);

if(request.getParameter(\)!=null)

type=request.getParameter(\); session.setAttribute(\,type);

{

}

if(request.getParameter(\)!=null)

- 10 -

{

key=request.getParameter(\); session.setAttribute(\,key);

}

ResultSet rs=null;

ResultSet temp=null;

String sql1=\;

String sql2=\;

type=(String)session.getAttribute(\); type=(String)session.getAttribute(\);

if(session.getAttribute(\)!=null)

if(session.getAttribute(\)!=null)

if(type!=null&&key!=null&&!type.equals(\)&&key.equals(\))

sql1+= \+type+\+key+\; sql2+=\+type+\+key+\;

{

}

sql1+=\;

%>

欢迎您访问新闻发布系统!

请选择查询类别:

请输入查询关键字:

<%

temp=conn.executeQuery(sql2);

- 11 -

int totalrecord=0; if(temp.next())

totalrecord=temp.getInt(1);

if(totalrecord % size == 0) totalPage = totalrecord/size; else totalPage=totalrecord/size+1; if(totalPage==0) totalPage=1; temp.close(); try {

if(request.getParameter(\)==null ||request.getParameter(\).equals(\))

p=1;

p=Integer.parseInt(request.getParameter(\)); else

}catch(NumberFormatException e){p=1;} if(p<1) p=1;

if(p>totalPage) p=totalPage; rs=conn.executeQuery(sql1); if(rs.next())

out.println(printPage(rs,p,size));

%>

标题作 者日期

for(int i=1;i<=totalPage;i++){ }

out.println(\+i+\+i+\);

<%

%>

输入页数:

页数:<%=p %>/<%=totalPage %>

继续发布   

- 12 -