《Web应用与开发》--新闻发布系统--课程设计报告.

HUNAN  CITY  UNIVERSITY      

WEB应用与开发课程设计

报  告

设计题目  编写一个新闻发布系统      

专    业  信息管理与信息系统     

学生姓名      XXXX        

班级学号      XXXXXXXXXXXX      

分组成员 XXXXXXXXXXXXXXXXXXXXX 

指导教师     XXXXXXXXXXXXXXXXXXXX        

2012 年 06 月 8 日

《WEB应用与开发》课程设计报告

XXXXXXXXXXXXXXXX

一、设计时间

20##年6月 04日-----6月08日

总的设计时间为1周, 第17周。具体安排如下:

1、分析设计准备阶段(第17周周一至周二)

2、编程调试阶段(第17周周三至第17周周四)

3、书写设计报告和书写说明书阶段(第17周周五)

4、考核阶段(第17周周五)

二、设计地点

 信息科学与工程学院机房(新校区510机房)

三、设计目的

1、巩固学习Web基础知识方面的基本算法,进一步熟悉基本概念。

 2、熟练常用软件及JAVA语言等方面的操作,了解基本的流程。

3、运用所用学的JAVA语言知识,编写出较为实用的网页系统,增进对一些实际问题的软,硬件知识的掌握。

 4、培养查阅资料,养成独立思考解决问题的能力。

四、设计小组成员

 0906601-30吴玲丽     0906601-34李 霞     0906601-36刘小姣

五、指导老师

    习胜丰老师、汪彦老师

六、设计课题

 编写实现一个新闻发布系统 

、基本思路及关键问题的解决方法

基本思路:新闻发布系统是一个功能齐全的新闻网页,本系统基于B/S模式,服务端采用JSP进行动态开发,系统主要包含三个部分:

前台系统:此部分主要包括新闻查看,新闻信息查询以及登录模块。

后台系统:此部分主要包括管理员基本信息的设置以及新闻基本分类及信息管理、后台退出。

数据库部分:数据库主要存放用户所有信息,在管理员和普通用户登陆过程中都有登陆的信息确认过程,确认密码是否与原服务器上的一致,只有一致的时候才能登陆成功,否则失败。当修改信息的时候也会有这样的确认过程,确保信息的正确性和有效性。

算法及流程图

(一) 新闻系统功能结构图

 

(二)系统流程图

         后台流程:

 

、调试过程中出现的问题及相应解决办法

1.出现的问题:在浏览器地址栏输入页面地址时无法显示页面。

解决方法:先检查有无错误代码,然后再检查是否正确执行,Tomcat与jdk路径是否正确。

2.出现的问题:无法完成页面的正确跳转。

解决方法:正确配置servlet,使用正确的映射路径。

、课程设计心得体会

这次课程设计我们组的课题是“编写实现一个新闻发布系统”,由于上课不认真以及课后缺少练习,这样一个系统对我来说有一定的难度。所幸在借阅书籍以及和同组同学讨论后,并适当请教指导老师后,也解决了不少难题,完成了这次课程设计。

本次新闻发布系统网页的课程设计是一个理论与实践结合的过程,使我明白理论知识往往是不够的,只有把所学的理论与实际行动相结合,才会提高自己的综合实际能力和独立思考能力。在设计的过程中我们都会遇到很多的问题,但往往是一个小问题都会导致实验的失败,这就要我们花大量的时间去思索和改正,这是一个很艰辛的过程,但同时也是你收获最大的过程。

实验往往是一个苦中有乐的过程,我希望在以后的实验学习中自己能独立思考,同时也要认真去完成,这样既能学到知识,也能让自己的实践操作得到锻炼。

总之,这次课程设计让我感触很多,不仅仅是知识上的学习和掌握,同时也让我明白了很多做人的道理。此次实验让我明白了一个很深刻的道理:团队精神固然很重要,担人往往还是要靠自己的努力,自己亲身去经历,这样自己的心里才会踏实,学到的东西才会更多。在此,我要感谢同学,他们帮我学到了很多,同时也付出了很多,也感谢老师的细心指导,让我们顺利的完成了课程设计。

