您的位置:首页 > 编程语言

图书管理系统代码补上!~~~~~~(是初学者见谅哦~)

2015-06-03 22:25 405 查看
(1)验证码主要代码:

<%@ pagecontentType="image/jpeg;charset=GBK"%>

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

<%@ page import="java.awt.image.*"%>

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

<%@ pageimport="javax.imageio.*"%><!-- 在指定的数值范围内生成一种随机色 -->

<%!Color getRandColor(int lower, int upper) {

  //创建随机数类变量

  Random random =new Random();  //防止数值范围出界

  lower = (lower< 0 || lower > 255) ? 0 : lower;

  upper = (upper< 0 || upper > 255) ? 0 : upper; //生成红绿蓝三种基本色的随机数值

  int r= lower + random.nextInt(upper - lower);

  int g = lower + random.nextInt(upper -lower);

  int b = lower + random.nextInt(upper -lower);  //返回生成的随机色

  return new Color(r, g, b);

 }%><%

 //图片的初始大小

 int width = 60;

 int height = 20; //创建缓冲图片

 BufferedImage image = new BufferedImage(width,height,

   BufferedImage.TYPE_INT_RGB); //获取缓冲图片的绘图类变量

 Graphics g = image.getGraphics(); //设置前景色(为较亮的一种随机色)

 g.setColor(getRandColor(200, 255)); //使用该色填充背景

 g.fillRect(0, 0, width, height); //创建随机数类变量

 Random random = new Random(); //产生100条具有随机位置、随机长度和随机颜色的干扰直线,使图象中的认证码不易被其它程序识别出来

 for (int i = 0; i < 100; i++) {

  //设置前景色(为灰度中等的一种随机色)

  g.setColor(getRandColor(150, 200));  //获取随机位置

  int x1 = random.nextInt(width);

  int y1 = random.nextInt(height);  //获取随机长度

  int x2 = random.nextInt(10);

  int y2 = random.nextInt(10);  //绘制直线

  g.drawLine(x1, y1, x1 + x2, y1 + y2);

 } //设定字体

 g.setFont(new Font("Times NewRoman", Font.PLAIN, 18)); //获取1000到9999之间的四位随机整数

 int randomInt = 1000 + random.nextInt(9000);//转换为字符串

 String randomStr = String.valueOf(randomInt);//循环遍历字符串每个字符

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

  //设置前景色(为较暗的一种随机色)

  g.setColor(getRandColor(0, 100));  //显示一个字符

  g.drawString(randomStr.substring(i, i + 1),10 * i + 10, 15);

 } // 将随机数存储在会话属性中,便于其他网页程序判断是否验证成功

 session.setAttribute("randomStr",randomStr); //输出随机数图片

 ImageIO.write(image, "JPEG",response.getOutputStream());

%>

 

(在刷新登录页面时随机换验证码)

(2)留言板主要代码:(messagelist.jsp)

<%@page contentType="text/html" pageEncoding="UTF-8"%>

 

<html>

  <head>

    <title>留言页面</title>

   

  </head>

 

  <body>

    <formaction="insermessage.jsp" method="post">

    <tableborder="0"width="238"height="252">

    <tr><tdalign="right'valign="top">我要留言:</td>

    <td colspan="2">

    <textareaname="userBasicInfo"rows="5"cols="50"></textarea></td></tr>

   <tr align="center">

   <td colspan="2">

   <p><a href="index_tushu.jsp"target="right">返回本页</a></p>

   <p style="color:pink">

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

   <input type="reset"value="取消">

   </td>

   </tr>

    </table></form>

  </body>

</html>

 

(1)管理员登录代码:

<%@ page language="java"import="java.util.*" pageEncoding="UTF-8"%>

 

<html>

<head>

    <title>管理员登陆界面2</title>

 

 

</head>

 

<body>

<%

request.setCharacterEncoding("UTF-8");

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

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

  

