pull解析和Tomcat

一、:pull解析

在android系统或者Web中,很多资源文件中,很多都是xml格式,在android系统中解析这些xml的方式,是使用pul解析器进行解析的,当pull解析器,开始解析之后,我们可以调用它的next()方法,来获取下一个解析事件(就是开始文档,结束文档,开始标签,结束标签),当处于某个元素时可以调用XmlPullParser的getAttributte()方法来获取属性的值,也可调用它的nextText()获取本节点的值。

对xml解析之前需要先导入一个kxml的jar包

package cn.itcast.tool;

import java.io.FileInputStream;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;

import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import org.xmlpull.v1.XmlPullParserFactory;

import cn.itcast.bean.Student;

public class PullTool {
	//使用pull解析
	public static List<Student> parserXml(InputStream is) throws Exception{
		//0
		List<Student> list =null;
		Student  stu = null;
		//1 创建解析工厂
		XmlPullParserFactory factory =	XmlPullParserFactory.newInstance();
		//2 使用工厂获得解析器
		XmlPullParser parser = factory.newPullParser();
		//3 使用解析器获得xml流
		parser.setInput(is, "UTF-8");
		//4 获得当前事件的状态
		int type = parser.getEventType();
		//判断当前是否结束
		while(type != XmlPullParser.END_DOCUMENT){
			switch (type) {
			case XmlPullParser.START_TAG:
				//判断如果是students事件
				if("students".equals(parser.getName())){
					list = new ArrayList<Student>();
				}else if("student".equals(parser.getName())){
					//初始化student事件
					stu = new Student();
					String number = parser.getAttributeValue(null,"number");
					stu.setNumber(number);
				}else if("name".equals(parser.getName())){
					String name =  parser.nextText();
					stu.setName(name);
				}else if("sex".equals(parser.getName())){
					String sex =  parser.nextText();
					stu.setSex(sex);
				}else if("age".equals(parser.getName())){
					int  age =  Integer.parseInt(parser.nextText());
					stu.setAge(age);
				}
				
				break;
			case XmlPullParser.END_TAG:
				if("student".equals(parser.getName())){
					list.add(stu);
					stu = null;
				}
				break;
			default:
				break;
			}
			
			//让解析器解析下一行
			type = parser.next();
		}
		return list;
	}
	public static void main(String[] args) throws Exception {
		FileInputStream is = new FileInputStream("src/stu.xml");	
		List<Student> list = PullTool.parserXml(is);	
		System.out.println(list);
		
		is.close();		
	}
}
输出结果:[Student [number=itcast_0001, name=tom, sex=male, age=18], Student [number=itcast_0002, name=jerry, sex=male, age=16]]
下面是被解析的xml文档stu.xml

<?xml version="1.0" encoding="UTF-8" ?>
<students>
	<student number="itcast_0001" >
		<name>tom</name>
		<sex>male</sex>
		<age>18</age>
	</student>
	<student number="itcast_0002" >
		<name>jerry</name>
		<sex>male</sex>
		<age>16</age>
	</student>
</students>

二、:Tomcat

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML标准通用标记语言下的一个应用)页面的访问请求。

Tomcat主要目录结构:
bin:二进制可执行文件,包含启动和关闭tomcat文件;
conf:配置文件,其中包含了server.xml、context.xml、web.xml等;
webapps:存放应用程序的目录

tomcat与myeclipse的整合

整合之后就不用配置环境变量

直接在MyEclipse中打开或者重启Tomcat


三、:动态Web项目的创建

JavaWeb应用程序的标准目录结构
应用目录/WEB-INF
应用目录/WEB-INF/web.xml
应用目录/WEB-INF/classes
应用目录/WEB-INF/lib

创建JavaWeb应用程序流程:
1. 创建web项目目录
2. 设计web项目目录结构
3. 编写web项目代码
4. 部署web项目到Tomcat的webapps目录下
5. 运行web项目

你可能感兴趣的:(TO,java,Web,pull解析)