2021年8月14日
1.
a.进行maven的学习中,在pom.xml文件中导入依赖
<!--加入servlet`在这里插入代码片`的依赖(servlet的jar包)-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<!--jsp相关的依赖(jsp相关的jar包)-->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
<scope>provided</scope>
</dependency>
网站运行会出现问题,显示:HTTP状态 500 - 内部服务器错误,
部署tomcat的版本为10.0.8,不使用tomcat自带的jsp和servlet的jar包
b.部署tomcat的版本为10.0.8,使用tomcat自带的jsp和servlet自带的jar包,不适用maven依赖的jsp-api和servlet-api的jar包,此时网站可以顺利的进行展示
导致此状况可能的原因:jdk的版本为11,tomcat的版本为10.0.8,依赖导入的jar包可能与tomcat的版本不兼容,需要改用低版本的tomcat进行部署。
问题已解决:tomcat版本问题,导致的不兼容,tomcat的版本修改为tomcat9.0.0.M10。
温馨提示:此处的tomcat环境变量我在使用时并未进行配置,直接将解压后的tomcat文件包通过idea的edit->settings->Build、execution、deployment->application Servers添加文件夹。
2.小技巧
右键单击点击pom.xml文件,找到maven选项,选择其中的reimport,可以刷新pom.xml文件
2021年8月15日
1.注意电脑上安装的mysql的版本,与mybatis所用数据库(即maven导入依赖mysql-connector-java)之间的版本关系,当数据库的版本大于8时,应当将数据库注册驱动和url改为如下所示
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/shujuku?useSSL=false&serverTimezone=UTC"/>
2021年8月20日
http://www.elecfans.com/d/950064.html
cmd窗口中常用的mysql命令
2021年8月27日
1.在jsp文件中定义:
<%
String basePath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath()+"/";
<%--
request.getSchema()可以返回当前页面使用的协议,例如:“http”
request.getServerName()可以返回当前页面所在的服务器的名字,例如:“localhost"
request.getServerPort()可以返回当前页面所在的服务器使用的端口,例如8080,
request.getContextPath()可以返回当前页面所在的应用的名字,例如:“crm”
--%>
<base href="<%=basePath%>">
%>
标签为页面上的所有链接规定默认地址或默认目标, 标签必须位于 head 元素内部
2.请求转发和重定向
请求转发:request.getRequestDispatcher(URL地址).forward(request, response);
客户端浏览器地址栏中不会显示出转向后的地址
处理流程:
(1)客户端发送请求,Servlet做出业务逻辑处理。
(2)Servlet调用forword()方法,服务器Servlet把目标资源返回给客户端浏览器。
转发是在服务器内部进行的,写绝对路径/开头指的是当前的Web应用程序。绝对路径写法:/资源名。
重定向:response.sendRedirect(URL地址);
浏览器的地址栏中可以看到跳转后的链接地址
处理流程:
(1)客户端发送请求,Servlet做出业务逻辑处理。
(2)Servlet调用response.sendReadirect()方法,把要访问的目标资源作为response响应头信息发给客户端浏览器。
(3)客户端浏览器重新访问服务器资源xxx.jsp,服务器再次对客户端浏览器做出响应。
重定向response.sendRedirect(“xxx”)是服务器向客户端发送一个请求头信息,由客户端再请求一次服务器。/指的Tomcat的根目录,写绝对路径应该写成"/当前Web程序根名称/资源名" 。
拓展知识:
在web中,页面路径主要的写法有:
(1)重定向(浏览器发起资源路径请求)
(2)转发(服务器发起资源路径请求)
(3)超链接(浏览器)
(4)form表单提交的action(浏览器)
3.过滤器filter配置web.xml
(1).Filter按照配置在web.xml中的先后顺序,每一个Filter都会进行url-pattern的匹配,匹配成功,则会执行对应的Filter方法
(2). 1个Filter可以设置多个url-pattern
(3). Filter匹配有3种模式
a.精确匹配,例:/directory/file1.jsp
b.目录匹配,例: /directory/*
c.扩展匹配,例:.jsp
不支持下面的格式:/direcotry/.jsp