在此次的上机实习中,我对于JSP网页开发有了更为系统的认识,同时也增强了自己网页制作方面的能力。

(本人有完整的项目需要的话发邮件给我491990141@qq.com)

十一、源程序

      在此次的课程设计中,我主要负责的是管理分类新闻,部分代码如下:

<%@page contentType="text/html; charset=gb2312" language="java" import="java.sql.*"%>

<jsp:useBean id="db" class="jizhetuan.connectDB" />

<html>

<head>

<title>添加新闻</title>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<link href="css/style.css" rel="stylesheet" type="text/css">

<script language="javascript">

           function add()

           {

              if(add_form.title.value.length == 0 )

              {

                  alert("新闻标题不能为空");

              }

              else if(add_form.content.value.length == 0)

              {

                  alert("新闻内容不能为空");           

              }

              else if(add_form.newtype.value=="")

              {

                  alert("新闻类别不能为空");           

              }

              else

              {

                  add_form.submit();

              }

           }

       </script>

</head>

<body>

<%

if( !"2".equals(session.getAttribute("priority")) && !"3".equals(session.getAttribute("priority")))

{

    out.print("你无权发表新闻");

%>

<a href="index.jsp">返回首页</a>

<%

}

else

{

 %>

<form name="add_form" method="post" action="dealnews.jsp">

<table>

<tr>

<td width="60" >新闻标题</td>

<td width="120" ><input type=text name="title"  maxlength="100"></td>

</tr>

<tr>

<td width="60" class="text-login">新闻类别</td>

<td width="120" class="text-login">

<select name="newtype" >

<%

ResultSet rs=null;

String sql="select * from kind";

rs=db.executeQuery(sql);

%>

<option value="">请选择类别

<%

while(rs.next())

{

 %>

<option value="<%=rs.getString("kindid") %>"><%=rs.getString("kindname") %>

<%

} %>

</select>

 </td>

</tr>

<tr>

<td width="60" >新闻内容</td>

<td width="120" height="200"><textarea name="content" class="addtextarea"></textarea></td>

</tr>

<tr>

<td colspan="2"><input type="button" value="提交" onclick="add()" >&nbsp;<input type="reset" value="重置" onclick="add()" ></td>

</tr>

</table>

</form>

<%

}

 %>

</body>

</html>

<%@page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" import="jizhetuan.*"%>

<jsp:useBean id="db" class="jizhetuan.connectDB" />

<%

    String title =new String(request.getParameter("title").getBytes("ISO8859_1"),"gb2312");

    String kindid =new String(request.getParameter("newtype").getBytes("ISO8859_1"),"gb2312");

    String userid=(String)session.getAttribute("userid");

    String content= new String(request.getParameter("content").getBytes("ISO8859_1"),"gb2312");

    ResultSet rs=null;

    String sql="insert into news(title,content,kindid,userid) values('"+title+"','"+content+"','"+kindid+"','"+userid+"')";

   

    try

       {

           if(db.executeUpdate(sql)==1)

           {

              %>

              <script language="javascript">

              alert("添加新闻成功!");

              location.href="index.jsp";

              </script>

              <%

           }

       }

       catch(Exception e)

       {

       }

       finally

       {

       }

%>

十二、参考文献

[1]  冯燕奎 赵德奎等编著 《JSP实用案例教程》,清华大学出版社,2004

[2] (美)Bruce Eckel著 陈昊鹏 饶若楠等译《JAVA编程思想》,机械工业出版社 ,2005

[3]  孙佳 刘中兵 李伯华:《JSP + Oracle 动态网站开发案例精选》,清华大学出版社,2005

[4]  张蓓 赵国锋:《JSP数据库通用模块开发与系统移植》,清华大学出版社,2007

[5] 徐立 聂小燕 谢勇:《中文Dreamweaver MX 2004白金教学》,兵器工业出版社,2004

 

第二篇:Web开发技课程设计报告

课程实践(设计)报告

实践项目名称     图书管理系统的设计                 

项目组成人员                         

院        系  信 年级专业  0

指 导 教 师                                                

目录

1课程设计背景(包括:现状、研究目的等). 3

