许久不写前面简单了解了一些 HTML的内容感觉不是总结的很好 也没怎么写。
正题:
jsp Java Server Pages Java服务器页面
桌面程序
单机上的运行程序
c/s client Server
客户端/服务器网络程序 客户端需要安装专门的客户端软件 例如:qq
b/s browser Server
浏览器/服务器网络程序 客户端不用装专门的软件,使用统一的客户端浏览器进行访问 也就是常见的网站
web开发
开发b/s结构的程序 动态网页开发
创建动态网站技术
ASP:Active Server Pages
PHP:Persond Home Page
Jsp: Java Server Page 中型大型开发
JSP运行过程:客户端发送请求给服务器。服务器将请求的JSP页面转换为.java文件 (server)通过JVM编译成.class 文件运行此文件生成一个内容为HTML原生代码的输出流,输出给浏览器。
<form>表单的属性
<form action="index.jsp" method="get/post">提交到哪里 提交方式 get显示 post 隐式提交 form表单只发带name的
Servlet
运行为服务器的java应用程序,有独立于平台和协议的特性可生成动态的Java页面,担当中间层。
Servlet是一个特定格式的java文件
Servlet是java版的页面
jsp是页面版的java
jsp就是servlet
jsp主要负责界面效果展示
Servlet主要负责后台业务逻辑
servlet有特殊的技术规范,必须继承某个特定父类必须配置之后才执行,有特定的生命周期
想拿内容就去Request取
想要回应就Request
doget处理http get请求
dopost处理 http post请求
提交的三种方式
浏览器输入地址 get请求
点击超链接 get方式
使用表单提交 post方式
浏览器提交方式速度快但是不安全 一般用于普通业务
post提交方式又叫作服务器提交方式大小没有限制,安全一般用于文件上传和登录
解决中文乱码问题
设置接收编码的类型(仅适用于post方式)
setcharacterEncoding(String EncodingCode);
request.setcharacterEncoding("utf-8");
get的方式在tomcat中修改
Servlet是一个javaclass类 继承自HTTPServlet
只要是重写Init初始化
destroy销毁工作
doget处理主要业务
dopost处理主要业务
列:
package com.sxt;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class TestServlet extends HttpServlet {
public TestServlet() {
super();
}
public void destroy() {
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
@Override
public void init(ServletConfig config) throws ServletException {
String s = config.getInitParameter("name");
System.out.println(s);
}
}
可以自动生成
而后需要配置web.xml中内容
列: 也是在自动生成servlet的过程中自动生成
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>jspA</display-name> <servlet> <servlet-name>TestServlet</servlet-name> <servlet-class>com.sxt.TestServlet</servlet-class> <init-param> <param-name>name</param-name> <param-value>123</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>TestServlet</servlet-name> <url-pattern>/text</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> </web-app>
servlet的生命周期
init()初始化的时期
service()主要服务的时间
destroy()销毁时期
servlet是不安全的因此不可以出现全局的东西,初始化后一个servlet可以被多个人使用,直到destroy也就是tomcat关闭了服务相当于(多线程)