if(name.equals("yanyuting")&&pwd.equals("123456")){

  response.sendRedirect("index_tushu2.jsp");

   }

   else{

   out.println("登录失败!");

   }

   %>

  </body>

</html>

 

(2)注册相关代码:

<%@page contentType="text/html" pageEncoding="UTF-8"%>

 

<html>

  <head>

    <title>用户注册页面</title>

   

  </head>

 

  <body>

    <form action="zhuce_1.jsp"method="post">

    <tableborder="0"width="238"height="252">

    <tr><td>姓名</td><td><inputtype="text"name="name"></td></tr>

    <tr><td>密码</td><td><inputtype="text"name="mima"></td></tr>

    <tr><td>再次输入密码</td><td><inputtype="text"name="zaicimima"></td></tr>

   

    <tr><td>邮箱</td><td><inputtype="text"name="youxiang"></td></tr>

    <tr><td>电话</td><td><inputtype="text"name="dianhua"></td></tr>

   <tr align="center">

   <td colspan="2">

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

   <input type="reset"value="取消">

   </td>

   </tr>

    </table></form>

  </body>

</html>

执行主要代码:

<%StringdriverName="com.mysql.jdbc.Driver";

    

     String userName="root";

     String userPwd="123456";

     String dbName="test";

     Stringurl1="jdbc:mysql://localhost:3306/"+dbName;

     Stringurl2="?user="+userName+"&password="+userPwd;

     Stringurl3="&useUnicode=true&characterEncoding=UTF-8";

     String url=url1+url2+url3;

     Class.forName(driverName);

     Connectionconn=DriverManager.getConnection(url);

     String sql="Insert intozhuce(name,mima,zaicimima,youxiang,dianhua)values(?,?,?,?,?)";

     PreparedStatementpstmt=conn.prepareStatement(sql);

    request.setCharacterEncoding("UTF-8");

   Stringname=request.getParameter("name");

    Stringmima=request.getParameter("mima");

     Stringzaicimima=request.getParameter("zaicimima");

   

    

   Stringyouxiang=request.getParameter("youxiang");

   float dianhua=Float.parseFloat(request.getParameter("dianhua"));

   

     pstmt.setString(1,name);

     pstmt.setString(2,mima);

      pstmt.setString(3,zaicimima);

    

      pstmt.setString(4,youxiang);

      pstmt.setFloat(5,dianhua);

      int n=pstmt.executeUpdate();

      if(n==1){%>数据插入操作成功<br><metahttp-equiv="refresh"content="3;url=index_tushu.jsp"/><%}

      else{%>数据插入操作失败<br><metahttp-equiv="refresh"content="3;url=index1.jsp"/><%}

      if(pstmt!=null){pstmt.close();}

      if(conn!=null){conn.close();}

     %>

 

(3)普通用户主页

<%@ page language="java"import="java.sql.*" pageEncoding="utf-8"%>

<styletype="text/css">

<!--

.STYLE1{

 color: #990033;

 font-weight: bold;

}

-->

</style>

<style>