2需求分析(包括:功能分析、操作流程分析等). 3

2.1需求分析. 3

3设计与实现(包括:前台页面、数据库、业务逻辑等设计). 4

3.1数据库结构设计. 4

3.1.1 概念结构设计... 4

3.1.2 逻辑结构设计……………………………………………………………………………………………………… . 7

3.2.1物理结构设计……………………………………………………………………………………………………….. 8

3.3.1系统功能设计图书管理模块功……………………………………………………………………………11

3.4系统界面设计与实现…………………………………………………………………………………………..11

3.4.1系统登录界面………………………………………………………………………………………………………11

1课程设计背景

图书馆信息化管理从最初的对图书馆业务管理实行信息化管理发展到对图书馆各个业务流程和网络化管理,并建立大规模的以个体文献目录联机查询为主的资源共享系统;而图书馆的正常运营中总是面对大量的读者信息,图书信息及两者相互作用产生的借书信息,所以要对读者资源,读者资源,借书信息进行管理,本系统的开发就是在于提高图书管理的工作效率!

2需求分析(包括:功能分析、操作流程分析等)

2.1需求分析

一般通用的图书馆借阅管理系统包括系统管理、读者管理、编目、图书流通、统计、查询等功能。比较先进的能够在一个界面下实现图书、音像、期刊的管理,设置假期、设置暂离锁(提高安全性)、暂停某些读者的借阅权、导入导出读者、交换MARC数据、升级辅助编码库等。此外随着Internet应用的发展,一个完善的系统还应该提供无缝接入Internet的功能,通过IE浏览器让读者使用借阅资料查询、更换密码、预约、资料检索等功能。有些系统还能提供读者自助服务,可以开放一些客户机让读者自行管理密码、查询自己的借阅史、预约资料、检索资料等。

在构造系统时,首先从需求出发构造数据库表,然后再由数据库结合需求划分系统功能模块。这样,就把一个大的系统分解成了几个小系统。这里把系统的层次划分为了两个部分:一个是一般用户态:即图书有服务子系统;另一个是管理员界面:提供图书的管理和维护功能。对于不同子系统之间的功换,采用了登录功能和用户注销功能。

  系统划分了子系统后,下一步的工作是继续划分子系统的小模块。先考虑在进入子系统时应该做什么,进入系统之后又应该做什么,提供那些服务等。例如,对于图书信息服务子系统,在用户进入时首先得调用相关数据库表,找出用户的图书借阅情况;进入系统后,子系统得提供图书查询、图书借阅和还书功能。另外,针对本系统的特殊情况,同时也考虑系统的可移植性,在系统中增加了数据库路径的维护部分。

但由于本人技术有限,下面只做了部分设计

3设计与实现(包括:前台页面、数据库、业务逻辑等设计)

3.1数据库结构设计

3.1.1 概念结构设计(E-R图)

概念结构设计是将分析得到的用户需求抽象为概念模型的过程,即在需求分析的基础上,设计出能够满足用户需求的各种实体以及它们之间的相互关系的模型。这样才能更好地、更准确地用某一DBMS实现这些需求,它是整个数据库设计的关键。概念结构的主要特点是能真实、充分地反映现实世界,易于理解,易于更改,易于向关系、网状、层次等各种数据模型转换。描述概念模型的有力工具是E-R模型。

Er图:

Web开发技课程设计报告

部分实体ER图:

Web开发技课程设计报告

3.1.2 逻辑结构设计

逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。设计逻辑结构时一般要分三步进行,首先是将概念结构转换为一般的关系、网状、层次模型,其次是将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换,最后是对数据模型进行优化。

基于B/S的简易图书借阅管理系统采用的是将E-R图向关系数据模型转换。以下是由概念模型向逻辑模型转化的关系模式:

管理员(管理员编号,管理员名称,管理员密码)

图书(图书编码,图书名称,图书类别,书架,作者,价格,借阅次数)

3.2.1物理结构设计

 数据库的物理结构设计是对于给定的逻辑数据模型,选取一个最合适应用环境的物理结构。数据库的物理结构指的是数据库在物理设备上的存储结构与存取方法,它依赖于给定的计算机系统

