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