JavaWeb学习笔记——XML

book.xml

<?xml version="1.0" encoding="UTF-8"?>
<!-- 
	以上是xml文件的声明内容
 -->
<books><!-- books表示多个图书信息 -->
	<book sn="SN12346789"><!-- sn表示图书的序列号 -->
		<name>三国演义</name><!-- name表示书名 -->
		<author>罗贯中</author><!-- author表示作者 -->
		<price>45</price><!-- price表示价格 -->
	</book>
	<book sn="SN123123123">
		<name>水浒传</name>
		<author>施耐庵</author>
		<price>45</price>
	</book>
</books>

Book.java

package books;
/**
 * book类:
 * 	用于存储book.xml中的内容
 * 	类的属性与book.xml中的标签一致
 * @author MCC
 *
 */
public class Book {
	private String sn;
	private String name;
	private String author;
	private double price;
	public Book() {
		super();
	}
	public Book(String sn, String name, String author, double price) {
		super();
		this.sn = sn;
		this.name = name;
		this.author = author;
		this.price = price;
	}
	public String getSn() {
		return sn;
	}
	public void setSn(String sn) {
		this.sn = sn;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getAuthor() {
		return author;
	}
	public void setAuthor(String author) {
		this.author = author;
	}
	public double getPrice() {
		return price;
	}
	public void setPrice(double price) {
		this.price = price;
	}
	@Override
	public String toString() {
		return "book [sn=" + sn + ", name=" + name + ", author=" + author + ", price=" + price + "]";
	}
	
}

Dom4jTest.java

dom4j是第三方提供的操作xml文件的包
步骤:

  1. 创建SAXReader对象:SAXReader reader = new SAXReader();
  2. 读取xml文件:Document doc = reader.read(String src);
  3. 获取根标签:Element root = doc.getRootElement();
  4. Element对象的方法:
    (1)Element element(String e):获取一个名称为e的子标签
    (2)List<Element> elements(String e):获取多个名称为e的子标签
    (3)String attributeValue(String name):获取名称为name的属性值
    (4)String getText():获取标签中的文本内容
    (5)String elementText():直接获取标签内的文本内容,是 Element对象.element(String name).getText() 的合并
    (6)String asXML():把标签对象转换为标签字符串
    根据上述方法,读取xml文件内容,并保存
package books;

import java.util.List;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.junit.Test;

public class Dom4jTest {
	@Test
	public void test1() throws DocumentException {
		//1.创建SaxReader对象
		SAXReader reader = new SAXReader();
		//2.使用SAXReader对象读取xml文件,生成Document对象
		Document document = reader.read("src/xmlFile/book.xml");
		//3.使用Document对象获取xml文件的根标签
		Element rootElement = document.getRootElement();
		//4.获取根元素的所有满足要求的子元素
		/**
		 * element(String e) 获取名称为e的一个子标签
		 * elements(String e) 获取名称为e的多个子标签
		 */
		List<Element> books = rootElement.elements("book");
		//5.遍历获取所有子元素
		for(Element book : books) {
			//asXML() 把标签对象转换为标签字符串
			//System.out.println(book.asXML());
			//attributeValue(String str) 获取标签的str属性
			String sn = book.attributeValue("sn");
			Element eName = book.element("name");
			String author = book.elementText("author");
			String price = book.elementText("price");
			/**
			 * getText() 获取标签中的文本内容
			 * elementText(String e) 获取名称为e的标签中的文本内容,是book.element("name").getText()的合并
			 */
			String name = eName.getText();
			Double dprice = Double.parseDouble(price);
			//应该存入数据库,这里只演示打印
			System.out.println(new Book(sn, name, author, dprice));
		}
	}
	
	
}
Servlet 是 JavaEE 规范中的一部分,是处理 Web 请求的组件。Servlet 运行在服务器端,能够接收客户端发来的请求,并给客户端响应结果。下面我们来看看 Servlet 的基本概念和使用方法。 ## 一、Servlet 的基本概念 ### 1.1 Servlet 的生命周期 Servlet 的生命周期包含以下三个阶段: - 初始化阶段(init):当 Servlet 实例化后,Web 容器会调用其 init() 方法进行初始化操作。在此阶段,Servlet 可以执行一些初始化操作,例如读取配置信息、建立数据库连接等。 - 请求处理阶段(service):当客户端发来请求时,Web 容器会创建一个线程调用 Servlet 的 service() 方法处理请求。在此阶段,Servlet 可以获取请求参数、处理请求并生成响应数据。 - 销毁阶段(destroy):当 Web 应用停止或 Servlet 被卸载时,Web 容器会调用 Servlet 的 destroy() 方法进行清理工作。在此阶段,Servlet 可以释放资源、关闭数据库连接等。 ### 1.2 Servlet 的配置 在使用 Servlet 时,需要在 web.xml 文件中进行配置。以下是一个 Servlet 的基本配置: ```xml <servlet> <servlet-name>MyServlet</servlet-name> <servlet-class>com.example.MyServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>MyServlet</servlet-name> <url-pattern>/myservlet</url-pattern> </servlet-mapping> ``` 其中,servlet-name 表示 Servlet 的名称,servlet-class 表示 Servlet 的类名,url-pattern 表示请求的 URL 匹配规则。 ## 二、Servlet 的使用方法 ### 2.1 编写 Servlet 编写 Servlet 有两种方法:一种是继承 HttpServlet 类,另一种是实现 Servlet 接口。这里以继承 HttpServlet 类为例: ```java public class MyServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // 处理 GET 请求 PrintWriter out = resp.getWriter(); out.println("Hello, world!"); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // 处理 POST 请求 PrintWriter out = resp.getWriter(); out.println("Hello, world!"); } } ``` 在 Servlet 中,doGet() 方法用于处理 GET 请求,doPost() 方法用于处理 POST 请求。通过调用 HttpServletResponse 对象的 getWriter() 方法可以向客户端返回响应数据。 ### 2.2 部署 Servlet 将编写好的 Servlet 部署到 Web 容器中,有两种方法:一种是将 Servlet 类打成 war 包放到 Web 容器的 webapps 目录下,另一种是通过 Eclipse 等开发工具将 Servlet 部署到 Web 容器中。部署完成后,可以通过访问 Servlet 的 URL 来测试 Servlet 是否正常工作。 ## 三、总结 本文介绍了 Servlet 的基本概念和使用方法。Servlet 是 Java Web 开发中非常重要的组件,掌握 Servlet 的使用方法对于 Java Web 开发人员来说是必不可少的。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值