表2.2管理员信息表(new_userlist)

表2.3图书信息表(new_booklist)

数据库表:

3.3.1系统功能设计图书管理模块功能(时间技术有限目前只有此功能)

图书类型管理:是对图书进行分类管理,对图书类型的添加、删除、修改等功能。

图书信息管理:管理员对图书信息的详细录入,修改图书信息和删除图书信息等功能。

3.4系统界面设计与实现

3.4.1系统登录界面

系统首页,同时也是登录界面,在此界面中,管理可以根据自身情况登录到系统中 ,管理员登录界面如下图所示:

相关代码:

<!—JSPdl-0-->

<%@ page contentType="text/html; charset=gb2312" language="java"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title>用户登陆界面</title>

</head>

<body>

<%

   if(!session.isNew()){

     String name=(String)session.getAttribute("username");

     if(name==null) name="";

   }

   out.println("Session ID:"+session.getId());//输出会话编号

%>

<p align="center">

<table border="1">

  <caption>

      管理员登陆:

  </caption>

 <form action="JSPdl-1.jsp" method="post">

    <tr>

      <td>管理员姓名</td>

      <td><input type="text" name="username"/></td>

    </tr>

    <tr>

      <td>管理员密码</td>

      <td><input type="password" name="password"/></td>

    </tr>

    <tr>

      <td><input type="submit" value="提交"/>

    </tr>

 </form>

</table>

</p>

</body>

</html>

<! —JSPdl-1- ->

<%@ page contentType="text/html; charset=gb2312" language="java" errorPage="" %>

<%@ page import="java.sql.*"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title>用户身份验证</title>

</head>

<body>

  <%

   String username=request.getParameter("username");

   String password=request.getParameter("password");

   if(username==null) username="";

   if(password==null) password="";

  

   try{

     //装载驱动程序

     Class.forName("org.gjt.mm.mysql.Driver").newInstance();

     //连接字符串  

     String url ="jdbc:mysql://localhost/new_library";

     //建立连接

     Connection conn= DriverManager.getConnection(url,"root","123456");

     //建立Statement

     Statement stmt=conn.createStatement();

     //执行查询建立ResultSet

      ResultSet rs=stmt.executeQuery("select userName,userPw from new_userlist");

    //输出查询结果

    String uname=rs.getString("userName");

    String upass=rs.getString("userPw");

   

   

   if(username.equals(uname)&&password.equals(upass)){//验证用户信息

     

      response.sendRedirect("JSPdl-2.jsp");//进入欢迎页面

   }

   else{

      response.sendRedirect("JSPdl-0.jsp");//进入登陆页面

   }//关闭连接、释放资源

   rs.close();

   stmt.close();

   conn.close();

 }catch(ClassNotFoundException cnfe){

        out.print(cnfe);

 }catch(SQLException sqle){

   out.print(sqle);

 }catch(Exception e){

   out.print(e);

 }

  %>

</body>

</html>

<!- -JSPdl-0à

<%@ page contentType="text/html; charset=gb2312" language="java"%>

<%@ page import="beans.*,java.sql.*" errorPage="error.jsp"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title>显示图书列表</title>

</head>

<body>

  <jsp:useBean id="conn" scope="session" class="beans.new_libraryDBean"/>

  <table border="1">

     <caption>图书列表</caption>

     <tr>

       <th>图书编号</th>

       <th>书名</th>

       <th>作者</th>

       <th>书类</th>

       <th>书架号</th>

       <th>价格</th>

       <th>借阅次数</th>

      

     </tr>

        

     <%

      new_booklistBean[] records=conn.getAllRecords();

      if(records!=null){

         for(int i=0;i<records.length;i++){

          out.println("<tr>");

          out.println("<td>"+records[i].getbookID()+"</td>");

          out.println("<td>"+records[i].getbookName()+"</td>");

          out.println("<td>"+records[i].getauother()+"</td>");

          out.println("<td>"+records[i].getbookType()+"</td>");

          out.println("<td>"+records[i].getbookCase()+"</td>");

          out.println("<td>"+records[i].getprice()+"</td>");

          out.println("<td>"+records[i].getborrowSum()+"</td>");

          out.println("</tr>");

         }

        }

     %>

  </table>

