赞
踩
SHOW DATABASES;
CREATE DATABASE 数据库名称;
或者(判断,如果不存在则创建)CREATE DATABASE IF NOT EXISTS 数据库名称;
DROP DATABASES 数据库名称;
或者(判断,如果存在则删除)DROP DATABASE IF EXISTS 数据库名称;
SELECT DATABASE();
或者(使用数据库)USE 数据库名称;
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(url, username, password);
String sql = "";
Statement stmt = conn.createStatement();
stmt.executeUpdate(sql);
参数占位符:
(1) #{}
:会将其替换为?
(2) ${}
:拼sql,会存在SQL注入问题
(3) 使用时机:
* 参数传递的时候使用:#{};
* 表明或者列名不固定的情况下,使用:${};
参数类型: parameterType:可以省略
特殊字符处理:
(1) 使用转义字符:例如 <
用 <
(2) CDATA区:
<
用如下代替
<![CDATA[
<
]]>
标签 | 描述 |
---|---|
<h1> - <h6> | 定义标题大小,h1最大,h6最小 |
<font> | 定义文本的字体、字体尺寸、字体颜色 |
<b> | 定义粗体文字 |
<i> | 定义斜体文字 |
<u> | 定义文本下划线 |
<center> | 定义文本居中 |
<p> | 定义段落 |
<br> | 定义折行 |
<hr> | 定义水平线 |
标签 | 描述 |
---|---|
<img> | 定义图片 |
<audio> | 定义音频 |
<video> | 定义视频 |
标签 | 描述 |
---|---|
<a> | 定义超链接,用于链接到另一个资源 |
标签 | 描述 |
---|---|
<ol> | 定义有序列表 |
<ul> | 定义无序列表 |
<li> | 定义列表项 |
标签 | 描述 |
---|---|
<table> | 定义表格 |
<tr> | 定义行 |
<td> | 定义单元格 |
<th> | 定义表头单元格 |
标签 | 描述 |
---|---|
<table> | 定义表格 |
<tr> | 定义行 |
<td> | 定义单元格 |
<th> | 定义表头单元格 |
标签 | 描述 |
---|---|
<div> | 定义HTML文档中的一个区域部分,经常与CSS一起使用,用来布局网页 |
<span> | 用于组合行内元素 |
标签 | 描述 |
---|---|
<form> | 定义表单 |
<input> | 定义表单项,通过type属性控制输入形式 |
<label> | 为表单项定义标注 |
<select> | 定义下拉列表 |
<option> | 定义下拉列表的列表项 |
<textarea> | 定义文本域 |
form:定义表单
type属性
type取值 | 描述 |
---|---|
<text> | 默认值,定义单行的输入字段 |
<password> | 定义密码字段 |
<radio> | 定义单选按钮 |
<checkbox> | 定义复选框 |
<file> | 定义文件上传按钮 |
<hidden> | 定义隐藏的输入字段 |
<submit> | 定义提交按钮,提交按钮会把表单数据发送到服务器 |
<reset> | 定义重置按钮,重置按钮会清楚表单中的所有数据 |
<button> | 定义可点击按钮 |
内联样式:在标签内使用style属性,属性值是css属性键值对
<div style="color:red">Hello CSS~</div>
内部样式:定义<style>标签,在标签内部定义css样式
<style type="text/css">
div{
color: red;
}
</style>
<link rel="stylesheet" href="demo.css">
div{
color: red;
}
元素名称{color:red;}
#id属性值{color:red;}
.class属性值{color:red;}
alert(typeof age);
==
和===
==
会进行类型转换,===
不会进行类型转换string
:将字符串字面值转为数字,如果字面值不是数字,则转为NaN
,一般使用parseInt
方法进行转换boolean
:true
转为1,false
转为0boolean
number
:0和NaN
转为false
,其他的数字转为true
string
:空字符串转为false
,其他字符串转为true
null
:转为false
undefined
:转为false
BOM对象 | 描述 |
---|---|
history | 对History对象的只读引用 |
Navigator | 对Navigator对象的只读引用 |
Screen | 对Screen对象的只读引用 |
location | 对location对象的只读引用 |
方法 | 描述 |
---|---|
alert() | 显示带有一段消息和一个确认按钮的警告框 |
comfirm() | 显示带有一段消息以及确认按钮和取消按钮的对话框 |
setInterval() | 按照指定的周期(以毫秒计)来调用函数或计算表达式 |
setTimeout() | 在指定的毫秒数后调用函数或计算表达式 |
window.history.方法();
history.方法();
方法 | 描述 |
---|---|
back() | 加载history列表中的前一个URL |
forward() | 加载history列表中的下一个URL |
Browser/Server,浏览器/服务器 架构模式,它的特点是,客户端只需要浏览器,应用程序的逻辑和数据都存储在服务器端,浏览器只需要请求服务器,获取Web资源,服务器把Web资源发送给浏览器即可。
HTML、CSS、JavaScript、图片等。负责页面展现
Serlet、JSP等。负责逻辑处理
负责存储数据
定义通信规则
负责解析HTTP协议、解析请求数据,并发送响应数据
HyperText Transfer Protocol,超文本传输协议,规定了浏览器和服务器之间数据传输的规则
请求数据分为3部分
GET请求和POST请求的区别
响应数据分为3部分
状态码说明
状态码分类 | 说明 |
---|---|
1xx | 响应中——临时状态码,表示请求已经接收,告诉客户端应该继续请求或者如果它已经完成则忽略它 |
2xx | 成功——表示请求已经被成功接收,处理已完成 |
3xx | 重定向——重定向到其他地方:它让客户端再发起一个请求以完成整个处理 |
4xx | 客户端错误——处理发生错误,责任在客户端,如:客户端的请求一个不存在的资源,客户端未被授权,禁止访问等 |
5xx | 服务端错误 ——处理发生错误,责任在服务端,如:服务端抛出异常,路由出错,HTTP版本不支持等 |
Web服务器是一个应用程序(软件),对HTTP协议的操作进行封装,使得程序员不必直接对协议进行操作,让Web开发更加便捷。主要功能是"提供网上信息浏览服务"
Servlet运行在Servlet容器(web服务器)中,其生命周期由容器来管理,分为4个阶段:
loadOnStartup = 1
该参数的值可以设置Servlet对象被创建的时间
@WebServlet("/user/select")
localhost:8080/web-demo/user/select
@WebServlet("/user/*")
localhost:8080/web-demo/user/aaa
、localhost:8080/web-demo/user/bbb
@WebServlet("*.do")
localhost:8080/web-demo/aaa.do
、localhost:8080/web-demo/bbb.do
/*
和’/'的效果一样,但/*
的优先级更高,会优先拦截请求)(tomcat服务器中有一个默认的servlet,其配置路径是"/",它会访问项目中的静态资源,如果被自己写的Servlet覆盖,就访问不了了,所以请不要覆盖)
@WebServlet("/")
localhost:8080/web-demo/hehe
、localhost:8080/web-demo/haha
、localhost:8080/web-demo/haha/hehe
GET/request-demo/req1?username=zhangsan&password=123 HTTP/1.1
String getMethod()
获取请求方式:GET
String getContextPath()
获取虚拟目录(项目访问路径):/request-demo
StringBuffer getRequestURL()
获取URL(统一资源定位符):http://localhost:8080/request-demo/req1
String getRequestURI()
获取URI(统一资源标识符):/request-demo/req1
String getQueryString()
获取请求参数(GET方式):username=zhangsan&password=123
User-Agent:Mozilla/5.0 Chrome/91.0.4472.106
String getHeader(String name)
根据请求头名称,获取值username=superbaby&password=123
ServletputStream getInputStream()
获取字节输入流BufferedReader getReader()
获取字符输入流Map<String, String[]> getParameterMap()
获取所有参数Map集合String[] getParameterValues(String name)
根据名称获取参数值(数组)String getParameter(String name)
根据名称获取参数值(单个值)request.setCharacterEncoding("UTF-8")
byte[] bytes = username.getBytes(StandardCharsets.IOS_8859_1);
username = new String(bytes, StandardCharsets.UTF_8);
req.getRequestDispatcher("转发资源路径").forward(req.resp);
void setAttribute(String name, Object o)
存储数据到request域中Object getAttribute(String name)
根据key,获取值void removeAttribute(String name)
根据key,删除该键值对HTTP/1.1 200 OK
void setStatus(int sc);
设置响应状态码Context-Type:text/html
void setHeader(String name, String value);
<html><head></head><body></body></html>
PrintWriter getWriter()
获取字符输出流ServletOutputStream getOutputStream()
获取字节输出流resp.setStatus(302);
resp.setHeader("location", "重定向资源路径");
resp.sendRedirect("重定向资源路径")
PrintWriter writer = resp.getWriter();
writer.write("aaa");
ServletOutputStream outputStream = resp.getOutputStream();
outputStream.write(字节数据);
会话:用户打开浏览器,访问web服务器的资源,会话建立,直到有一方断开连接欸,会话结束。在一次会话中可以包含多次请求和响应
会话跟踪:一种维护浏览器状态的方法,服务器需要识别多次请求是否来自于同一浏览器,以便在同一次会话的多次请求间共享数据H
实现方式
Cookie cookie = new Cookie("key", "value");
response.addCookie(cookie);
Cookie[] cookies = request.getCookies();
cookie.getName();
cookie.getValue();
URLEncoder.eccode("需要编码的内容", "UTF-8");
HttpSession session = request.getSession();
void setAttribute(String name, Object o)
存储数据到session域中Object getAttribute(String name)
根据key,获取值void removeAttribute(String name)
根据key,删除该键值对<session-config>
<session-timeout>30</session-timeout>
</session-config>
public class FilterDemo implements Filter {
public void init(FilterConfig filterConfig);
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain);
public void destroy();
}
@WebFilter("/*")
public class FilterDemo implements Filter {
...
}
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) {
System.out.println("filter被执行了...");
//放行
chain.doFilter(request, response);
}
监听器分类 | 监听器名称 | 作用 |
---|---|---|
ServeltConext监听 | ServletContextListener | 用于对ServeltConext对象进行监听(创建、销毁) |
ServletContextAttributeListener | 对ServletContext对象中属性的监听(增删改属性) | |
Session监听 | HttpSessionListener | 对Session对象的整体状态的监听(创建、销毁) |
HttpSessionAttributeListener | 对Session对象中的属性监听(增删改属性) | |
HttpSessionBindingListener | 监听对象于Session的绑定和解除 | |
HttpSessionActiveListener | 对Session数据的钝化和活化的监听 | |
Request监听 | ServletRequestListener | 对Request对象进行监听(创建、销毁) |
ServletRequestAttributeListener | 对Request对象中属性的监听(增删改属性) |
<script src="js/axios-0.18.0.js"></script>
axios({
method:"get",//也可以为post
url:"http://localhost:8080/brand-case/selectAllServlet"
}).then (function (resp) {
alert(resp.data);
})
<dependency>
<groupId>com.alibaba</groupId>
<artfactId>fastjson</artfactId>
<version>1.2.62</version>
</dependency>
String jsonStr = JSON.toJSONString(obj);
User user = JSON.parseObject(jsonStr, User.class);
指令 | 作用 |
---|---|
v-bind | 为HTML标签绑定属性值,如设置href、css样式等 |
v-model | 在表单元素上创建双向数据绑定 |
v-on | 为HTML标签绑定事件 |
v-if | 条件性的渲染某元素,判定为true时渲染,否则不渲染 |
v-else | |
v-else-if | |
v-show | 根据条件展示某元素,区别在于切换的是display属性的值 |
v-for | 列表渲染,遍历容器的元素或者对象的属性 |
状态 | 阶段周期 |
---|---|
beforeCreate | 创建前 |
created | 创建后 |
beforeMount | 载入前 |
mounted | 挂在完成 |
beforeUpdate | 更新前 |
update | 更新后 |
beforeDestroy | 销毁前 |
destroeyed | 销毁后 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。