文章目录
1.1 Web开发概述
1.1.1软件架构
C/S架构:Client/Server 客户端/服务器。要求客户端电脑安装一个客户端程序。
- 常见应用:QQ,迅雷,360,旺旺,游戏客户端 等 坦克世界 魔兽世界
- 优点:
- 用户体验好,效果炫
- 对信息安全的控制较强
- 应用服务器运行数据负荷较轻,部分计算功能在客户端完成。
- 缺点:
- 占用硬盘空间
- 维护麻烦
- 安装使用依赖其他条件
#####B/S架构:Browser/Server 浏览器/服务器 。通过浏览器与服务器交互,不需要安装其他程序
- 常见应用:网银系统,淘宝,京东 12306 等
- 优点:
- 维护和升级简单,无缝升级。
- 不用必须安装程序,操作系统内置了浏览器。
- 缺点:
- 动画效果受浏览器限制
- 对信息安装控制较差。例如:网银就需要使用U盾,在浏览器端加密。
- 应用服务器运行数据负荷较重。大部分计算都在服务器端,增加服务器压力。使用Ajax可以改善部分用户体验。
Web开发概述-WEB通信
WEB采用B/S通信模式,通过超文本传送协议(HTTP, Hypertext transport protocol)进行通信。通过浏览器地址栏编写URL,向服务器发送一个请求,服务器端根据请求进行相应的处理,处理完成之后,会向浏览器作出一个响应,及将服务器端资源发送给浏览器
2Servlet快速入门
- 页面与服务端程序关系
2. 什么是Servlet?
Servlet就是运行在服务端的JAVA小程序
3. Servlet快速入门
- 步骤
- 直接new Servlet
- 设置项目的访问地址
Demo1Servlet
Demo2Servlet - 设置Servlet的访问地址
- 设置方法请求方式
- 设置参数 Demo3GetDataServlet
3.1创建第一个Servlet
Demo01Servlet.java
@WebServlet("/demo01") //指定访问具体的哪个Servlet类
public class Demo01Servlet extends HttpServlet {
//当你使用post请求访问时,当前的doPost自动执行了
//表单里面的method设置为post
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("doPost");
}
//当你使用get请求访问时,当前的doGet自动执行了
//地址栏访问就是get
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("doGet");
}
}
不同的Servlet有不同的访问地址
Demo02Servlet .java
@WebServlet("/demo02")
public class Demo02Servlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("doPost");
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("doGet");
}
}
Servlet只做三件事
Demo03GetDataServlet .java
@WebServlet("/demo03")
public class Demo03GetDataServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request,response); //在项目中一般,让servlet以相同的方式处理get/post请求
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//1:接收请求,获取参数
String username = request.getParameter("username");//根据参数名获取参数值;
String password = request.getParameter("password");
//2:处理
System.out.println(username);
System.out.println(password);
//3:返回响应
response.getWriter().println("success");
}
}
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<!--post调用doPost方法-->
<!--action指定调哪个servlet-->
<form method="post" action="/myweb01/demo03">
账号: <input name="username" type="text"><br/>
密码: <input name="password" type="password"><br/>
<input type="submit" value="登录">
</form>
</body>
</html>