不灭的火

革命尚未成功,同志仍须努力下载JDK17

作者:AlbertWen  添加时间:2013-04-19 18:04:52  修改时间:2025-06-08 04:54:54  分类:08.Java基础  编辑

请教一下,getServletContext和getServletConfig都有getInitParameter的方法,

但是他们有什么不同呢?

我在web.xml中web-app根下定义了一个参数P1,

然后在web.xml中的HelloServlet段中也定义了一个参数P1,

在HelloServlet分别作如下输出

String s1 = getServletConfig().getInitParameter("P1");
String s2 = getServletContext().getInitParameter("P1");
String s3 = getServletConfig().getServletContext().getInitParameter("P1");
String s4 = getInitParameter("P1");
作者:AlbertWen  添加时间:2013-04-19 17:14:49  修改时间:2025-06-02 23:17:13  分类:08.Java基础  编辑
HttpServletRequest类既有getAttribute()方法,也有getParameter()方法,这两个方法有以下区别:


1、HttpServletRequest类有setAttribute()方法,而没有setParameter()方法;


2、当两个Web组件之间为链接关系时,被链接的组件通过getParameter()方法来获得请求参数;
作者:AlbertWen  添加时间:2013-04-19 11:07:11  修改时间:2025-06-04 18:43:25  分类:08.Java基础  编辑
作者:AlbertWen  添加时间:2018-10-14 20:15:56  修改时间:2025-05-31 15:52:22  分类:08.Java基础  编辑

Java序列化是指把Java对象转换为字节序列的过程;而Java反序列化是指把字节序列恢复为Java对象的过程。从而达到网络传输、本地存储的效果。

本文主要要看看JDK中使用Serializable和Externalizable接口来完成Java对象序列化,并给出部分属性序列化的几种方式,最终做出Serializable和Externalizable接口的几个方面的对比。

注:本文不讨论为什么不用第三方工具包完成序列化等~

作者:AlbertWen  添加时间:2013-04-18 13:42:19  修改时间:2025-05-22 18:56:39  分类:08.Java基础  编辑

以最终客户的角度来看,JAR文件就是一种封装,他们不需要知道jar文件中有多少个.class文件,每个文件中的功能与作用,同样可以得到他们希望的结果。除jar以外对于J2EE来说还有war和ear。区别见下表:

  JAR WAR EAR
英文 Java Archive file Web Archive file Enterprise Archive file
包含内容 class、properties文件,是文件封装的最小单元;包含Java类的普通库、资源(resources)、辅助文件(auxiliary files)等 Servlet、JSP页面、JSP标记库、JAR库文件、HTML/XML文档和其他公用资源文件,如图片、音频文件等 除了包含JAR、WAR以外,还包括EJB组件
部署文件 application-client.xml web.xml application.xml
容器 应用服务器(application servers) 小型服务程序容器(servlet containers) EJB容器(EJB containers)
级别
作者:AlbertWen  添加时间:2013-04-15 20:42:01  修改时间:2025-06-05 07:27:04  分类:08.Java基础  编辑

1、启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<context-param>和<listener>两个节点。

2、紧急着,容创建一个ServletContext(servlet上下文),这个web项目的所有部分都将共享这个上下文。

3、容器将<context-param>转换为键值对,并交给servletContext

4、容器创建<listener>中的类实例,创建监听器。

作者:AlbertWen  添加时间:2013-04-15 10:02:15  修改时间:2025-05-22 19:27:57  分类:08.Java基础  编辑

今天在编写Java程序的时候,发现这个警告提示,于是google了一下。得到答案如下:

If a serializable class does not explicitly declare a serialVersionUID, then the serialization runtime will calculate a default serialVersionUID value for that class based on various aspects of the class, as described in the Java(TM) Object Serialization Specification.

 

作者:AlbertWen  添加时间:2018-09-17 16:33:12  修改时间:2025-05-22 19:35:00  分类:08.Java基础  编辑
public static void main(String[] args) {
    String keyWord = "chrome.exe";

    Runtime runtime = Runtime.getRuntime();

    try {
        Process process = runtime.exec("cmd /c Tasklist");

        BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream()));

        String s;
        while ((s = in.readLine()) != null) {
            s = s.toLowerCase();
            if (s.startsWith(keyWord)) {
                System.out.println("==========>" + keyWord);
                break;
            }
        }
    } catch (IOException e) {
        e.printStackTrace();
    }
}
作者:AlbertWen  添加时间:2018-06-05 15:13:18  修改时间:2025-05-23 08:53:29  分类:08.Java基础  编辑

maven优势:

  • 1. 项目自动化编译部署

作者:AlbertWen  添加时间:2018-06-06 23:47:46  修改时间:2025-06-03 18:01:48  分类:08.Java基础  编辑

在项目中如果有些参数经常需要修改,或者后期可能需要修改,那我们最好把这些参数放到properties文件中,源代码中读取properties里面的配置,这样后期只需要改动properties文件即可,不需要修改源代码,这样更加方便。在Spring中也可以这么做,而且Spring有两种加载properties文件的方式:基于xml方式和基于注解方式。下面分别讨论下这两种方式。

1. 通过xml方式加载properties文件

2. 通过注解方式加载properties文件