<p>

<a name="url">更多操作:</a><br>

<a href="JSPdl-3.jsp" target="_self">添加图书</a>

<a href="#url">返回</a><br>

<a href="JSPdl-4.jsp" target="_self">删除图书</a>

</p>

</body>

</html>

管理员添加图书记录:

相关代码:

ßJSPdl-3à

<%@ page contentType="text/html; charset=gb2312" language="java"%>

<%@ page import="beans.new_booklistBean,beans.ConnBean"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title>添加图书记录</title>

</head>

<body> 

  <p>

   <table>

    <form action="" method="post">

      <caption>添加新记录</caption>

      <tr>

        <td>图书编号</td>

        <td><input type="text" name="bookID"/>*</td>

      </tr>

      <tr>

        <td>书名</td>

        <td><input type="text" name="bookName"/>*</td>

      </tr>

      <tr>

        <td>作者</td>

        <td><input type="text" name="auother"/></td>

      </tr>

      <tr>

        <td>书类</td>

        <td><textarea name="bookType" cols="20" rows="5"></textarea></td>

      </tr>

      <tr>

        <td>书架号</td>

        <td><input type="text" name="bookCase"/>*</td>

      </tr>

       <tr>

        <td>价格</td>

        <td><input type="text" name="price"/>*</td>

      </tr>

       <tr>

        <td>借阅次数</td>

        <td><input type="text" name="borrowSum"/>*</td>

      </tr>

      <tr>

        <td/>

        <td><input type="submit" value="增加"/>

            <input type="reset" value="重写"/>

        </td>

      </tr>

    </form>

   </table> 

   <jsp:useBean id="book" scope="request" class="beans.new_booklistBean"/>

    <jsp:setProperty name="book" property="*"/>

   <jsp:useBean id="conn" scope="session" class="beans.new_libraryDBean"/>

   <%

     if(book.getbookID()!=0&&conn.insertRecord(book))

       out.println("<hr>添加记录成功");    

   %>

  </p>

</body>

</html>

ßJSPdl-4à

<%@ page contentType="text/html; charset=gb2312" language="java"%>

<%@ page import="beans.new_booklistBean,beans.ConnBean"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title>删除图书记录</title>

</head>

<body> 

  <p>

  <jsp:useBean id="conn" scope="session" class="beans.new_libraryDBean"/>

  <form action="" method="post">

  <table border="1"> 

     <caption>图书列表</caption>

     <tr>

       <th>图书编号</th>

       <th>书名</th>

       <th>作者</th>

       <th>书类</th>

       <th>书架号</th>

       <th>价格</th>

       <th>借阅次数</th>

       <th>选择</th>

     </tr>    

     <%

      new_booklistBean[] records=conn.getAllRecords();

      if(records!=null){

         for(int i=0;i<records.length;i++){

          out.println("<tr>");

          out.println("<td>"+records[i].getbookID()+"</td>");

          out.println("<td>"+records[i].getbookName()+"</td>");

          out.println("<td>"+records[i].getauother()+"</td>");

          out.println("<td>"+records[i].getbookType()+"</td>");

          out.println("<td>"+records[i].getbookCase()+"</td>");

          out.println("<td>"+records[i].getprice()+"</td>");

          out.println("<td>"+records[i].getborrowSum()+"</td>");

     %>

         <td>

           

              <input type="checkbox" name="<%="check"+i%>" value="<%=i%>" />

                    

         </td>

     <%      

          out.println("</tr>");

         }

        }

     %>       

   </table>

   <input type="submit" value="提交"/> 

   </form>

   <%

     String[] check=new String[records.length];

     for(int i=0;i<check.length;i++){

       check[i]=request.getParameter("check"+i);

       if(check[i]==null)

         check[i]="";

         if(check[i].equals(""+i)){

           if(conn.deleteRecord(records[i])){

             out.println("<hr>删除成功");

             response.setHeader("refresh","1");

           }

         }      

     }

   %>

  </p>

</body>

