@nextleaf
2018-09-18T09:50:50.000000Z
字数 2297
阅读 1353
Java JSP Servlet MVC
<%@ page contentType="text/html;charset=UTF-8" import="包.类,..." pageEncoding="UTF-8"%>
重定向:客户端请求容器的资源A,A可以发回一个302状态码和一个localtion的消息头,客户端收到302之后,立即向location指定的位置发出请求.
转发:客户端请求服务器的资源A,A通知容器,由容器将控制权交给组件B,继续完成后续的工作.
(1)地址栏的变化:重定向后,地址栏会发生变化,转发后地址栏不会发生变化。
(2)请求的资源:转发只能是应用内的资源,而重定向没有这个限制。
(3)转发过程中涉及到的组件共享同一对request和response,而重定向则不会。
(4)转发的效率(一次请求一次相应)要高于重定向(两次请求,两次相应)
转发:一件事还没完成,需要其他组件继续做
重定向:一件事已经完成了,去做另外一件事。


200 - 请求成功
301 - 资源(网页等)被永久转移到其它URL
404 - 请求的资源(网页等)不存在
500 - 内部服务器错误
| 分类 | 分类描述 |
|---|---|
| 1** | 信息,服务器收到请求,需要请求者继续执行操作 |
| 2** | 成功,操作被成功接收并处理 |
| 3** | 重定向,需要进一步的操作以完成请求 |
| 4** | 客户端错误,请求包含语法错误或无法完成请求 |
| 5** | 服务器错误,服务器在处理请求的过程中发生了错误 |
JSP连接数据库.jsp
<%--Created by IntelliJ IDEA.User: 14472Date: 2018/9/17Time: 21:02To change this template use File | Settings | File Templates.--%><%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8" %><%@ page import="java.io.*,java.util.*,java.sql.*" %><%@ page import="javax.servlet.http.*,javax.servlet.*" %><%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %><%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %><%--<!-- https://mvnrepository.com/artifact/javax.servlet/jstl --><dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId><version>1.2</version></dependency><!-- https://mvnrepository.com/artifact/taglibs/standard --><dependency><groupId>taglibs</groupId><artifactId>standard</artifactId><version>1.1.2</version></dependency>--%><html><head><title>SELECT 操作</title></head><body><!--JDBC 驱动名及数据库 URL数据库的用户名与密码,需要根据自己的设置useUnicode=true&characterEncoding=utf-8 防止中文乱码--><sql:setDataSource var="snapshot" driver="com.mysql.cj.jdbc.Driver"url="jdbc:mysql://localhost:3306/javabasedemo?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&useSSL=false"user="huang" password="huang"/><sql:query dataSource="${snapshot}" var="result"> SELECT * from tableemp;</sql:query><h1>JSP 数据库实例</h1><table border="1" width="100%"><tr><th>ID</th><th>name</th><th>salary</th><th>age</th></tr><c:forEach var="row" items="${result.rows}"><tr><td><c:out value="${row.id}"/></td><td><c:out value="${row.name}"/></td><td><c:out value="${row.salary}"/></td><td><c:out value="${row.age}"/></td></tr></c:forEach></table></body></html>
