servlet初始化……
servlet销毁!
2017-7-6 19:48:52 org.apache.catalina.core.StandardContext reload
信息: Reloading Context with name [/myServlet] has started
servlet销毁!
2017-7-6 19:48:52 org.apache.catalina.core.StandardContext reload
信息: Reloading Context with name [/myServlet] is completed
servlet初始化……
servlet销毁!
servlet销毁!
servlet销毁!
servlet销毁!
servlet销毁!
servlet销毁!
servlet销毁!
2096Servlet 表单数据
对于解决 POST 中文乱码我们可以这样:
2095Servlet 表单数据
如果用 getparameter() 获取中文只有问号:
由于 tomcat8 默认编码是 utf-8,而这个过滤器把他当成 ISO8859-1 解码时(即解码了两次),就会出现问题,导致所有中文变成问号
所以我们只需要不使用这个过滤器就可以了。
也就是采用以下代码:
这样就能正常显示中文。
2094Servlet 实例
servlet 浏览器访问路径配置有个小问题:
1、java 类里的注解 —— @WebServlet("/HelloServlet") 对应浏览器路径:
2、配置文件(web.xml)里对应的浏览器访问路径:
这两种配一个就好了,不然路径重名的话反而会让tomcat启动不了。
例如这样就启动不了:
修改 web.xml :
修改后,web.xml 和 java 类的注解,对应路径都是:
导致
解决办法:
将注解去掉或者保留注解进入web.xml将映射删除既可以。
2093Servlet 实例
destory 方法被调用后,servlet 被销毁,但是并没有立即被回收,再次请求时,并没有重新初始化。
代码示例:
控制台打印:
2092Servlet 环境设置
设置Classpath的目的,在于告诉Java执行环境,在哪些目录下可以找到您所要执行的Java程序所需要的类或者包。
事实上JDK 5.0默认就会到当前工作目录(上面的.设置),以及JDK的lib目录(这里假设是C:\Program Files\Java\jdk1.5.0_06\lib)中寻找Java程序。所以如果Java程序是在这两个目录中,则不必设置Classpath变量也可以找得到,将来如果Java程序不是放置在这两个目录时,则可以按上述设置Classpath。