XML
文件类型
<?xml version="1.0" encoding="UTF-8" ?>
<!--
第一行永远是<?xml version="1.0" encoding="UTF-8" ?>
xml有约束 约束用于限制xml内部能编写的内容 自动生成
dtd 简单 上手快 xsd文件
schema 复杂 上手慢
有约束之后有提示
-->
<jdbc>
<dev>
<username>root</username>
<password>root</password>
<driver>com.mysql.jdbc.Driver</driver>
<url>jdbc:mysql://localhost:3306/数据库名</url>
</dev>
<test>
<username>root</username>
<password>root</password>
<driver>com.mysql.jdbc.Driver</driver>
<url>jdbc:mysql://localhost:3306/数据库名</url>
</test>
<formal>
<username>root</username>
<password>root</password>
<driver>com.mysql.jdbc.Driver</driver>
<url>jdbc:mysql://localhost:3306/数据库名</url>
</formal>
</jdbc>
DOM4J解析
运用DOM4J技术对xml文件进行解析
public void testRead() throws Exception{
// 读取jdbc.xml的配置文件,获取document对象
SAXReader saxReader = new SAXReader();
// 通过类加载器获得指向字节编码根路径下的指定文件的输入流
InputStream resourceAsStream = TestDom4j.class.getClassLoader().getResourceAsStream("jdbc.xml");
// 通过输入流获取配置文件,解析成一个dom对象
Document document = saxReader.read(resourceAsStream);
// 从document对象上获取配置文件的信息
Element rootElement = document.getRootElement();
// 这个rootElement就是jdbc.xml中的jdbc
System.out.println(rootElement);
// 获取元素下的子元素
List<Element> elements = rootElement.elements();
for (Element element : elements) {
System.out.println("\t"+element.getName());
// 从元素上获取属性
Attribute a = element.attribute("id");
System.out.println("\t\t"+a.getName()+"="+a.getValue());
// 继续读取子元素
List<Element> eles = element.elements();
for (Element ele : eles) {
System.out.println("\t\t"+ele.getName()+":"+ele.getText());
}
}
}
了解,后期不用写
Tomcat10
服务器运行软件
专门运行WEB应用软件
运行自己开发的代码的运行环境之一
目录
bin
conf:
server.xml 调整HTTP端口号
web.xml 部署项目
logs 日志
webapps:
部署项目,项目的目录
webapps中标准的app目录结构:
Servlet
Servlet 是 Java Web 服务端的一个小程序,主要用户数据的交互,Web 数据展示和数据传递,这里的 Servlet 是一个动态资源。
Servlet 程序可以应对所有类型的请求和响应,Servlet 主要还是用于 HTTP 协议的WEB服务器程序实现。
工作模式
- 浏览器端发送请求至服务器
- 服务器启动并调用Servlet,Servlet根据客户端请求生成响应内容并将其传给服务器
- 服务器将响应返回客户端
初识
UserServlet
public class UserServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String username = req.getParameter("username");
String info = "YES";
if ("whx".equals(username)){
info = "NO";
}
PrintWriter writer = resp.getWriter();
writer.write(info);
}
}
html页面
<form action="userServlet" method="get">
输入: <input type="text" name="username">
<input type="submit" value="校验">
</form>
web.xml
<!--
1.配置Servlet类,并起一个别名
servlet-class 告诉tomcat对应的实例化的servlet类
servlet-name 用于关联请求的映射路径
-->
<servlet>
<servlet-name>userServlet</servlet-name>
<servlet-class>com.example.demo2_servlet2.UserServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>userServlet</servlet-name>
<url-pattern>/userServlet</url-pattern>
</servlet-mapping>