1. web.xml 配置文件
WEB-INF
|- lib 放第三方jar包
|- classes 自己写的servlet等java类
|- web.xml web应用程序的配置文件
写一个servlet 要在类上加一个 @WebServlet(urlPatterns="")
写一个filter 要在类上加一个 @WebFilter(urlPatterns="")
这种基于注解的写法在servlet 3.0 才有的
web.xml是另一种配置方式,跟注解方式配置的地位是一样的
xml (x 可扩展 markup 标记 language 语言) 标签可以进行扩展
html (超文本标记语言) 标签都是规定死的 <a> <h1> <p> ...
例如:
<!-- 配置一个servlet -->
<servlet>
<!-- servlet名字 -->
<servlet-name>servlet1</servlet-name>
<!-- servlet对应的java类 -->
<servlet-class>controller.Servlet1</servlet-class>
<!-- 在tomcat启动时就创建servlet的实例,而不是等到第一次请求时
其中数字表示优先级,数字小的优先级高
-->
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>servlet1</servlet-name>
<!-- servlet的路径 -->
<url-pattern>/s1</url-pattern>
</servlet-mapping>
<!-- 等价于 @WebServlet(urlPatterns = "/s1", loadOnStartup = 1 ) -->
例如:
<filter>
<!-- 过滤器名字 -->
<filter-name>f1</filter-name>
<!-- 过滤器对应的java类 -->
<filter-class>filter.Filter1</filter-class>
</filter>
<filter-mapping>
<filter-name>f1</filter-name>
<!-- 过滤器要过滤的路径 -->
<url-pattern>/ *</url-pattern>
</filter-mapping>
<!-- 等价于 @WebFilter(urlPatterns="/*") -->
过滤器的过滤顺序可以通过 filter-mapping标签的顺序调整,先进入filter-mapping在前面的过滤器
HttpSession 会话
当第一次调用 request.getSession() 会创建会话
销毁有两种:
- session.invalidate(); 会立刻销毁session
- 两次请求的时间间隔超过30分钟,session会销毁
例如:
<session-config>
<!-- 配置session的超时时间, 单位是分钟 -->
<session-timeout>10</session-timeout>
</session-config>
2. 监听器 (Listener)
ServletContextListener 监听应用程序启动和停止事件
ServletRequestListener request对象创建和销毁事件
HttpSessionListener session对象创建和销毁事件
ServletContextAttributeListener application作用域 setAttribute,removeAttribute事件
ServletRequestAttributeListener request作用域 setAttribute,removeAttribute事件
HttpSessionAttributeListener session 作用域 setAttribute,removeAttribute事件
HttpSessionActivationListener session 的激活和钝化
HttpSessionBindingListener session变量绑定事件
session的激活和钝化
- 当tomcat服务器停止时,会把session中所有变量存储到磁盘上, 称为钝化
- 当tomcat服务器重新启动时,把刚才存入磁盘的信息读取出来,恢复至session作用域, 称为激活
钝化过程调用是java序列化
激活过程调用是java反序列化
向Session中存储的变量要实现序列化接口(Serializable)
都是针对自定义的java类,如:Student, Hero
3. git工具的使用
用途:1) 源代码的版本控制工具
2) 多人协作开发
3.1 安装
从git官网下载安装包安装
git --version 查看git的版本信息
运行初始化设置
git config --global user.email “你的邮件地址”
git config --global “你的名字”
3.2 将现有项目使用git管理
-
用cd进入项目所在目录
执行 git init 命令,结果会生成一个.git文件夹, 此文件夹中保存的都是和版本相关的信息
-
选择哪些文件交给git管理
编写一个名为 .gitignore 文件,此文件中写入要忽略的文件夹或文件的名字
-
将除了.gitignore里以外的文件加入git管理
git add .
可以用 git status 查看哪些新文件被加入了git
-
提交新加文件
git commit -m ‘初始化项目’
提交后再使用git status 查看,工作空间就空了
-
列出提交的版本号
git log
记录需要回滚的版本号
git checkout 版本号
问题:如果在checkout报错:
error: Your local changes to the following files ...
原因是本地有些文件被更改了,这时如果希望checkout能够继续执行,执行 git stash命令让工作空间变得干净
重新运行git checkout
- git的服务器
国外的git服务器:github
国内的git服务器: 码云 gitee
也可以搭建自己的服务器
6.1) git服务器上注册账号,创建新的项目(新项目的名字和本地项目名字一致)
6.2) 运行命令
语法:
git remote add origin 项目地址.git 跟远程项目管理
例如:
git remote add origin https:///manyhf16/git-test3.git
6.3) 将远程服务器上的项目同步到本地
git pull origin master
6.4) 将本地代码同步到远程服务器
git push origin master
输入用户名/密码
6.5) 程序员b要在此基础上进行开发
git clone https:///manyhf16/git-test3.git
来源:http://www./content-4-24741.html
|