a{TEXT-DECORATION:none}a:hover{TEXT-DECORATION:underline}.STYLE2{color:

#000000}

</style>

</head>

<body>

<tablewidth="1300" border="0" bordercolor="#FFFFFF"bgcolor="#000000">

  <tr>

    <td height="112"colspan="7"><img src="2.jpg" width="1300"height="142" /></td>

  </tr>

  <tr>

    <td width="200"height="0" bgcolor="#CCFF00"><divalign="center"><span

class="STYLE1">图书馆管理系统欢迎你</span></div></td>

    <td width="100"bgcolor="#009933"><divalign="center"><strong><a href="main.jsp"

class="STYLE2">首页</a></strong></div></td>

  

    <td width="100"bgcolor="#009933"><divalign="center"><strong><ahref="find_book_3_tijiao.jsp"

    class="STYLE2">图书查询</a></strong></div></td>

    <td width="100"bgcolor="#009933"><divalign="center"><strong><ahref="jieyue.jsp"class="STYLE2">图书借阅</a>

<
ad49
p></strong></div></td>
    <td width="100"bgcolor="#009933"><divalign="center"><strong><ahref="guihuan.jsp"class="STYLE2">图书归还</a>

</strong></div></td>

    <td width="100"bgcolor="#009933"><divalign="center"><strong><a

href="messagelist.jsp"class="STYLE2">留言板</a></strong></div></td>

    <td width="100"bgcolor="#009933"><divalign="center"><strong><a href="login.jsp"

class="STYLE2">退出系统</a></strong></div></td>

  </tr>

</table>

</body>

</html>

 

(4)借阅页面主要代码:

<formaction="jieyue_2.jsp" method="post">

    <%StringdriverName="com.mysql.jdbc.Driver";

    String userName="root";

     String userPwd="123456";

     String dbName="test";

     Stringurl1="jdbc:mysql://localhost:3306/"+dbName;

     Stringurl2="?user="+userName+"&password="+userPwd;

     Stringurl3="&useUnicode=true&characterEncoding=UTF-8";

     String url=url1+url2+url3;

     Class.forName(driverName);

     Connectionconn=DriverManager.getConnection(url);

     String sql="select * fromlianxi";

     PreparedStatement pstmt=conn.prepareStatement(sql);

     ResultSet rs=pstmt.executeQuery();

     rs.last();

     %>

     <tableborder="2"bgcolor="ccceee"width="650">

    <trbgcolor="CCCCCC"align="center">

    <td>勾选图书</td><td>图书号</td><td>图书名</td><td>作者</td>

    <td>价格</td><td>备注字段</td></tr>

    <%rs.beforeFirst();

    while(rs.next()){

     %>

     <tr align="center">

     <td><inputtype="checkbox"name="box1"value="<%=rs.getString("name")%>"></td>

    <td><%=rs.getString("id") %></td>

    <td><%=rs.getString("name") %></td>

     <td><%=rs.getString("writer")%></td>

    <td><%=rs.getString("price") %></td>

    <td><%=rs.getFloat("qita") %></td></tr>

     <%}

    %>

     </table>

     </center>

     

     <%if(rs!=null){rs.close(); }

     if(pstmt!=null){pstmt.close();}

     if(conn!=null){conn.close();}

     %> <br>

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

     <input type="reset"value="重置">

     <br><br>

     备注:每次只能借阅一本图书

     </form>

 

退出系统页面为login.jsp

首页为main.jsp

(5)用户登录页面主要代码:

<body><divalign="center"><!-- 登录表单 -->

<h1><fontcolor="#FF0000"><strong>用户登录</strong></font></h1>

<formname="form" method="post"action="index1_1.jsp">

<table>

 <tr>

  <tdalign="right"><strong>用户名:</strong></td>

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

 </tr>

 <tr>

  <td align="right"><strong>密码:</strong></td>

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

 </tr>

 <tr>

  <tdalign="right"><strong>随机验证码:</strong></td>

  <td><input type="text"name="validatingString" size="10"> <img

   src="randomImage.jsp"align="top"/></td>

 </tr>

 <tr>

  <td colspan="2"align="center"><input type="submit"name="Submit"

   value="提交">    <input type="reset" name="reset"

   value="重置"></td>

  

 </tr>

</table><p><ahref="zhuce.jsp"target="right">新用户注册</a></p>

   <p><a href="guanliyuan.jsp"target="left">管理员登陆</a></p>

</form>

</div></body>

 

       (8)图书归还主要代码:

guihuan.jsp:

<%@ page language="java"pageEncoding="UTF-8"%>

 

<html>

 <head><title>  用户还书界面1</title>

 

 </head>

 

 <body>

 请选择所还书籍<hr width="100%" size="3">

 <form action="guihuan_1.jsp" method="post">

   书名:<input type="text"name="name">

 <br><br>

 

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

     <input type="reset"value="取消">

  </form>

  </body>

  </html>

 

连接数据库主要代码:

<%String driverName="com.mysql.jdbc.Driver";

    

     String userName="root";

     String userPwd="123456";

     String dbName="test";

     Stringurl1="jdbc:mysql://localhost:3306/"+dbName;

     Stringurl2="?user="+userName+"&password="+userPwd;

     String url3="&useUnicode=true&characterEncoding=UTF-8";

     String url=url1+url2+url3;

     Class.forName(driverName);

     Connectionconn=DriverManager.getConnection(url);

    request.setCharacterEncoding("UTF-8");

     Stringname=request.getParameter("name");

   

     String s="1 =1";

     if(!name.equals(""))s=s+"and name='"+name+"'";

  

      String sql="delete from book_use1where "+s;  

       PreparedStatementpstmt=conn.prepareStatement(sql);

      int n=pstmt.executeUpdate();

      if(n>=1){%>数据删除操作成功<br><%}

      else{%>数据删除操作失败<br><%

      }

 

      if(pstmt!=null){pstmt.close();}

      if(conn!=null){conn.close();} 

     %> 

 

表book_use1

该归还界面为删除操作,从存在book_use1里的数据中进行操作

实现思路:

1. 实现登录页面操作,包括index1.jsp和index1_1.jsp  实现数据库连接,建表user2包括id和pwd,用户在登录页面输入账号密码后进行验证,若已注册可进入主页,若无法对应,则登录失败,返回登录页面。

2. 注册页面:包括zhuce.jsp和zhuce_1.jsp 建表zhuce(name,mima,zaicimima,youxiang,dianhua )

新用户注册若之前没有注册过在注册成功后可直接进入用户主页,若zhuce表中已有信息,则失败,返回登录页面index1.jsp

                3.管理员页面:包括guanliyuan.jsp和guanliyuan_2.jsp   这里只设置了一个管理员,所有没有使用数据库,使用代码:if(name.equals("yanyuting")&&pwd.equals("123456")){

  response.sendRedirect("index_tushu2.jsp");

   }

  else{

  out.println("登录失败!");

   }输入成功后进入管理员页面(index_tushu_2.jsp)若失败显示“登录失败!”

4.实现主页面index_tushu.jsp及下属包括的main.jsp  find_book_3_tijiao.jsp(同图书管理中相同)   jieyue.jsp guihuan.jsp   messagelist.jsp(留言板)   login.jsp

5.借阅页面包括jieyue.jsp   jieyue_title.jsp   jieyue_left.jsp  jieyue_right.jsp   jieyue_1.jsp   jieyue_2.jsp

主要页面包括jieyue_1.jsp和jieyue_2.jsp(实现数据库连接) 这里使用图书管理表lianxi 和表book_use1

借阅图书要使用之前登录页面信息

6.归还页面:使用表book_use1  同样需要使用用户登录信息  进行删除图书操作

7.留言板:建表message(textflie)主要代码:

StringdriverName="com.mysql.jdbc.Driver";

    

    String userName="root";

    String userPwd="123456";

    String dbName="test";

    String url1="jdbc:mysql://localhost:3306/"+dbName;

    Stringurl2="?user="+userName+"&password="+userPwd;

    String url3="&useUnicode=true&characterEncoding=UTF-8";

    String url=url1+url2+url3;

    Class.forName(driverName);

    Connection conn=DriverManager.getConnection(url);

    String sql="Insert into message(textflie)values(?)";

    PreparedStatement pstmt=conn.prepareStatement(sql);

   request.setCharacterEncoding("UTF-8");

  

   String textfile=request.getParameter("textflie");

    pstmt.setString(1,textfile);

     

    int n=pstmt.executeUpdate();

     if(n==1){%>操作成功<br><%}

     else{%>操作失败<br><%}

     if(pstmt!=null){pstmt.close();}

     if(conn!=null){conn.close() ;}

 

 

 

8.管理员登录成功后进入管理员操作主页面,index_tushu2.jsp包括读者管理reader.jsp reader_add.jsp     图书管理操作:包括删除,修改,添加,查找操作

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息