@ by moses on 2015.1
email: [email protected]
1. 用IDE工具如Eclipse创建一个Java工程(或Java Web工程);
2. 在build path - configure build path - Libraries - 选择Add External JARS...
将...\Tomcat 8.0\lib\servlet-api.jar 添加这个第三方Jar包;
3. 在工程根目录下建立一个文件夹,如MyWebRoot(与src同级),里面按照JavaEE 的Servlet规范,再MyWebRoot中创建WEB-INF/classes目录层次
件夹(使用MyEclipse创建JavaWeb工程时会自动为我们创建);
【因为classes文件夹在IDE工具中不可见,所以需要到工程文件中手动创建】
classes文件夹要配置给source的输出目录
4. 在上面的WEB-INF文件夹下新建一个web.xml文件,【用来注册servlet,类似于android的manifest.xml用来注册四大组件】;
需要把web.xml拷贝到IDE里相同目录下
5. 在src目录下写工程的Servlet
如:public class MyServlet extends HttpServlet{ }, 写doGet()方法;
在doGet()方法中,进行响应处理。
【常用方法: GET,POST等, 对应Servlet类中为onGet(),onPost()】
6. 将放置WEB-INF的整个文件夹,如MyWebRoot复制一份到容器中【...\Tomcat 8.0\webapps中】。
(经过上一步编写Servlet,已经在工程目录的WEB-INF/classes目录中自动编译生成相应的class文件,
【因为在classes文件夹中不可见,但是它已经存在。】)
注: 因为Servlet不能独立运行,需要在Tomcat等Servlet容器中运行,其也因此不需要main方法。
同时,在以后每次修改Servlet类代码以后,需要手动将编译后的生成的新的class文件复制到容器中webapps目录录下对应位置覆盖旧的class文
件,或者直接将整个文件夹复制到容器中覆盖旧的文件夹。
7. 在上面的web.xml文件中注册Servlet
MyServlet
MyServlet
MyServlet
/test
中:
servlet信息:
【servlet-name 表示Servlet的名字,即编写的Servlet的类名】
【servlet-class 表示Servlet的路径,如果在classes文件夹中没有别的路径(目录),则直接为Servlet的类名】
中:
servlet映射信息:
【servlet-name 表示Servlet的名字,即编写的Servlet的类名】
【url-pattern 表示请求的URL的名字,如http://localhost:8080/test.html中的test,
或www.http://news.163.com/api/15/0107/01/AFAQD6TN00014AED.html中的AFAQD6TN00014AED】
注意:
“ / ” 不能省略,这里因为是裸包,所以直接用的“ /test ” , 如果不是,则应该为“ /包名/test ”。
servlet-class 指定的是servlet的路径,裸包则直接为servlet类名,如果不是,则应该为“包名.MyServlet”。
8. 访问Servlet
【
http://主机服务器:端口/Servlet容器路径/注册的url-pattern
如http://localhost:8080/MyWebRoot/test ,对比使用Servlet前的http://localhost:8080/test
其实就是通过Servlet对网络的请求和相应进行处理。
】
注意: 使用json时, 需要为工程添加依赖库(jar包),并将其复制到服务端对应的WEB-INF目录中的lib目录下。
JSON.parseObject(object.toJSONString(), City.class);
【根据json key-value 直接生成对象】
封装: 层层封装, 依据json字符串的目录结构。
ListView设置空闲(无数据时)显示progressBar或其他view【mListView.setEmptyView(View v);】