03使用IDEA快速开发一个WEB应用的具体流程

使用集成开发环境实现web开发

集成开发工具很多,其中目前使用比较多的是IntelliJ IDEA和Eclipse

  • IntelliJ IDEA(居多): JetBrain公司开发的收费软件, IDEA在提示功能方面要强于Eclipse使用起来更加智能更好用
  • Eclipse(较少):Eclipse是IBM团队开发的, Eclipse寓意是“日食”(日是SUN公司), 但是2009年的时候SUN公司被Oracle公司并购了

使用IDEA实现WEB开发

第一步: New Project(如创建一个Empty Project空工程) —> New Module(在该空工程下新建一个普通的Java模块/基于Maven的Java Enterprise模块)

  • 这个Empty Project起名为javaweb, Module起名servlet01自动会被放在javaweb工程的下面

在这里插入图片描述

第二步: 如果新建的是普通的Java模块需要变成符合webapp规范的JavaEE模块

  • 在Module上右键点击Add Framework Support(添加框架支持), 在弹出的窗口中选择Web Application默认是4.0版本

在这里插入图片描述

第三步: IDEA根据Web Application模板自动生成一个符合Servlet规范的web目录, 这个web目录就代表webapps目录中的一个项目

  • Web Application模板生成的index.jsp资源文件可以选择删除
    在这里插入图片描述

第四步:将Servlet.class文件所在的servlet-api.jar以及jsp-api.jar添加到IDEA的classpath当中, 编写XxxServlet实现jakarta.servlet.Servlet接口中的5个方法

  • File–>Project Structrue(设置工程结构)–>Modules–>Dependencies --> 点击 " + "添加依赖 --> Add JARS(添加单独的jar包)/ Add Libraries (添加整个库的jar包)
  • Modules SDK 换成对应的jdk版本 , 在File -> settings -> Java compile设置jdk版本
    在这里插入图片描述

第五步:在Servlet当中的service方法中编写业务代码(我们这里实现连接数据库的功能)

  • 由于连接数据库需要第三方的jar包 , 此时需要在WEB-INF目录下新建一个lib子目录用来存放连接数据库驱动所在的jar包
//这些类都不是JDK中的jar包,需要通过classpath环境变量告诉虚拟机从哪加载这些类 
import jakarta.servlet.Servlet;
import jakarta.servlet.ServletException;
import jakarta.servlet.ServletRequest;
import jakarta.servlet.ServletResponse;
import jakarta.servlet.ServletConfig;
import java.io.IOException;
import java.io.PrintWriter;

public class StudentServlet implements Servlet{
    
    
    //实现jakarta.servlet.Servlet接口中的5个方法
	public void init(ServletConfig config) throws ServletException{
    
    
	}
    
	public void service(ServletRequest request,ServletResponse response) throws ServletException , IOException{
    
    
        // 设置响应的内容类型
		response.setContentType("text/html");
		PrintWriter out = response.getWriter();

		// 编写JDBC代码,连接数据库,查询所有学生信息。
		Connection conn = null;
		PreparedStatement ps = null;
		ResultSet rs = null;
		try{
    
    
			// 注册驱动 
			Class.forName("com.mysql.cj.jdbc.Driver");
			// 获取连接
			String url = "jdbc:mysql://localhost:3306/bjpowernode";
			String user = "root";
			String password = "root";
			conn = DriverManager.getConnection(url,user,password);
			// 获取预编译的数据库操作对象
			String sql = "select no,name from t_student";
			ps = conn.prepareStatement(sql);
			// 执行SQL
			rs = ps.executeQuery();
			// 处理查询结果集
			while(rs.next()){
    
    
				String no = rs.getString("no");
				String name = rs.getString("name");
				//将查询到的信息输出到浏览器
				out.print(no + "," + name + "<br>");
			}
		}catch(Exception e){
    
    
			e.printStackTrace();
		}finally{
    
    
			// 释放资源
			if(rs != null){
    
    
				try{
    
    
					rs.close();
				}catch(Exception e){
    
    
					e.printStackTrace();
				}
			}
			if(ps != null){
    
    
				try{
    
    
					ps.close();
				}catch(Exception e){
    
    
					e.printStackTrace();
				}
			}
			if(conn != null){
    
    
				try{
    
    
					conn.close();
				}catch(Exception e){
    
    
					e.printStackTrace();
				}
			}
		}
	}
	public void destroy(){
    
    
	
	}
	public String getServletInfo(){
    
    
		return "";
	}
	public ServletConfig getServletConfig(){
    
    
		return null;
	}
}

第六步:在WEB-INF目录下的web.xml文件中完成StudentServlet类的注册(指定请求路径和Servlet之间的对应关系)

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <servlet>
        <servlet-name>studentServlet</servlet-name>
        <servlet-class>com.bjpowernode.javaweb.servlet.StudentServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>studentServlet</servlet-name>
        <url-pattern>/servlet/student</url-pattern>
    </servlet-mapping>
</web-app>

第七步:在WEB-INF目录外面准备一个student.html页面,用户点击页面中的超链接时发送请求,Tomcat服务器接受请求执行后台的Servlet程序

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>student page</title>
</head>
<body>
    <!--这里的项目名是 "/xmm" 先写死,以后学了JSP可以动态获取-->
    <a href="/xmm/servlet/student">student list</a>
</body>
</html>

第八步:让IDEA工具关联Tomcat服务器 , 关联的过程当中IDEA会将开发的web项目部署到Tomcat服务器的webapps目录下

  • 点击IDEA工具右上角绿色小锤子的右边有一个Add Configuration选项 , 在弹出的窗口中点击左上角 " + " 添加Tomcat Server到local(本地)
    在这里插入图片描述

第九步: 配置服务器的Server相关参数, URL, JRE的版本(与jdk版本对应) ,服务器的名字/安装包/启动服务器时的行为/代码改动时的行为

  • IDEA中改完Servelt的源代码后默认需重启服务器 , 如果不想重启服务器需要配置更新字节码文件时自动重启Tomcat服务器
    在这里插入图片描述

第十步: 配置服务器的Deployment部署的相关参数, 点击 " + " 添加Artifact指定要部署的web项目

  • Application context参数指定web应用的上下文路径

在这里插入图片描述

第十一步:使用右上角绿色的小虫子以debug的方式启动Tomcat服务器方便打断点调试

第十二步:打开浏览器在地址栏上输入http://localhost:8080/xmm/student.html, 访问Tomcat服务器上的xmm项目下的资源查看页面效果

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_57005976/article/details/131032204