</html>

与系统相关的bean代码:

New_booklistBean

package beans;

public class new_booklistBean {

  private String bookID;//表示书编号;

  private String bookName;//书名;

  private String auother;//作者名;

  private int bookType;//书类;

  private int bookCase;//书架号;

  private int price;//书价;

  private int borrowSum;//书被借的次数;

  public String getbookID() {

         return bookID;

  }

  public void setbookID(String bookID) {

         this.bookID = bookID;

  }

  public String getbookName() {

         return bookName;

  }

  public void setbookName(String bookName) {

         this.bookName = bookName;

  }

  public String getauother() {

         return auother;

  }

  public void setauother(String auother) {

         this.auother = auother;

  }

  public int getbookType() {

         return bookType;

  }

  public void setbookType(int bookType) {

         this.bookType = bookType;

  }

  public int getbookCase() {

         return bookCase;

  }

  public void setbookCase(int bookCase) {

         this.bookCase = bookCase;

  }

  public int getprice() {

                   return price;

  }

           public void setprice(int price) {

                   this.price = price;

  }

           public int getborrowSum() {

                            return borrowSum;

  }

                     public void setborrowSum(int borrowSum) {

                            this.borrowSum = borrowSum;

  }

}

ConnBean

package beans;

import java.sql.*;              //导入jdbc;

public class ConnBean {

   private String driver="sun.jdbc.odbc.JdbcOdbcDriver";//默认驱动程序为jdbc-odbc驱动;

   private String jdbcurl="jdbc:odbc:";//jdbcurl

   private String database="new_booklist";//数据库或数据源

   private String userName="root";//用户名

   private String password="123456";//密码

   private Connection connection=null;

   public Connection getConnection() {

            try{

                        Class.forName(driver);//注册驱动程序;   

                        connection=DriverManager.getConnection("jdbc:odbc:new_booklist","","");//建立连接;  

                      }catch(ClassNotFoundException e1){

                               e1.printStackTrace();

                      }catch(SQLException e2){

                               e2.printStackTrace();

                      }         

            return connection;

   }  

   public void closeConnection(Connection connection){//关闭连接;

            try{

                      if(connection!=null)

                               connection.close();

                      connection=null;

            }catch(SQLException e3){

                      e3.printStackTrace();

            }

   }

   public void closePstmt(PreparedStatement pstmt){//关闭执行语句;

            try{

                      if(pstmt!=null)

                               pstmt.close();

                      pstmt=null;

            }catch(SQLException e){

                      e.printStackTrace();

            }

   }

   public void closeResultSet(ResultSet rs){//关闭结果集语句;

            try{

                      if(rs!=null)

                               rs.close();

                      rs=null;

            }catch(SQLException e){

                      e.printStackTrace();

            }

   }

   public String getDriver() {//获取驱动程序

         return driver;

   }

   public void setDriver(String driver) {

         this.driver = driver;

   }  

   public String getDatabase() {

         return database;

   }

   public void setDatabase(String database) {

         this.database = database;

   }

   public String getPassword() {

         return password;

   }

   public void setPassword(String password) {

         this.password = password;

   }

   public String getJdbcurl() {

         return jdbcurl;

   }

   public void setJdbcurl(String url) {

         this.jdbcurl = url;

   }

   public String getUserName() {

         return userName;

   }

   public void setUserName(String userName) {

         this.userName = userName;

   }

}

New_libraryBean

package beans;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.util.ArrayList;

import java.util.Collection;

public class new_libraryDBean extends ConnBean{

         private Connection connection=null;

