10 2022 档案
摘要:Mybatis配置优化 1.核心配置文件结构 核心配置文件:mybatis-config.xml 官方建议起这个名字,但我们可以随意起名 configuration(配置) properties(属性) settings(设置) typeAliases(类型别名) typeHandlers(类型处理
阅读全文
摘要:Mybatis的使用 创建项目,导入依赖 mysql-connector-java mysql驱动依赖 mybatis mybatis依赖 至少要导入这两个依赖 编写SqlSessionFactory 工具类 package utils; import org.apache.ibatis.io.
阅读全文
摘要:response.sendRedirect() 重定向问题 response.sendRedirect() 中的路径的规律: 假设在http://localhost:8080/smbms/jsp/frame.jsp 我们服务器的默认地址是http://localhost:8080/smbms log
阅读全文
摘要:Filter过滤器实现登录验证 用户登录了才能访问某个页面,不登录无法访问该页面 登录Servlet: package servlet; import jakarta.servlet.ServletException; import jakarta.servlet.http.HttpServle
阅读全文
摘要:Filter 过滤器 过滤器的作用:用来过滤网站的数据(处理中文乱码、登录验证....) 过滤器加在服务器和servlet、jsp、静态资源 中间,用来过滤服务器的请求 我们以处理乱码问题为例: 之前处理乱码都是在servlet中设置 setCharacterEncoding("utf-8"),但如
阅读全文
摘要:MVC三层架构 MVC: Model(模型)、View(视图)、Controller(控制器) 在早期,用户直接访问控制层,控制层直接操作数据库,增删改查的代码也直接写在控制层 这种结构的弊端是,代码十分臃肿,不利于维护 Servlet的工作:处理请求和响应、视图跳转、处理JDBC、处理业务代码、处
阅读全文
摘要:JSP标签、JSTL标签、EL表达式 EL 表达式 ${} 作用: 获取数据 执行运算 获取web开发的常用对象 JSP 标签 拼接页面 <jsp:include page="jsp1.jsp"/> 转发,可传递参数 <%-- 参数标签:name 是参数的键,value是参数的值--%> <jsp:
阅读全文
摘要:【遇到的问题】JSTL标签使用时的错误 我在导入依赖时,通过maven导入了两个依赖: jakarta.servlet.jsp.jstl-api standard 如果引入jstl标签库,访问该jsp,会报 原因是: 我们只在项目中导入这两个包,但是在tomcat服务器中没有这两个包,导致服务器无法
阅读全文
摘要:JSP内置对象 pageContext Request Response config [ServletConfig] out Application [ServletContext] page exception session 其中,pageContext、Request、Application
阅读全文
摘要:JSP基础语法和指令 写jsp代码之前,需要导入四个包 Servlet 依赖 JSP 依赖 JSP表达式依赖 standard标签库 基础语法 jsp表达式 语法: <%= xxxxxxx%> xxxxxxx 为java代码(变量或表达式),将java代码的结果输出到页面 例子: <%--jsp表达
阅读全文
摘要:JSP原理 什么是JSP Java Server Pages :Java服务器端页面 和Servlet一样,用于开发动态web 特点: 和html相仿 区别就是,html只给用户提供静态数据,JSP页面中可以嵌入java代码,为用户提供动态数据 JSP如何执行 在项目中,有一个jsp文件,运行后,在
阅读全文
摘要:Session 什么是session Session:在计算机中,尤其是在网络应用中,称为“会话控制”。Session对象用于存储用户会话所需的属性和配置信息,这样,当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。当用户请求来自应用
阅读全文
摘要:Cookie 什么是会话? 会话:用户打开一个浏览器,点击了一些超链接,访问了多个web资源,关闭浏览器,这个过程称之为会话。 有状态会话:记录用户曾经登录过某个网站。 什么是Cookie? Cookie,有时也用其复数形式 Cookies。类型为“小型文本文件”,是某些网站为了辨别用户身份,进行S
阅读全文
摘要:HttpServletRequest web服务器接收到客户端的http请求,针对这个请求,分别创建一个代表请求的HttpServletRequest对象,和一个代表响应的HttpServletResponse对象 如果要获取客户端请求过来的参数:找HttpServletRequest 如果要给客户
阅读全文
摘要:HttpServletResponse web服务器接收到客户端的http请求,针对这个请求,分别创建一个代表请求的HttpServletRequest对象,和一个代表响应的HttpServletResponse对象 如果要获取客户端请求过来的参数:找HttpServletRequest 如果要给客
阅读全文
摘要:ServletContext对象 ServletContext对象:web容器启动的时候,它会为每个web程序都创建一个对应的ServletContext对象,它代表了当前的web应用。 ServletContext 有很多功能: 共享数据 共享数据的意思是 在一个Servlet中保存的数据,可以在
阅读全文
摘要:Servlet Servlet简介 servlet是sun公司开发动态web的一门技术 sun公司在这些API中提供了一个接口叫做Sevlet 如果你想开发一个Servlet程序,只需要: 编写一个类,实现Servlet接口 把开发好的Java类部署到web服务器 总结:把实现了Sevlet接口的j
阅读全文
摘要:【遇到的问题】Tomcat10中Servlet包名问题 我在创建Servlet程序的过程中,发现的问题: 自己写的Servlet类: package com.wang.servlet; import javax.servlet.ServletException; import javax.ser
阅读全文
摘要:Maven 什么是Maven? maven是项目架构管理工具,用来管理项目,如自动导入jar包等。 Maven下载和配置 下载 官网:Maven – Welcome to Apache Maven 下载完成后解压到自己的环境目录下 配置环境变量 需要配置两个: MAVEN_HOME:自己maven的
阅读全文
摘要:HTTP 什么是http HTTP:超文本传输协议,是一个简单的请求-相应协议 超文本:图片、视频、音乐、定位 默认端口:80 HTTPS:以安全为目标的HTTP通道,在HTTP的基础上加入了SSL,保证了传输过程的安全性 默认端口:443 HTTP的两个时代: http1.0 http/1.0:客
阅读全文
摘要:1.Tomcat 1.1Tomcat概念 Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和J
阅读全文
摘要:数据库连接池 数据库的连接,执行到释放,过程十分浪费系统资源 所以出现了一种技术叫做:池化技术 池化技术:准备一些预先的资源,过来就连接预先准备好的资源 最小连接数:根据业务来调整,常用连接数在100个左右,最小连接数为100即可 最大连接数:业务最高承载上限 超过了最大连接数就需要排队等待,等别人
阅读全文
摘要:JDBC操作事务 事务的原则:ACID 原子性:全部成功,或全部失败 一致性:事务执行前后数据一致 隔离性:两个事务互不干扰 持久性:一旦提交,不可不可逆,持久化到数据库 隔离性带来的问题 脏读:一个事务读取到了另一个事务没有提交的数据 不可重复度:在一个事务内,多次读取,数据发生变化 幻读(虚读)
阅读全文
摘要:sql注入问题和Preparement sql注入问题 SQL 注入就是在用户输入的字符串中加入 SQL 语句,如果在设计不良的程序中忽略了检查,那么这些注入进去的 SQL 语句就会被数据库服务器误认为是正常的 SQL 语句而运行,攻击者就可以执行计划外的命令或访问未被授权的数据。 例如: 恶意拼接
阅读全文
摘要:提取工具类 我们去查询数据库时,只有sql代码是核心业务,其他的代码如果每次都写,十分重复,所以我们要将一些重复的代码提取出来,做工具类,每次执行业务,只调用这个工具类即可。 首先把 driver、 url 、username、 password 放到配置文件中,在工具类中将这些读取 driver=
阅读全文
摘要:JDBC 什么是数据库驱动 数据库驱动就是连接应用程序与数据库的 如果没有数据库驱动,应用程序是无法直接到达数据库的,数据库驱动是由数据库厂商来做的 什么是JDBC SUN公司为了简化开发人员对数据库的统一操作,提供了一个(Java操作数据库)规范,成为JDBC 这些规范的实现由具体的厂商去做 对开
阅读全文
摘要:三大范式 为什么要数据规范化? 信息重复 更新、插入、删除异常 三大范式 参考博客:关系型数据库设计:三大范式的通俗理解 - 景寓6号 - 博客园 (cnblogs.com) 第一范式(1NF):要求数据库表的每一列都是不可分割的原子数据项。 原子性:保证每一列不可再分 图中存在可在分的项如学校信息
阅读全文
摘要:数据库用户管理和备份 用户管理 可视化管理 用navicat可视化管理软件进行用户的添加删除和权限的管理 新建用户 连接用户 sql命令操作 对用户的操作实际上是对 mysql 数据库 中 user表的操作 -- 创建用户 CREATE USER 用户名 IDENTIFIED BY '密码' CRE
阅读全文
摘要:索引 mysql官方对索引的定义为:索引(index)是帮助Mysql高效获取数据的数据结构 ,提取句子主干,就可以得到索引的本质:索引是数据结构。 索引的分类 主键索引 (PRIMARY KEY) 唯一的标识,主键不可重复,只能有一个列作为主键 唯一索引 (UNIQUE KEY) 避免重复的列出现
阅读全文
摘要:事务 什么是事务? 要么都成功,要么都失败 以转账为例: 有两条sql,第一条是A给B转账,第二条是B接收A的转账 这两条语句,必须都成功,或都失败,不能一条成功,一条失败 事务原则:ACID原则 原子性(Atomicity):事务中的操作要么都发生,要么都不发生。 如A给B转账,B收到A的转账,这
阅读全文
摘要:数据库级别的MD5加密 什么是MD5? MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。 MD5的特点:主要增强算法复杂度和不可逆性 所以
阅读全文
摘要:Mysql函数 常用函数 数学运算 SELECT ABS(-100) -- 绝对值 SELECT CEILING(6.5) -- 向上取整 SELECT FLOOR(6.5) -- 向下取整 SELECT RAND() -- 返回浮点型随机数 SELECT SIGN(-96969) -- 返回一个数
阅读全文
摘要:子查询和分组过滤 子查询 子查询就是在where语句中,再嵌套一个查询语句 下面我们以查询学生考试信息为例,列举三种查询方式 查询C语言-1的分数大于20分的学生信息(学号、姓名、考试成绩),分数降序排序 联表查询 SELECT s.studentno,studentname,studentresu
阅读全文