Java第四次作业
This commit is contained in:
parent
2ab4c681af
commit
3c8db183a5
39
java/com/demo/ExcelServlet.java
Normal file
39
java/com/demo/ExcelServlet.java
Normal file
@ -0,0 +1,39 @@
|
||||
package com.demo;
|
||||
|
||||
import java.io.*;
|
||||
import javax.servlet.*;
|
||||
import javax.servlet.http.*;
|
||||
import javax.servlet.annotation.WebServlet;
|
||||
|
||||
@WebServlet("/excel.do")
|
||||
public class ExcelServlet extends HttpServlet {
|
||||
public void doGet(HttpServletRequest request, HttpServletResponse response)
|
||||
throws ServletException, IOException {
|
||||
|
||||
// 设置响应头,告诉浏览器这是一个HTML页面
|
||||
response.setContentType("text/html;charset=gb2312");
|
||||
|
||||
// 获取输出流
|
||||
PrintWriter out = response.getWriter();
|
||||
|
||||
// 输出HTML内容
|
||||
out.println("<!DOCTYPE html>");
|
||||
out.println("<html>");
|
||||
out.println("<head>");
|
||||
out.println("<title>学生信息表</title>");
|
||||
out.println("<style>");
|
||||
out.println("table { border-collapse: collapse; width: 50%; }");
|
||||
out.println("th, td { border: 1px solid black; padding: 8px; }");
|
||||
out.println("</style>");
|
||||
out.println("</head>");
|
||||
out.println("<body>");
|
||||
out.println("<h2>学生信息表</h2>");
|
||||
out.println("<table>");
|
||||
out.println("<tr><th>学号</th><th>姓名</th><th>性别</th><th>年龄</th><th>所在系</th></tr>");
|
||||
out.println("<tr><td>95001</td><td>李勇</td><td>男</td><td>20</td><td>信息</td></tr>");
|
||||
out.println("<tr><td>95002</td><td>刘晨</td><td>女</td><td>19</td><td>数学</td></tr>");
|
||||
out.println("</table>");
|
||||
out.println("</body>");
|
||||
out.println("</html>");
|
||||
}
|
||||
}
|
||||
37
java/com/demo/GetCookie.java
Normal file
37
java/com/demo/GetCookie.java
Normal file
@ -0,0 +1,37 @@
|
||||
package com.demo;
|
||||
|
||||
import java.io.*;
|
||||
import javax.servlet.*;
|
||||
import javax.servlet.http.*;
|
||||
import javax.servlet.annotation.WebServlet;
|
||||
|
||||
@WebServlet("/GetCookie")
|
||||
public class GetCookie extends HttpServlet {
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Override
|
||||
protected void doGet(HttpServletRequest request, HttpServletResponse response)
|
||||
throws IOException, ServletException {
|
||||
|
||||
response.setContentType("text/html");
|
||||
PrintWriter out = response.getWriter();
|
||||
|
||||
out.println("<html><title>read cookies</title>");
|
||||
out.println("<body><h2>Cookies received from browser:</h2>");
|
||||
|
||||
// 获取客户端发送的所有Cookie
|
||||
Cookie[] cookies = request.getCookies();
|
||||
if (cookies != null) {
|
||||
for (Cookie cookie : cookies) {
|
||||
out.println("Name: " + cookie.getName() + ", Value: " + cookie.getValue() + "<br>");
|
||||
}
|
||||
} else {
|
||||
out.println("No cookies found.");
|
||||
}
|
||||
|
||||
out.println("</body></html>");
|
||||
}
|
||||
}
|
||||
53
java/com/demo/GuessNumberServlet.java
Normal file
53
java/com/demo/GuessNumberServlet.java
Normal file
@ -0,0 +1,53 @@
|
||||
package com.demo;
|
||||
|
||||
import java.io.*;
|
||||
import javax.servlet.*;
|
||||
import javax.servlet.http.*;
|
||||
import javax.servlet.annotation.WebServlet;
|
||||
|
||||
@WebServlet("/GuessNumberServlet")
|
||||
public class GuessNumberServlet extends HttpServlet {
|
||||
@Override
|
||||
protected void doGet(HttpServletRequest request, HttpServletResponse response)
|
||||
throws ServletException, IOException {
|
||||
int magic = (int) (Math.random() * 101);
|
||||
HttpSession session = request.getSession();
|
||||
session.setAttribute("num", new Integer(magic));
|
||||
|
||||
response.setContentType("text/html;charset=utf-8");
|
||||
PrintWriter out = response.getWriter();
|
||||
|
||||
out.println("<html><body>");
|
||||
out.println("我想出一个0到100之间的数,请你猜!");
|
||||
out.println("<form action='/helloweb/GuessNumberServlet' method='post'>");
|
||||
out.println("<input type='text' name='guess' />");
|
||||
out.println("<input type='submit' value='确定'/>");
|
||||
out.println("</form>");
|
||||
out.println("</body></html>");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void doPost(HttpServletRequest request, HttpServletResponse response)
|
||||
throws ServletException, IOException {
|
||||
int guess = Integer.parseInt(request.getParameter("guess"));
|
||||
HttpSession session = request.getSession();
|
||||
int magic = (Integer) session.getAttribute("num");
|
||||
response.setContentType("text/html;charset=utf-8");
|
||||
PrintWriter out = response.getWriter();
|
||||
out.println("<html><body>");
|
||||
if (guess == magic) {
|
||||
session.invalidate(); // 销毁会话对象
|
||||
out.println("祝贺你,答对了!");
|
||||
out.println("<a href='/helloweb/GuessNumberServlet'>再猜一次.</a>");
|
||||
} else if (guess > magic) {
|
||||
out.println("太大了! 请重猜!");
|
||||
} else {
|
||||
out.println("太小了! 请重猜!");
|
||||
}
|
||||
out.println("<form action='/helloweb/GuessNumberServlet' method='post'>");
|
||||
out.println("<input type='text' name='guess' />");
|
||||
out.println("<input type='submit' value='确定'/>");
|
||||
out.println("</form>");
|
||||
out.println("</body></html>");
|
||||
}
|
||||
}
|
||||
33
java/com/demo/SendCookie.java
Normal file
33
java/com/demo/SendCookie.java
Normal file
@ -0,0 +1,33 @@
|
||||
package com.demo;
|
||||
|
||||
import java.io.*;
|
||||
import javax.servlet.*;
|
||||
import javax.servlet.http.*;
|
||||
import javax.servlet.annotation.WebServlet;
|
||||
|
||||
@WebServlet("/SendCookie")
|
||||
public class SendCookie extends HttpServlet {
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Override
|
||||
protected void doGet(HttpServletRequest request, HttpServletResponse response)
|
||||
throws IOException, ServletException {
|
||||
|
||||
// 创建一个Cookie对象
|
||||
Cookie userCookie = new Cookie("user", "uid1234");
|
||||
// 设置Cookie的有效期为7天
|
||||
userCookie.setMaxAge(60 * 60 * 24 * 7);
|
||||
// 将Cookie添加到响应中
|
||||
response.addCookie(userCookie);
|
||||
|
||||
response.setContentType("text/html");
|
||||
PrintWriter out = response.getWriter();
|
||||
|
||||
out.println("<html><title>add cookies</title>");
|
||||
out.println("<body><h2>A cookie has been sent to browser</h2></body>");
|
||||
out.println("</html>");
|
||||
}
|
||||
}
|
||||
45
java/com/demo/ShowSession.java
Normal file
45
java/com/demo/ShowSession.java
Normal file
@ -0,0 +1,45 @@
|
||||
package com.demo;
|
||||
|
||||
import java.io.*;
|
||||
import javax.servlet.*;
|
||||
import javax.servlet.annotation.WebServlet;
|
||||
import javax.servlet.http.*;
|
||||
import java.util.Date;
|
||||
|
||||
@WebServlet("/showSession")
|
||||
public class ShowSession extends HttpServlet {
|
||||
@Override
|
||||
protected void doGet(HttpServletRequest request, HttpServletResponse response)
|
||||
throws ServletException, IOException {
|
||||
|
||||
response.setContentType("text/html");
|
||||
HttpSession session = request.getSession();
|
||||
String heading = null;
|
||||
Integer accessCount = (Integer) session.getAttribute("accessCount");
|
||||
|
||||
if (accessCount == null) {
|
||||
accessCount = new Integer(0);
|
||||
heading = "Welcome, Newcomer";
|
||||
} else {
|
||||
heading = "Welcome Back.";
|
||||
accessCount = new Integer(accessCount.intValue() + 1);
|
||||
}
|
||||
session.setAttribute("accessCount", accessCount);
|
||||
|
||||
PrintWriter out = response.getWriter();
|
||||
out.println("<html><head>");
|
||||
out.println("<title>Session Tracking Example</title></head>");
|
||||
out.println("<body><center>");
|
||||
out.println("<h1>" + heading + "</h1>");
|
||||
out.println("<h2>Information about your session.</h2>");
|
||||
out.println("<table border='1'>");
|
||||
out.println("<tr bgcolor=\"ffad00\"><th>Info Type<th>Value\n");
|
||||
out.println("<tr><td>ID<td>" + session.getId() + "\n");
|
||||
out.println("<tr><td>Creation Time:<td>");
|
||||
out.println("" + new Date(session.getCreationTime()) + "\n");
|
||||
out.println("<tr><td>Time of last access:<td>");
|
||||
out.println("" + new Date(session.getLastAccessedTime()) + "\n");
|
||||
out.println("<tr><td>Access number:<td>" + accessCount + "\n");
|
||||
out.println("</table></center></body></html>");
|
||||
}
|
||||
}
|
||||
@ -1,21 +0,0 @@
|
||||
package com.demo;
|
||||
import java.io.*;
|
||||
import java.util.*;
|
||||
import javax.servlet.*;
|
||||
import javax.servlet.http.*;
|
||||
import javax.servlet.annotation.WebServlet;
|
||||
|
||||
@WebServlet("/ExcelServlet")
|
||||
public class excel extends HttpServlet{
|
||||
public void doGet(HttpServletRequest request,
|
||||
HttpServletResponse response)
|
||||
throws ServletException, IOException{
|
||||
|
||||
response.setHeader("Content-Encoding","gb2312"); response.setContentType("application/vnd.ms-excel;charset=gb2312");
|
||||
PrintWriter out = response.getWriter();
|
||||
|
||||
out.println("学号\t姓名\t性别\t年龄\t所在系");
|
||||
out.println("95001\t李勇\t男\t20\t信息");
|
||||
out.println("95002\t刘晨\t女\t19\t数学");
|
||||
}
|
||||
}
|
||||
7
webapp/counter.jsp
Normal file
7
webapp/counter.jsp
Normal file
@ -0,0 +1,7 @@
|
||||
<html><body>
|
||||
<%@ page language="java" %>
|
||||
<%! int count = 0; %>
|
||||
<% count++; %>
|
||||
Welcome! You are visitor number
|
||||
<%= count %>
|
||||
</body></html>
|
||||
8
webapp/errorHandler.jsp
Normal file
8
webapp/errorHandler.jsp
Normal file
@ -0,0 +1,8 @@
|
||||
<%@ page contentType="text/html; charset=gb2312" %>
|
||||
<%@ page isErrorPage="true" %>
|
||||
<html>
|
||||
<body>
|
||||
请求不能被处理:<%= exception.getMessage() %><br>
|
||||
请重试!
|
||||
</body>
|
||||
</html>
|
||||
27
webapp/expression.jsp
Normal file
27
webapp/expression.jsp
Normal file
@ -0,0 +1,27 @@
|
||||
<html><body>
|
||||
<%@ page language="java" %>
|
||||
<%!
|
||||
int anInt = 3;
|
||||
boolean aBool = true;
|
||||
Integer anIntObj = new Integer(3);
|
||||
Float aFloatObj = new Float(8.6);
|
||||
String str = "some string";
|
||||
StringBuffer sBuff = new StringBuffer();
|
||||
public char getChar(){
|
||||
return 'A';
|
||||
}
|
||||
%>
|
||||
<%= 500 %>
|
||||
<%= anInt*3.5/100-500 %>
|
||||
<%= aBool %>
|
||||
<%= false %>
|
||||
<%= !false %>
|
||||
<%= getChar() %>
|
||||
<%= Math.random() %>
|
||||
<%= aFloatObj %>
|
||||
<%= aFloatObj.floatValue() %>
|
||||
<%= aFloatObj.toString() %>
|
||||
<%= aBool %>
|
||||
<% int i = 20; %>
|
||||
<% sBuff.setLength(12); %>
|
||||
</body></html>
|
||||
@ -1,16 +1,33 @@
|
||||
<%@ page language="java" contentType="text/html; charset=UTF-8"
|
||||
pageEncoding="UTF-8"%>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<%-- <%@ page language="java" contentType="text/html; charset=UTF-8" --%>
|
||||
<%-- pageEncoding="UTF-8"%> --%>
|
||||
<!-- <!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=UTF-8"> -->
|
||||
<!-- <title>A Simple JSP page</title> -->
|
||||
<!-- </head> -->
|
||||
<!-- <body> -->
|
||||
<!-- <h3>Hello,World!</h3> -->
|
||||
<!-- <font color="#0000ff"> -->
|
||||
<%-- The time now is:<%=new java.util.Date()%> --%>
|
||||
<!-- </font> -->
|
||||
<!-- </body> -->
|
||||
<!-- </html> -->
|
||||
|
||||
<%@ page contentType="text/html;charset=gb2312" %>
|
||||
<%@ page errorPage="errorHandler.jsp" %>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>A Simple JSP page</title>
|
||||
</head>
|
||||
<body>
|
||||
<h3>Hello,World!</h3>
|
||||
<font color="#0000ff">
|
||||
The time now is:<%=new java.util.Date()%>
|
||||
</font>
|
||||
<%
|
||||
String name = request.getParameter("name");
|
||||
if (name == null) {
|
||||
throw new RuntimeException("没有指定name 属性。");
|
||||
} else {
|
||||
// 将字符串name的字符编码转换为汉字编码
|
||||
name = new String(name.getBytes("iso-8859-1"), "gb2312");
|
||||
}
|
||||
%>
|
||||
Hello, <%= name %>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
15
webapp/import_test.jsp
Normal file
15
webapp/import_test.jsp
Normal file
@ -0,0 +1,15 @@
|
||||
<%@ page import="java.util.Date,java.text.DateFormat" %>
|
||||
<%@ page contentType="text/html;charset=gb2312" %>
|
||||
<html>
|
||||
<head><title>page指令示例</title></head>
|
||||
<body>
|
||||
<h3 align="center">使用page指令导入java.util.Date类</h3>
|
||||
<%
|
||||
Date date = new Date();
|
||||
String s = DateFormat.getDateInstance().format(date);
|
||||
String s2 = DateFormat.getDateInstance(DateFormat.FULL).format(date);
|
||||
%>
|
||||
<p align="center">现在的时间是:<%=s%></p>
|
||||
<p align="center">现在的时间是:<%=s2%></p>
|
||||
</body>
|
||||
</html>
|
||||
34
webapp/persistent_counter.jsp
Normal file
34
webapp/persistent_counter.jsp
Normal file
@ -0,0 +1,34 @@
|
||||
<%@ page language="java" import="java.io.*" %>
|
||||
<%!
|
||||
int count = 0;
|
||||
String dbPath;
|
||||
|
||||
public void jspInit() {
|
||||
try {
|
||||
dbPath = getServletContext().getRealPath("/WEB-INF/counter.db");
|
||||
FileInputStream fis = new FileInputStream(dbPath);
|
||||
DataInputStream dis = new DataInputStream(fis);
|
||||
count = dis.readInt();
|
||||
dis.close();
|
||||
} catch (Exception e) {
|
||||
log("Error loading persistent counter", e);
|
||||
}
|
||||
}
|
||||
|
||||
public void jspDestroy() {
|
||||
try {
|
||||
FileOutputStream fos = new FileOutputStream(dbPath);
|
||||
DataOutputStream dos = new DataOutputStream(fos);
|
||||
dos.writeInt(count);
|
||||
dos.close();
|
||||
} catch (Exception e) {
|
||||
log("Error storing persistent counter", e);
|
||||
}
|
||||
}
|
||||
%>
|
||||
|
||||
<%-- 下面是向浏览器输出的主要内容,它将成为产生的_jspService()方法的一部分 --%>
|
||||
<html><body>
|
||||
<% count++; %>
|
||||
Welcome! You are <%= count %> th visitor(s).
|
||||
</body></html>
|
||||
Loading…
Reference in New Issue
Block a user