一、
在Servlet3.0流行后,Servlet就可以用注解来写地址了,如:@WebServlet("/..")
,抛弃了以往的在web.xml文件中写配置信息。
如:
<servlet>
<servlet-name>MySecondServlet</servlet-name>
<servlet-class>com.example.test.controller.MySecondServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MySecondServlet</servlet-name>
<url-pattern>/servlet/MySecondServlet</url-pattern>
</servlet-mapping>
以往的缺点:代码量多
优点:有一些配置可以修改。
现在优点:代码量少
缺点:不好更改。
二、
Servlet3.0之前。
1.上传对表单的要求;
>method="post"
>enctype="multipart/form-data",它的默认值是:appication/x-www-form- urlencoded
><input type="file" name="必须给" />
2.上传Servlet的使用;
>request.getParameter()不能再用
>request.getInputStream()使用它来获取整个表单的数据
3.commons-fileupload
>创建工厂
>解析器
>使用解析器来解析resquest对象,得到List<.FileItem>
===========
Servlet3.0对上传提供了支持
1.表单不变
2.在Servlet中不需要在使用commons-fileupload,而是使用Servlet3.0提供的上传组件接口!
request.getPart(“字段名”);得到Part实例
Part:
String getContentType();获取上传文件的MIME类型
String getName 获取表单项名称,不是文件名称
String getHeader(String header); 获取指定头的值
long getSize();获取到文件的大小
InputStream getTnputStream();获取上传文件的内容
void write(String fileName); 吧上传文件保存在指定路径下
*默认Servlet是不支持使 用上传组件:需要给Servlet添加一个注解@MultipartConfig