         public new_booklistBean[] getAllRecords(){//获取所有记录

                      ResultSet rs=null;

                      PreparedStatement pstmt=null;   

                      Collection list=new ArrayList();

                      try{

                               connection=getConnection();

                               pstmt=connection.prepareStatement("select * from new_booklist");//数据表new_booklist

                               rs=pstmt.executeQuery();

                               while(rs.next()){

                                        new_booklistBean new_booklist=new new_booklistBean();

                                        new_booklist.setbookID(rs.getString(1));

                                        new_booklist.setbookName(rs.getString(2));

                                        new_booklist.setauother(rs.getString(3));

                                        new_booklist.setbookType(rs.getInt(4));

                                        new_booklist.setbookCase(rs.getInt(5));

                                        new_booklist.setprice(rs.getInt(6));

                                        new_booklist.setborrowSum(rs.getInt(7));

                                        list.add(new_booklist);

                               }

                               }catch(SQLException e){

                                        e.printStackTrace();

                               }finally{

                                        closePstmt(pstmt);

                                        closeConnection(connection);

                               }

                               new_booklistBean[] records=(new_booklistBean[])list.toArray(new new_booklistBean[0]);

                               return records;            

            }

            public new_booklistBean queryARecord(String sqlStr){//查询一条记录

                      ResultSet rs=null;

                      PreparedStatement pstmt=null;

                      new_booklistBean new_booklist=new new_booklistBean();

                      try{

                      connection=getConnection();

                      pstmt=connection.prepareStatement(sqlStr);

                      rs=pstmt.executeQuery();

                      if(rs.next()){

                               new_booklist.setbookID(rs.getString(1));

                               new_booklist.setbookName(rs.getString(2));

                               new_booklist.setauother(rs.getString(3));

                               new_booklist.setbookType(rs.getInt(4));

                               new_booklist.setbookCase(rs.getInt(5));

                               new_booklist.setprice(rs.getInt(6));

                               new_booklist.setborrowSum(rs.getInt(7));

                      }

                      }catch(SQLException e){

                               e.printStackTrace();

                      }finally{

                               closeResultSet(rs);

                               closePstmt(pstmt);

                               closeConnection(connection);

                      }

                      return new_booklist;

            }

            public boolean insertRecord(new_booklistBean record){//插入记录

                      PreparedStatement pstmt=null;

                      String insStr="insert into new_booklist values (?,?,?,?,?)";

                      if(record==null) return false;

                      try{

                               connection=getConnection();

                               pstmt=connection.prepareStatement(insStr);

                               pstmt.setString(1, record.getbookID());

                               pstmt.setString(2, record.getbookName());

                               pstmt.setString(3, record.getauother());

                               pstmt.setInt(4, record.getbookType());

                               pstmt.setInt(5, record.getbookCase());

                               pstmt.setInt(6, record.getprice());

                               pstmt.setInt(7, record.getborrowSum());

                               pstmt.execute();

                             }catch(SQLException e){

                                      e.printStackTrace();

                             }finally{

                                      closePstmt(pstmt);

                                      closeConnection(connection);;

                             }

                             return true;

            }

            public boolean deleteRecord(new_booklistBean record){//删除记录;

                      PreparedStatement pstmt=null;

                      String delStr="delete from new_booklist where bookID=?";

                      if(record==null) return false;

                      try{

                               getConnection();

                               pstmt=connection.prepareStatement(delStr);

                               pstmt.setString(1, record.getbookID());

                               pstmt.execute();

                      }catch(SQLException e){

                               e.printStackTrace();

                      }finally{

                               closePstmt(pstmt);

                               closeConnection(connection);

                      }

                      return true;

            }

            public boolean updateRecord(new_booklistBean ro,new_booklistBean rn){//修改记录

                      if(ro==null||rn==null) return false;

                      PreparedStatement pstmt=null;

                      String updStr="update new_booklist set bookName=?,auother=?,bookType=?,bookCase=?,price=?,borrowSum=?";

                      updStr=updStr+" where bookID="+ro.getbookID();

                      try{

                               connection=getConnection();

                               pstmt=connection.prepareStatement(updStr);

                               pstmt.setString(1,rn.getbookName());

                               pstmt.setString(2, rn.getauother());

                               pstmt.setInt(3, rn.getbookType());

                               pstmt.setInt(4, rn.getbookCase());

                               pstmt.setInt(5, rn.getprice());

                               pstmt.setInt(6, rn.getborrowSum());

                               pstmt.executeUpdate();

                      }catch(SQLException e){

                               e.printStackTrace();

                      }finally{

                               closePstmt(pstmt);

                               closeConnection(connection);

                      }

                      return true;

            }

}

相关推荐