用Servlet实现简单的图书管理系统

来源:互联网 发布:python 结构体数组 编辑:程序博客网 时间:2024/05/22 03:38

用Servlet实现简单的图书管理系统

基本思路:通过servlet实现业务功能, jsp负责页面展示

1. 准备知识:

  • 如何通过jdbc连接数据库
    一般通过java代码连接数据库需要两个类 Connection、PrepareStatement。
    Connection通过数据库驱动获得数据库连接, ParepareStatement则通过Connection的parepareStatement(sql)方法执行sql语句获取对象。代码如下:
        Connection conn=null;        PreparedStatement pstmt=null;        try {            Class.forName("com.mysql.jdbc.Driver");        } catch (ClassNotFoundException e) {            e.printStackTrace();        }    try{    conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/bookdb","root","123456");            String sql="select * from book";            pstmt=conn.prepareStatement(sql);       

如果对数据库仅进行增删改则需要以上两个类即可连接数据库并执行sql代码,但是如果还要查询这两个是不够的, 还需要一个结果集来存放从数据库中查询的数据如下代码:

        ResultSet rs=pstmt.executeQuery();            while(rs.next()){                Book b=new Book();                b.setCopyright(rs.getString("copyright"));                b.setEditionNumber(rs.getInt("editionNumber"));                b.setImageFile(rs.getString("imageFile"));                b.setIsbn(rs.getString("isbn"));                b.setPrice(rs.getDouble("price"));                b.setPublisherID(rs.getInt("publisherID"));                b.setTitle(rs.getString("title"));                allBook.add(b);

还需要强调的一点是如果是查询的话prepareStatement的executeQuery方法会返回一个ResultSet类型的结果集; 如果是增删改,则executeUpdate方法会返回修改行数。以上就是jdbc链接数据库的一些小知识点。

  • 怎样使用sevlet
    需要注意的有以下几点:
    1. 新建sevlet时勾选方法讲究实用性
    2.其他的默认即可,当然也可以自己设置。如果是默认的话, 我们可以再WEB_INF文件夹下的web.xml文件中修改如下:
<?xml version="1.0" encoding="UTF-8"?><web-app version="2.5"     xmlns="http://java.sun.com/xml/ns/javaee"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  <display-name></display-name>   <servlet>    <description>This is the description of my J2EE component</description>    <display-name>This is the display name of my J2EE component</display-name>    <servlet-name>DoLogin</servlet-name>    <servlet-class>cn.edu.bzu.Servlet.DoLogin</servlet-class>  </servlet>  <servlet>    <description>This is the description of my J2EE component</description>    <display-name>This is the display name of my J2EE component</display-name>    <servlet-name>DoRegister</servlet-name>    <servlet-class>cn.edu.bzu.Servlet.DoRegister</servlet-class>  </servlet>  <servlet>    <description>This is the description of my J2EE component</description>    <display-name>This is the display name of my J2EE component</display-name>    <servlet-name>DoDel</servlet-name>    <servlet-class>cn.edu.bzu.Servlet.DoDel</servlet-class>  </servlet>  <servlet>    <description>This is the description of my J2EE component</description>    <display-name>This is the display name of my J2EE component</display-name>    <servlet-name>DoUpdate</servlet-name>    <servlet-class>cn.edu.bzu.Servlet.DoUpdate</servlet-class>  </servlet>  <servlet>    <description>This is the description of my J2EE component</description>    <display-name>This is the display name of my J2EE component</display-name>    <servlet-name>DoAdd</servlet-name>    <servlet-class>cn.edu.bzu.Servlet.DoAdd</servlet-class>  </servlet>  <servlet-mapping>    <servlet-name>DoLogin</servlet-name>    <url-pattern>/DoLogin</url-pattern>  </servlet-mapping>  <servlet-mapping>    <servlet-name>DoRegister</servlet-name>    <url-pattern>/DoRegister</url-pattern>  </servlet-mapping>  <servlet-mapping>    <servlet-name>DoDel</servlet-name>    <url-pattern>/DoDel</url-pattern>  </servlet-mapping>  <servlet-mapping>    <servlet-name>DoUpdate</servlet-name>    <url-pattern>/DoUpdate</url-pattern>  </servlet-mapping>  <servlet-mapping>    <servlet-name>DoAdd</servlet-name>    <url-pattern>/DoAdd</url-pattern>  </servlet-mapping>  <welcome-file-list>    <welcome-file>welcome.jsp</welcome-file>  </welcome-file-list></web-app>

我们手动配置servlet基本上就是配置< servlet >标签和< servlet-mapping >标签。
< servlet >标签配置sevlet类的资源位置, 即在包中的位置
< servlet-mapping >标签则是配置访问sevlet的地址
需要注意的是两个标签的中的< servlet-name >一定要一致!

  • jsp页面就不多做赘述了, 当然了页面显示也html页面来显示。

代码(直接上链接):

  • 点我进入下载页面
0 0