java第05次作业
This commit is contained in:
		
							parent
							
								
									3c8db183a5
								
							
						
					
					
						commit
						19242725b7
					
				
							
								
								
									
										88
									
								
								java/com/dao/BookDao.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										88
									
								
								java/com/dao/BookDao.java
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,88 @@
 | 
			
		||||
package com.dao;
 | 
			
		||||
 | 
			
		||||
import java.sql.*;
 | 
			
		||||
import javax.sql.*;
 | 
			
		||||
import javax.naming.*;
 | 
			
		||||
import com.demo.BookBean;
 | 
			
		||||
 | 
			
		||||
public class BookDao {
 | 
			
		||||
    private static InitialContext context = null;
 | 
			
		||||
    private DataSource dataSource = null;
 | 
			
		||||
    
 | 
			
		||||
    public BookDao() {
 | 
			
		||||
        try {
 | 
			
		||||
            if (context == null) {
 | 
			
		||||
                context = new InitialContext();
 | 
			
		||||
            }
 | 
			
		||||
            dataSource = (DataSource)context.lookup("java:comp/env/jdbc/demo");
 | 
			
		||||
        } catch (NamingException e) {
 | 
			
		||||
            e.printStackTrace();
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    // 根据书号查询图书信息
 | 
			
		||||
    public BookBean searchBook(String bookid) {
 | 
			
		||||
        Connection dbconn = null;
 | 
			
		||||
        PreparedStatement pstmt = null;
 | 
			
		||||
        ResultSet rst = null;
 | 
			
		||||
        BookBean book = new BookBean();
 | 
			
		||||
        
 | 
			
		||||
        try {
 | 
			
		||||
            dbconn = dataSource.getConnection();
 | 
			
		||||
            pstmt = dbconn.prepareStatement("SELECT * FROM books WHERE bookid=?");
 | 
			
		||||
            pstmt.setString(1, bookid);
 | 
			
		||||
            rst = pstmt.executeQuery();
 | 
			
		||||
            
 | 
			
		||||
            if (rst.next()) {
 | 
			
		||||
                book.setBookid(rst.getString("bookid"));
 | 
			
		||||
                book.setTitle(rst.getString("title"));
 | 
			
		||||
                book.setAuthor(rst.getString("author"));
 | 
			
		||||
                book.setPublisher(rst.getString("publisher"));
 | 
			
		||||
                book.setPrice(rst.getDouble("price"));
 | 
			
		||||
                return book;
 | 
			
		||||
            } else {
 | 
			
		||||
                return null;
 | 
			
		||||
            }
 | 
			
		||||
        } catch (SQLException se) {
 | 
			
		||||
            se.printStackTrace();
 | 
			
		||||
            return null;
 | 
			
		||||
        } finally {
 | 
			
		||||
            try {
 | 
			
		||||
                if (rst != null) rst.close();
 | 
			
		||||
                if (pstmt != null) pstmt.close();
 | 
			
		||||
                if (dbconn != null) dbconn.close();
 | 
			
		||||
            } catch (SQLException se) {
 | 
			
		||||
                se.printStackTrace();
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    // 插入一本图书记录
 | 
			
		||||
    public boolean insertBook(BookBean book) {
 | 
			
		||||
        Connection dbconn = null;
 | 
			
		||||
        PreparedStatement pstmt = null;
 | 
			
		||||
        
 | 
			
		||||
        try {
 | 
			
		||||
            dbconn = dataSource.getConnection();
 | 
			
		||||
            pstmt = dbconn.prepareStatement("INSERT INTO books VALUES(?,?,?,?,?)");
 | 
			
		||||
            pstmt.setString(1, book.getBookid());
 | 
			
		||||
            pstmt.setString(2, book.getTitle());
 | 
			
		||||
            pstmt.setString(3, book.getAuthor());
 | 
			
		||||
            pstmt.setString(4, book.getPublisher());
 | 
			
		||||
            pstmt.setDouble(5, book.getPrice());
 | 
			
		||||
            
 | 
			
		||||
            int result = pstmt.executeUpdate();
 | 
			
		||||
            return result > 0;
 | 
			
		||||
        } catch (SQLException se) {
 | 
			
		||||
            se.printStackTrace();
 | 
			
		||||
            return false;
 | 
			
		||||
        } finally {
 | 
			
		||||
            try {
 | 
			
		||||
                if (pstmt != null) pstmt.close();
 | 
			
		||||
                if (dbconn != null) dbconn.close();
 | 
			
		||||
            } catch (SQLException se) {
 | 
			
		||||
                se.printStackTrace();
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										64
									
								
								java/com/demo/BookBean.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								java/com/demo/BookBean.java
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,64 @@
 | 
			
		||||
package com.demo;
 | 
			
		||||
 | 
			
		||||
public class BookBean {
 | 
			
		||||
    // 定义私有属性
 | 
			
		||||
    private String bookid;
 | 
			
		||||
    private String title;
 | 
			
		||||
    private String author;
 | 
			
		||||
    private String publisher;
 | 
			
		||||
    private double price;
 | 
			
		||||
 | 
			
		||||
    // 无参数构造方法
 | 
			
		||||
    public BookBean() {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // 带参数构造方法
 | 
			
		||||
    public BookBean(String bookid, String title, String author, String publisher, double price) {
 | 
			
		||||
        this.bookid = bookid;
 | 
			
		||||
        this.title = title;
 | 
			
		||||
        this.author = author;
 | 
			
		||||
        this.publisher = publisher;
 | 
			
		||||
        this.price = price;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // Getter和Setter方法
 | 
			
		||||
    public String getBookid() {
 | 
			
		||||
        return bookid;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setBookid(String bookid) {
 | 
			
		||||
        this.bookid = bookid;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getTitle() {
 | 
			
		||||
        return title;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setTitle(String title) {
 | 
			
		||||
        this.title = title;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getAuthor() {
 | 
			
		||||
        return author;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setAuthor(String author) {
 | 
			
		||||
        this.author = author;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getPublisher() {
 | 
			
		||||
        return publisher;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setPublisher(String publisher) {
 | 
			
		||||
        this.publisher = publisher;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public double getPrice() {
 | 
			
		||||
        return price;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setPrice(double price) {
 | 
			
		||||
        this.price = price;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										64
									
								
								java/com/demo/BookInsertServlet.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								java/com/demo/BookInsertServlet.java
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,64 @@
 | 
			
		||||
package com.demo;
 | 
			
		||||
 | 
			
		||||
import java.io.*;
 | 
			
		||||
import javax.servlet.*;
 | 
			
		||||
import javax.servlet.http.*;
 | 
			
		||||
import com.demo.BookBean;
 | 
			
		||||
import com.dao.BookDao;
 | 
			
		||||
import javax.servlet.annotation.WebServlet;
 | 
			
		||||
 | 
			
		||||
@WebServlet("/BookInsertServlet")
 | 
			
		||||
public class BookInsertServlet extends HttpServlet {
 | 
			
		||||
    public void doPost(HttpServletRequest request, HttpServletResponse response)
 | 
			
		||||
            throws ServletException, IOException {
 | 
			
		||||
        // 设置请求和响应的字符编码
 | 
			
		||||
        request.setCharacterEncoding("UTF-8");
 | 
			
		||||
        response.setCharacterEncoding("UTF-8");
 | 
			
		||||
        response.setContentType("text/html;charset=UTF-8");
 | 
			
		||||
        
 | 
			
		||||
        String message = null;
 | 
			
		||||
        try {
 | 
			
		||||
            // 获取并验证请求参数
 | 
			
		||||
            String bookid = request.getParameter("bookid");
 | 
			
		||||
            String title = request.getParameter("title");
 | 
			
		||||
            String author = request.getParameter("author");
 | 
			
		||||
            String publisher = request.getParameter("publisher");
 | 
			
		||||
            String priceStr = request.getParameter("price");
 | 
			
		||||
            
 | 
			
		||||
            // 参数验证
 | 
			
		||||
            if (bookid == null || title == null || author == null || 
 | 
			
		||||
                publisher == null || priceStr == null || 
 | 
			
		||||
                bookid.trim().isEmpty() || title.trim().isEmpty() || 
 | 
			
		||||
                author.trim().isEmpty() || publisher.trim().isEmpty() || 
 | 
			
		||||
                priceStr.trim().isEmpty()) {
 | 
			
		||||
                message = "请填写完整的图书信息!";
 | 
			
		||||
                request.setAttribute("result", message);
 | 
			
		||||
                request.getRequestDispatcher("/bookInsert.jsp").forward(request, response);
 | 
			
		||||
                return;
 | 
			
		||||
            }
 | 
			
		||||
            
 | 
			
		||||
            float price = Float.parseFloat(priceStr);
 | 
			
		||||
            
 | 
			
		||||
            // 创建图书对象
 | 
			
		||||
            BookBean book = new BookBean(bookid, title, author, publisher, price);
 | 
			
		||||
            BookDao bookdao = new BookDao();
 | 
			
		||||
            boolean success = bookdao.insertBook(book);
 | 
			
		||||
            
 | 
			
		||||
            message = success ? "成功插入一条记录!" : "插入记录错误!";
 | 
			
		||||
            
 | 
			
		||||
        } catch (NumberFormatException e) {
 | 
			
		||||
            message = "价格格式不正确!";
 | 
			
		||||
        } catch (Exception e) {
 | 
			
		||||
            message = "系统错误:" + e.getMessage();
 | 
			
		||||
            e.printStackTrace();
 | 
			
		||||
        }
 | 
			
		||||
        
 | 
			
		||||
        request.setAttribute("result", message);
 | 
			
		||||
        request.getRequestDispatcher("/bookInsert.jsp").forward(request, response);
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    public void doGet(HttpServletRequest request, HttpServletResponse response)
 | 
			
		||||
            throws ServletException, IOException {
 | 
			
		||||
        doPost(request, response);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										62
									
								
								java/com/demo/BookQueryServlet.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								java/com/demo/BookQueryServlet.java
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,62 @@
 | 
			
		||||
package com.demo;
 | 
			
		||||
 | 
			
		||||
import java.io.IOException;
 | 
			
		||||
import javax.servlet.*;
 | 
			
		||||
import javax.servlet.annotation.WebServlet;
 | 
			
		||||
import javax.servlet.http.*;
 | 
			
		||||
import java.sql.*;
 | 
			
		||||
 | 
			
		||||
@WebServlet("/BookQueryServlet")
 | 
			
		||||
public class BookQueryServlet extends HttpServlet {
 | 
			
		||||
    private static final long serialVersionUID = 1L;
 | 
			
		||||
    
 | 
			
		||||
    // 数据库连接信息常量
 | 
			
		||||
//    private static final String DB_URL = "jdbc:mysql://47.242.181.61:33060/demo?useSSL=false&serverTimezone=UTC";
 | 
			
		||||
    private static final String DB_URL = "jdbc:mysql://47.242.181.61:33060/demo?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true";
 | 
			
		||||
    private static final String DB_USER = "root";
 | 
			
		||||
    private static final String DB_PASSWORD = "lotus";
 | 
			
		||||
 | 
			
		||||
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
 | 
			
		||||
            throws ServletException, IOException {
 | 
			
		||||
        
 | 
			
		||||
        String bookid = request.getParameter("bookid");
 | 
			
		||||
        if (bookid == null || bookid.trim().isEmpty()) {
 | 
			
		||||
            request.setAttribute("error", "图书ID不能为空");
 | 
			
		||||
            request.getRequestDispatcher("/error.jsp").forward(request, response);
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        try (Connection conn = getConnection();
 | 
			
		||||
             PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM books WHERE bookid = ?");
 | 
			
		||||
        ) {
 | 
			
		||||
            pstmt.setString(1, bookid);
 | 
			
		||||
            
 | 
			
		||||
            try (ResultSet rst = pstmt.executeQuery()) {
 | 
			
		||||
                if (rst.next()) {
 | 
			
		||||
                    BookBean book = new BookBean();
 | 
			
		||||
                    book.setBookid(rst.getString("bookid"));
 | 
			
		||||
                    book.setTitle(rst.getString("title"));
 | 
			
		||||
                    book.setAuthor(rst.getString("author"));
 | 
			
		||||
                    book.setPrice(rst.getFloat("price"));
 | 
			
		||||
                    book.setPublisher(rst.getString("publisher"));
 | 
			
		||||
                    
 | 
			
		||||
                    request.setAttribute("book", book);
 | 
			
		||||
                    request.getRequestDispatcher("/displayBook.jsp").forward(request, response);
 | 
			
		||||
                } else {
 | 
			
		||||
                    request.setAttribute("error", "未找到ID为 " + bookid + " 的图书");
 | 
			
		||||
                    request.getRequestDispatcher("/error.jsp").forward(request, response);
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        } catch (Exception e) {
 | 
			
		||||
            String errorMsg = "数据库操作失败: " + e.getMessage();
 | 
			
		||||
            log(errorMsg, e);
 | 
			
		||||
            request.setAttribute("error", errorMsg);
 | 
			
		||||
            request.getRequestDispatcher("/error.jsp").forward(request, response);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    private Connection getConnection() throws SQLException, ClassNotFoundException {
 | 
			
		||||
        Class.forName("com.mysql.cj.jdbc.Driver");
 | 
			
		||||
        return DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										71
									
								
								java/com/demo/BookQueryServlet2.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										71
									
								
								java/com/demo/BookQueryServlet2.java
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,71 @@
 | 
			
		||||
package com.demo;
 | 
			
		||||
 | 
			
		||||
import java.io.*;
 | 
			
		||||
import java.sql.*;
 | 
			
		||||
import javax.servlet.*;
 | 
			
		||||
import javax.servlet.http.*;
 | 
			
		||||
import com.demo.BookBean;
 | 
			
		||||
import javax.sql.DataSource;
 | 
			
		||||
import javax.naming.*;
 | 
			
		||||
import javax.servlet.annotation.WebServlet;
 | 
			
		||||
 | 
			
		||||
@WebServlet("/BookQueryServlet2")
 | 
			
		||||
public class BookQueryServlet2 extends HttpServlet {
 | 
			
		||||
    /**
 | 
			
		||||
	 * 
 | 
			
		||||
	 */
 | 
			
		||||
	private static final long serialVersionUID = 1L;
 | 
			
		||||
	Connection dbconn;
 | 
			
		||||
 | 
			
		||||
    public void init() {
 | 
			
		||||
        try {
 | 
			
		||||
            Context context = new InitialContext();
 | 
			
		||||
            DataSource ds = (DataSource)context.lookup("java:comp/env/jdbc/demo");
 | 
			
		||||
            dbconn = ds.getConnection();
 | 
			
		||||
        } catch(NamingException ne) {
 | 
			
		||||
            log("数据源查找失败: " + ne);
 | 
			
		||||
        } catch(SQLException se) {
 | 
			
		||||
            log("数据库连接失败: " + se);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void doPost(HttpServletRequest request, HttpServletResponse response)
 | 
			
		||||
            throws ServletException, IOException {
 | 
			
		||||
        String bookid = request.getParameter("bookid");
 | 
			
		||||
        try {
 | 
			
		||||
            String sql = "SELECT * FROM books WHERE bookid = ?";
 | 
			
		||||
            PreparedStatement pstmt = dbconn.prepareStatement(sql);
 | 
			
		||||
            pstmt.setString(1, bookid);
 | 
			
		||||
            ResultSet rst = pstmt.executeQuery();
 | 
			
		||||
            
 | 
			
		||||
            if (rst.next()) {
 | 
			
		||||
                BookBean book = new BookBean();
 | 
			
		||||
                book.setBookid(rst.getString("bookid"));
 | 
			
		||||
                book.setTitle(rst.getString("title"));
 | 
			
		||||
                book.setAuthor(rst.getString("author"));
 | 
			
		||||
                book.setPrice(rst.getDouble("price"));
 | 
			
		||||
                book.setPublisher(rst.getString("publisher"));
 | 
			
		||||
                request.getSession().setAttribute("book", book);
 | 
			
		||||
                response.sendRedirect("/helloweb/displayBook.jsp");
 | 
			
		||||
            } else {
 | 
			
		||||
                response.sendRedirect("/helloweb/error.jsp");
 | 
			
		||||
            }
 | 
			
		||||
            
 | 
			
		||||
            rst.close();
 | 
			
		||||
            pstmt.close();
 | 
			
		||||
        } catch(SQLException e) {
 | 
			
		||||
            e.printStackTrace();
 | 
			
		||||
            response.sendRedirect("/helloweb/error.jsp");
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void destroy() {
 | 
			
		||||
        try {
 | 
			
		||||
            if (dbconn != null && !dbconn.isClosed()) {
 | 
			
		||||
                dbconn.close();
 | 
			
		||||
            }
 | 
			
		||||
        } catch(Exception e) {
 | 
			
		||||
            e.printStackTrace();
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										52
									
								
								java/com/demo/BookQueryServlet3.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								java/com/demo/BookQueryServlet3.java
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,52 @@
 | 
			
		||||
package com.demo;
 | 
			
		||||
 | 
			
		||||
import java.io.*;
 | 
			
		||||
import javax.servlet.*;
 | 
			
		||||
import javax.servlet.http.*;
 | 
			
		||||
import com.demo.BookBean;
 | 
			
		||||
import com.dao.BookDao;
 | 
			
		||||
import javax.servlet.annotation.WebServlet;
 | 
			
		||||
 | 
			
		||||
@WebServlet("/BookQueryServlet3")
 | 
			
		||||
public class BookQueryServlet3 extends HttpServlet {
 | 
			
		||||
    
 | 
			
		||||
    public void doPost(HttpServletRequest request, HttpServletResponse response)
 | 
			
		||||
            throws ServletException, IOException {
 | 
			
		||||
        // 设置请求和响应的字符编码
 | 
			
		||||
        request.setCharacterEncoding("UTF-8");
 | 
			
		||||
        response.setCharacterEncoding("UTF-8");
 | 
			
		||||
        
 | 
			
		||||
        // 获取请求参数
 | 
			
		||||
        String bookid = request.getParameter("bookid");
 | 
			
		||||
        
 | 
			
		||||
        // 参数验证
 | 
			
		||||
        if (bookid == null || bookid.trim().isEmpty()) {
 | 
			
		||||
            response.sendRedirect("/helloweb/errorPage.jsp");
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        
 | 
			
		||||
        try {
 | 
			
		||||
            // 查询图书信息
 | 
			
		||||
            BookDao bookdao = new BookDao();
 | 
			
		||||
            BookBean book = bookdao.searchBook(bookid);
 | 
			
		||||
            
 | 
			
		||||
            if (book != null) {
 | 
			
		||||
                // 将图书信息存储在会话中
 | 
			
		||||
                request.getSession().setAttribute("book", book);
 | 
			
		||||
                response.sendRedirect("/helloweb/displayBook.jsp");
 | 
			
		||||
            } else {
 | 
			
		||||
                response.sendRedirect("/helloweb/errorPage.jsp");
 | 
			
		||||
            }
 | 
			
		||||
        } catch (Exception e) {
 | 
			
		||||
            // 记录异常信息
 | 
			
		||||
            e.printStackTrace();
 | 
			
		||||
            response.sendRedirect("/helloweb/errorPage.jsp");
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    // 处理GET请求
 | 
			
		||||
    public void doGet(HttpServletRequest request, HttpServletResponse response)
 | 
			
		||||
            throws ServletException, IOException {
 | 
			
		||||
        doPost(request, response);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										13
									
								
								webapp/META-INF/context.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								webapp/META-INF/context.xml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,13 @@
 | 
			
		||||
<?xml version="1.0" encoding="utf-8"?>
 | 
			
		||||
<Context reloadable="true">
 | 
			
		||||
    <Resource
 | 
			
		||||
        name="jdbc/demo"
 | 
			
		||||
        type="javax.sql.DataSource"
 | 
			
		||||
        maxActive="4"
 | 
			
		||||
        maxIdle="2"
 | 
			
		||||
        username="root"
 | 
			
		||||
        maxWait="5000"
 | 
			
		||||
        driverClassName="com.mysql.cj.jdbc.Driver"
 | 
			
		||||
        password="lotus"
 | 
			
		||||
        url="jdbc:mysql://47.242.181.61:33060/demo?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true"/>
 | 
			
		||||
</Context>
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								webapp/WEB-INF/lib/mysql-connector-j-8.0.32.jar
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								webapp/WEB-INF/lib/mysql-connector-j-8.0.32.jar
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										21
									
								
								webapp/application.jsp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								webapp/application.jsp
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,21 @@
 | 
			
		||||
<%@ page contentType="text/html;charset=gb2312" %>
 | 
			
		||||
<% 
 | 
			
		||||
  int number = 0;
 | 
			
		||||
  Integer num =(Integer)application.getAttribute("num");
 | 
			
		||||
  if(num==null){
 | 
			
		||||
    application.setAttribute("num",new Integer(number));
 | 
			
		||||
  }
 | 
			
		||||
  else{
 | 
			
		||||
    number = num.intValue()+1;
 | 
			
		||||
    application.setAttribute("num",new Integer(number));
 | 
			
		||||
  }
 | 
			
		||||
 %>
 | 
			
		||||
<html><head><title>application example</title></head>
 | 
			
		||||
<body>
 | 
			
		||||
<center><font color="#0000ff" size="5">application对象示例</font>
 | 
			
		||||
</center>
 | 
			
		||||
<hr>
 | 
			
		||||
本页面文件的实际路径是:<br><%=application.getRealPath("application.jsp") %><br>
 | 
			
		||||
application对象中变量num的值为:<%=application.getAttribute("num") %>
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										21
									
								
								webapp/bookInsert.jsp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								webapp/bookInsert.jsp
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,21 @@
 | 
			
		||||
<%@ page contentType="text/html; charset=gb2312" %>
 | 
			
		||||
<html><head> <title>Book Insert</title>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
<h3>请输入图书信息:</h3>
 | 
			
		||||
<% if(request.getAttribute("result")!=null)
 | 
			
		||||
     out.print(request.getAttribute("result"));
 | 
			
		||||
%>
 | 
			
		||||
<form action = "bookinsert.do" method = "post">
 | 
			
		||||
 <table>
 | 
			
		||||
  <tr><td>书号</td> <td><input type="text" name="bookid" ></td></tr>
 | 
			
		||||
  <tr><td>书名</td><td><input type="text" name="title"></td></tr>      
 | 
			
		||||
  <tr><td>作者</td><td><input type="text" name="author" ></td></tr>
 | 
			
		||||
  <tr><td>出版社</td><td><input type="text" name="publisher" ></td></tr>
 | 
			
		||||
  <tr><td>单价</td><td><input type="text" name="price" ></td></tr>
 | 
			
		||||
  <tr><td><input type="submit" value="确定" ></td>
 | 
			
		||||
      <td><input type="reset" value="重置" ></td>
 | 
			
		||||
  </tr>
 | 
			
		||||
</table>
 | 
			
		||||
</form>
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										13
									
								
								webapp/bookQuery.jsp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								webapp/bookQuery.jsp
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,13 @@
 | 
			
		||||
<%@ page language="java" contentType="text/html; charset=UTF-8"
 | 
			
		||||
    pageEncoding="UTF-8"%>
 | 
			
		||||
<html>
 | 
			
		||||
<head><title>图书查询</title></head>
 | 
			
		||||
<body>
 | 
			
		||||
 <form action = "BookQueryServlet" method="post">
 | 
			
		||||
  请输入书号:
 | 
			
		||||
  <input type = "text" name="bookid" size="15">
 | 
			
		||||
  <input type = "submit" value = "确定">
 | 
			
		||||
 </form>
 | 
			
		||||
<p><a href="BookQueryServlet" >查询所有图书</a></p>
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										23
									
								
								webapp/displayBook.jsp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								webapp/displayBook.jsp
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,23 @@
 | 
			
		||||
<%@ page contentType="text/html; charset=gb2312" %>
 | 
			
		||||
<%@ page import=" com.demo.BookBean"%>
 | 
			
		||||
<jsp:useBean id="book" class="com.demo.BookBean" scope="session" />
 | 
			
		||||
 | 
			
		||||
<html><body>
 | 
			
		||||
<table border="0">
 | 
			
		||||
<tr><td>书号:</td>
 | 
			
		||||
<td><jsp:getProperty name="book" property="bookid"/></td>
 | 
			
		||||
</tr>	
 | 
			
		||||
  <tr><td>书名: </td>
 | 
			
		||||
<td><jsp:getProperty name="book" property="title"/></td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr><td>作者:</td>
 | 
			
		||||
<td><jsp:getProperty name="book" property="author"/></td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr><td>出版社:</td>
 | 
			
		||||
<td><jsp:getProperty name="book" property="publisher"/></td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr><td>价格:</td>
 | 
			
		||||
<td><jsp:getProperty name="book" property="price"/></td>
 | 
			
		||||
</tr>
 | 
			
		||||
</table>
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										4
									
								
								webapp/error.jsp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								webapp/error.jsp
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,4 @@
 | 
			
		||||
<%@ page contentType="text/html; charset=gb2312" %>
 | 
			
		||||
<html><body>
 | 
			
		||||
  该书不存在。<a href="/helloweb/bookQuery.jsp">返回</a>
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										23
									
								
								webapp/expection.jsp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								webapp/expection.jsp
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,23 @@
 | 
			
		||||
<%@ page contentType="text/html;charset=gb2312" %>
 | 
			
		||||
<%@ page isErrorPage="true" %>
 | 
			
		||||
<%@ page import="java.io.*" %>
 | 
			
		||||
 | 
			
		||||
<html>
 | 
			
		||||
<head><title>Exception Example</title></head>
 | 
			
		||||
<body>
 | 
			
		||||
<p>exception变量使用示例</p>
 | 
			
		||||
<hr size='0'>
 | 
			
		||||
<font color="#ff0000" size="-1">
 | 
			
		||||
发生了下面错误<br>
 | 
			
		||||
<% 
 | 
			
		||||
  exception.printStackTrace();
 | 
			
		||||
  StringWriter sout = new StringWriter();
 | 
			
		||||
  PrintWriter pout = new PrintWriter(sout);
 | 
			
		||||
  exception.printStackTrace(pout);
 | 
			
		||||
 %>
 | 
			
		||||
 <pre>
 | 
			
		||||
   <%= sout.toString() %>
 | 
			
		||||
 </pre>
 | 
			
		||||
 
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										27
									
								
								webapp/insertBook.jsp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								webapp/insertBook.jsp
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,27 @@
 | 
			
		||||
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
 | 
			
		||||
<!DOCTYPE html>
 | 
			
		||||
<html>
 | 
			
		||||
<head>
 | 
			
		||||
    <meta charset="UTF-8">
 | 
			
		||||
    <title>图书信息插入</title>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
    <h2>图书信息录入</h2>
 | 
			
		||||
    <form action="BookInsertServlet" method="post">
 | 
			
		||||
        书号:<input type="text" name="bookid" value="111"><br>
 | 
			
		||||
        书名:<input type="text" name="title" value="Java Web编程技术"><br>
 | 
			
		||||
        作者:<input type="text" name="author" value="沈泽刚"><br>
 | 
			
		||||
        出版社:<input type="text" name="publisher" value="清华大学出版社"><br>
 | 
			
		||||
        单价:<input type="text" name="price" value="39.00"><br>
 | 
			
		||||
        <input type="submit" value="提交">
 | 
			
		||||
    </form>
 | 
			
		||||
    
 | 
			
		||||
    <%-- 显示操作结果 --%>
 | 
			
		||||
    <% 
 | 
			
		||||
    String result = (String)request.getAttribute("result");
 | 
			
		||||
    if(result != null) {
 | 
			
		||||
        out.println("<p>" + result + "</p>");
 | 
			
		||||
    }
 | 
			
		||||
    %>
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										14
									
								
								webapp/out.jsp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								webapp/out.jsp
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,14 @@
 | 
			
		||||
<%@ page contentType="text/html;charset=gb2312" %>
 | 
			
		||||
<html><head><title>Out Example</title></head>
 | 
			
		||||
<body>
 | 
			
		||||
<h2>out对象的使用</h2>
 | 
			
		||||
<% 
 | 
			
		||||
  out.print("学习使用out对象");
 | 
			
		||||
  int buffer = out.getBufferSize();
 | 
			
		||||
  int available = out.getRemaining();
 | 
			
		||||
 %>
 | 
			
		||||
 <br>
 | 
			
		||||
 out对象的类型为:<%= out.getClass().getName() %><br>
 | 
			
		||||
 BufferSize=<%= buffer %><br>
 | 
			
		||||
 Available=<%= available %>
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										13
									
								
								webapp/request.jsp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								webapp/request.jsp
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,13 @@
 | 
			
		||||
<%@ page contentType="text/html;charset=gb2312" %>
 | 
			
		||||
<% 
 | 
			
		||||
  String remoteAddr = request.getRemoteAddr();
 | 
			
		||||
  String remoteHost = request.getRemoteHost();
 | 
			
		||||
  int serverPort = request.getServerPort();
 | 
			
		||||
 %>
 | 
			
		||||
<html>
 | 
			
		||||
<body>
 | 
			
		||||
你的IP地址为:<%=remoteAddr %><br>
 | 
			
		||||
你的主机名为:<%=remoteHost %><br>
 | 
			
		||||
服务器的端口号为:<%=serverPort %><br>
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										12
									
								
								webapp/session.jsp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								webapp/session.jsp
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,12 @@
 | 
			
		||||
<%@ page contentType="text/html;charset=gb2312" %>
 | 
			
		||||
<%@ page session="true" %>
 | 
			
		||||
<% 
 | 
			
		||||
   session.setAttribute("user","欧阳清风");
 | 
			
		||||
%>
 | 
			
		||||
 | 
			
		||||
<html>
 | 
			
		||||
<body>
 | 
			
		||||
您的会话ID是:<%=session.getId()%><br>
 | 
			
		||||
session对象中存放的变量user的值为:<%=session.getAttribute("user")%>
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										9
									
								
								webapp/syntax_error.jsp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								webapp/syntax_error.jsp
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,9 @@
 | 
			
		||||
<%@ page contentType="text/html;charset=gb2312" %>
 | 
			
		||||
<%@ page import="java.util.*" %>
 | 
			
		||||
<%@ page errorPage="exception.jsp" %>
 | 
			
		||||
 | 
			
		||||
<% 
 | 
			
		||||
  Calendar rightNow = null;
 | 
			
		||||
  
 | 
			
		||||
  //下行代码将产生NullPointerException异常
 | 
			
		||||
  rightNow.getTime(); 
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user