severlet 学习基础
来源:互联网 发布:wow数据库 3.35 编辑:程序博客网 时间:2024/06/05 17:24
<load-on-satrtup>x</load-on-satrtup> x 小的先执行
Httpservrlet request:作用范围只在一次请求中
request.setAttribte();给值。
四个方法:
setAttbute..();
HttpSession session :
HttpSession session=request.getSession();取值。
1,在respose.getSession ,获取
2,当浏览器或者服务器没关都有效
3,<session-time></session->
4,执行session.invalidate();就会清理数据及失效
5,<session-config><session-timeout>10</session-timeout></session-config>
等待刷新时间差(10分钟)
6,session.getId();服务器和浏览器没有配对就session无效!并且不会重复!
服务器与浏览器关系!session.getId() !SessionID()....>
浏览器发送一次请求到服务器,服务器首先判断,该请求是否携带一个SessionID值
如果这次请求没有携带一个SessionID值,服务器就知道了,这是第一次来访问该服务器
浏览器与该服务器开始建立会话
服务器会在相应请求的同时,将产生一个SessionID,作为该次会话的标识
再把这个SessionID发给浏览器,浏览器就拥有一个SessionID了
当再次访问该服务器时,浏览器会携带那个SessionID,被传到服务器
服务器首先判断该请求是否携带一个SessionID值,此时有了,代表这不是一个新的会话的请求
如果浏览器两个请求之间的时间太长,超出服务器等待的时间,服务器会删除这个session对象
删除后,再次发送到该服务器,因为服务器里没有这个session对象了,就不能判断请求是否携带SessionID值
也就是说判断不出来,就认为这是一个新的会话开始,又会产生一个SessionID,作为这次新会话的标识
又把这个SessionID发给浏览器,浏览器就拥有一个新的SessionID了
在会话开始时,服务器会自动分配一个空间(session对象),SessionID就在session对象里
severletConfig
接口 所有的severlet都可调用,severletConfig 一个项目被共享
ServletConfig fig=this.getServletConfig();
fig.getInitParameter(String src);获得当前目录下的所有文件获得: SeverletConfig fig=this.getSeverletConfig();
步凑: 在web里面定义<init-param><param-name>name</param-name>
<param-value>abc</param-value>
</init-param>
获取值fig.getInitParameterName(); 获取所有
fig,getSeverLetContext();,枚举一个
获得:SeverletConfig fig=this.getSeverLetContext();
在web中的调试代码
<!-- 跳转 -->
<servlet>
<servlet-name>severlet</servlet-name>
<servlet-class>testSeverlet.severlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>severlet</servlet-name>
<url-pattern>/severlet</url-pattern>
</servlet-mapping>
<!-- session测试 -->
<servlet>
<servlet-name>sessionT0</servlet-name>
<servlet-class>sessionT.sessionT0</servlet-class>
<!--设置 severletConfig -->
<init-param><param-name>name</param-name>
<param-value>abc</param-value>
</init-param>
<init-param><param-name>jdbc</param-name>
<param-value>jdbc://127.0.0.1:8080/std</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>sessionT0</servlet-name>
<url-pattern>/sessionT0</url-pattern>
</servlet-mapping>
<!-- 过滤器 -->
<filter>
<filter-name>severletT1</filter-name>
<filter-class>sessionT.severletT1</filter-class>
</filter>
<filter-mapping>
<filter-name> severletT1</filter-name><!--路径 -->
<url-pattern>/*</url-pattern><!--过滤的范围 -->
</filter-mapping>
在class文件代码:
第一个class调试类:
public class severletT1 extends HttpServlet implements Filter{
// @Override
// throws ServletException, IOException {
// // TODO Auto-generated method stub
// doPost(request, response);
//}
// @Override
// protected void doPost(HttpServletRequest request, HttpServletResponse response)
// throws ServletException, IOException {
// // TODO Auto-generated method stub
//// ServletConfig fig2=this.getServletConfig();
//// System.out.println(fig2.getInitParameter("name"));
//// System.out.println(fig2.getInitParameterNames());
//// ServletContext fig=this.getServletContext();
//// System.out.println(fig.getAttribute("jdbc"));
//
// }
//
@Override
public void destroy() {
// TODO Auto-generated method stub
super.destroy();
}
@Override
public void doFilter(ServletRequest arg0, ServletResponse arg1,
FilterChain arg2) throws IOException, ServletException {
// TODO Auto-generated method stub
System.out.println("aandjkashdgasdgasjhdga");
}
@Override
public void init(FilterConfig arg0) throws ServletException {
// TODO Auto-generated method stub
}
第二个class调试类:
public class sessionT0 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
HttpSession session=request.getSession();
request.setAttribute("name","gg");
request.setAttribute("pwd","123456");
session.setAttribute("name1","hh");
session.setAttribute("pwd1", "123hh");
System.out.println(session.getId());
//session.invalidate(); //失效
ServletConfig fig=this.getServletConfig();
System.out.println(fig.getInitParameter("jdbc"));
System.out.println(fig.getInitParameterNames());
ServletContext fig2=this.getServletContext();
fig2.getAttribute("jdbc");
// request.getRequestDispatcher("SE.jsp").forward(request, response);
// return;
}
}
- severlet 学习基础
- 操作severlet 基础
- severlet技术概念 基础
- jsp&severlet学习笔记
- severlet
- 安卓应用服务器端开发基础示例----基于severlet的登陆验证
- jsp与severlet
- severlet与jsp
- JSP与SEVERLET
- severlet使用myEcplice
- severlet容器、web容器概念
- jsp和severlet的区别
- jsp报错缺少severlet
- severlet get post 请求 响应
- J2EE知识扫肓--JSP与SEVERLET
- severlet可用而jsp做不到的
- Severlet异步长连接调试成功示例
- javaweb 三大组件之Severlet
- repo/git 常见问题纪录
- Struts2的国际化和消息处理
- i*(i+1)*(i+2)/6
- Wavelet(小波变换)
- Drug-Target Interaction 预测中的几个数据库
- severlet 学习基础
- Laravel-admin column設置寬度
- 链接与自定义函数名同名的库函数
- mysql中explain详解
- python操作数据库
- Android嵌入式系统程序开发(基于Cortex-A8)
- matlab截取一段视频和裁剪一小块视频区域
- Elasticsearch 性能监控基础
- 好程序需要你写(至少)两遍