html(form组件)+css+javascript+java
2.java jsp GUI
B/S 浏览器/服务器
C(Client GUI)/S(Server)网络编程TCP/IP
网站 : 广域性 受众群体
应用系统:局限性 163
C/S
优点:好看
缺点:
(1)安全性
(2)不可控性强(运行环境 win7系统 64)传奇
(3)需要安装 30 40G 石炉 PS4
(4)开发复杂度 人力成本 开发周期 15W
(5)开发成本 OA C/S
(6)维护成本
B/S html PS OpenGL编程 用友 C/S ERP
2.java web工程 web project
war(web工程包) jar(java类)
src
webroot
meta-inf
web-inf:web.xml
lib:存储第三方jar包
xxx.jsp
3.web 服务器运行 Socket 服务器 ServerSocket
服务器
硬件服务器
软件服务器
tomcat 小 免费 测试和开发 分布式
jboss 中小型
weblogic
db2 银行
4.bin 可执行路径包
conf 配置文件存储的路径
lib 放第三方jar包
logs 日志
temp 临时文件夹
webapps : 存放部署项目的目录
work : ?
5.将tomcat服务器和eclipse整合到一起
6.部署和运行
http://localhost/0225pjt
jsp头指令
ISO-8859-1
ASCII
www.baidu.com
我就看看浏览器能不能搜到
404 : 找不到请求的资源
500 : 页面 编译错误
人机交互 JSP-GUI 界面效果
from 组件
<table align="center" width="70%" border="1">
<%
for(int i = 1;i <= 8;i++){
out.println("<tr>");
for (int j = 1;j <= 8;j++){
String color = "white";
if (i == j || i+j == 9){
color="red";
}
out.println("<td bgcolor='"+color+"'>"+j+"</td>");
}
out.println("</tr>");
}
%>
<%
//out.println("我是一个输出信息</br>");
//out.print("我又是一个输出信息");
//out.print("我也是一个输出信息");
%>
500 .class
工作空间 src
webapps classes
work jsp->class
九个内置对象
(1)HttpServletRequest request 一次请求
获取由浏览器传递回来数据
request.getParameter("");
1.什么样的操作可以产生请求
地址栏直接打
点击提交按钮
点击超链接
2.请求什么时候开始呢?
点击提交按钮或超链接时 请求产生!
3.请求什么时候结束呢?
//设置在服务器端接收时的字符集
request.setCharacterEncoding("UTF-8");
URIEncoding="UTF-8"
http协议中数据传输的方式post|get|put|delete
传输时对于数据处理的手段
post在传输数据时地址栏是看不到的
request.setCharacterEncoding("UTF-8");
get在传输数据时在地址栏可以看到传递数据
byte[] b = value.getBytes("ISO-8859-1");
String s = new String(b,"UTF-8"); http 文本
%E5%BC%A0%E4%B8%89
index.jsp : UTF-8
welcome.jsp : GBK
welcome1.jsp : UTF-8
POST:request.setCharacterEncoding("UTF-8");
GET :
byte[] b = username.getBytes("ISO-8859-1");
String s = new String(b,"UTF-8");
URIEncoding="UTF-8"
http://localhost/0225pjt/welcome.jsp?username=%E5%BC%A0%E4%B8%89&password=123456&s1=%E4%B8%AD%E5%9B%BD&t1=
http://localhost/0225pjt/welcome.jsp?username=%D5%C5%C8%FD&password=123456&s1=%D6%D0%B9%FA&t1=
(3)HttpSession session 一次会话
(2)HttpServletResponse response 客户端相应信息
(4)ServletContext application 全局应用
(5)JspWriter(PrintWriter) out 页面输出对象
(6)Object page 当前页对象
(7)PageContext pageContext 页面上下文
(8)ServetConfig config 配置对象 web.xml
(9)Exception exception 异常
1.JSP
运行原理 jsp
(1)request HttpServletRequest
request.getParameter();
request.setCharacterEncoding();
POST:request.setCharacterEncoding("UTF-8");
GET : D5 C5 E8 A9
(1)getBytes("ISO-8859-1") 4 UTF-8 3 中? 6字节 GBK ?
(2)server.xml URIEncoding="UTF-8"
webapps
tomcat 8.0
一次请求
跳转 请求
M:Model (业务模型(Service),持久化模型(Dao))
V :View(JSP) 视图
C :Control (JSP)控制应用程序的执行走向 流程控制 if for
取 调 跳 request.getParameter
视图发起请求 模型层数据逻辑验证 视图
写法
特性
(1)执行原理 request跳转到底是什么回事
(2)内部转换 内部跳转 不会产生新请求
好好理解啥叫一次请求!
取值的方式
request.getParameter();
request.getParameterValues();
request.setCharacterEncoding(); POST
request.getRequestDispatcher().forward();
(2)response
(3)session
(4)application ServletContext
(5)out JspWriter
(6)page Object
(7)pageContext
(8)config
(9)exception
public void _jspService(){//doLogin
welcome._jspService();
index._jspService();
System.out.println("==========>");
}
public void _jspService(){//welcome
System.out.println("----------------->");
}
_jspService
window.location.href="路径";
form DOM submit();
setTimeout("函数名",5000);
NullPointerException
1.异常点 j2se j2ee j2me
国籍:<select name="s1">
<option value="中国">中国</option>
<option value="米国">米国</option>
<option value="中国日本">日本</option>
</select></br>
性别:<input type="radio" name="r1" value="男">男
<input type="radio" name="r1" value="女">女</br>
爱好:<input type="checkbox" name="c1" value="0">吃饭
<input type="checkbox" name="c1" value="1">睡觉
<input type="checkbox" name="c1" value="2">打豆豆</br>
备注:<textarea name="t1" rows="5" cols="20"></textarea></br>
九种对象简介:
- out对象:用于向客户端、浏览器输出数据。
- request对象:封装了来自客户端、浏览器的各种信息。
- response对象:封装了服务器的响应信息。
- exception对象:封装了jsp程序执行过程中发生的异常和错误信息。
- config对象:封装了应用程序的配置信息。
- page对象:指向了当前jsp程序本身。
- session对象:用来保存会话信息。也就是说,可以实现在同一用户的不同请求之间共享数
- application对象:代表了当前应用程序的上下文。可以在不同的用户之间共享信息。
- pageContext对象:提供了对jsp页面所有对象以及命名空间的访问。