intellij-idea|JavaWeb: IntelliJ IDEA集成开发环境下开发第一个servlet程序(JDBC)Tomcat

JavaWeb: IntelliJ IDEA集成开发环境下开发第一个servlet程序 第一步:创建工程 New Project:先创建一个空工程(Empty Projcet),起名为:javaweb。
第二步:新建模块 File --> new --> Module…
这里新建的是一个普通的JavaSE模块,这个Module自动会被放在javaweb的project下面。起名为:servlet01。
第三步:让Module变成JavaEE的模块 让Module变成webapp的模块。符合webapp规范。符合Servlet规范的Module。

  • 在Module上点击右键:Add Framework Support…(添加框架支持)
  • 在弹出的窗口中,选择Web Application(选择的是webapp的支持)
  • 选择了这个webapp的支持之后,IDEA会自动给你生成一个符合Servlet规范的webpp目录结构。
    重点,需要注意的:在IDEA工具中根据Web Application模板生成的目录中有一个web目录,这个目录就代表webapp的根
第四步:(非必须):根据Web Application生成的资源中有index.jsp文件,这里我选择删除这个index.jsp文件。 第五步:编写Servlet(StudentServlet) 【intellij-idea|JavaWeb: IntelliJ IDEA集成开发环境下开发第一个servlet程序(JDBC)Tomcat】class StudentServlet implements Servlet
Servlet.class文件没有,将CATALINA_HOME/lib/servlet-api.jarjsp-api.jar添加到classpath当中(这里的classpath说的是IDEA的classpath
File --> Project Structrue --> Modules --> + 加号 --> Add JARS…
intellij-idea|JavaWeb: IntelliJ IDEA集成开发环境下开发第一个servlet程序(JDBC)Tomcat
文章图片

实现jakarta.servlet.Servlet接口中的5个方法。
第六步:在Servlet当中的service方法中编写业务代码(连接数据库)
intellij-idea|JavaWeb: IntelliJ IDEA集成开发环境下开发第一个servlet程序(JDBC)Tomcat
文章图片

实现StudentServlet类:
package com.lhr.javaweb.servlet; 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; import java.sql.*; public class StudentServlet implements Servlet{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{ // 注册驱动 (com.mysql.jdbc.Driver,这个已过时。) // 新版本中建议使用:com.mysql.cj.jdbc.Driver驱动。 Class.forName("com.mysql.cj.jdbc.Driver"); // 获取连接 String url = "jdbc:mysql://localhost:3306/student"; String user = "root"; String password = "luhaoran2001"; 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"); //System.out.println(no + "," + name); out.print(no + "," + name + "
"); } }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; } }

这里再补充下mysql数据库的相关配置:
intellij-idea|JavaWeb: IntelliJ IDEA集成开发环境下开发第一个servlet程序(JDBC)Tomcat
文章图片

建立student数据库,建立t_student表,插入四条数据。
查看表的内容:
intellij-idea|JavaWeb: IntelliJ IDEA集成开发环境下开发第一个servlet程序(JDBC)Tomcat
文章图片

第七步:在WEB-INF目录下新建了一个子目录:lib,并且将连接数据库的驱动jar包放到lib目录下。 在web.xml文件中完成StudentServlet类的注册。(请求路径和Servlet之间对应起来)
> >studentServlet >com.bjpowernode.javaweb.servlet.StudentServlet > >studentServlet /servlet/student

第九步:给一个html页面,在HTML页面中编写一个超链接,用户点击这个超链接,发送请求,Tomcat执行后台的StudentServlet。 student.html这个文件不能放到WEB-INF目录里面,只能放到WEB-INF目录外面。
student.html文件的内容:
student pagestudent list

第十步:让IDEA工具去关联Tomcat服务器。关联的过程当中将webapp部署到Tomcat服务器当中。
  • IDEA工具右上角,绿色小锤子右边有一个:Add Configuration
  • 左上角加号,点击Tomcat Server --> local
  • 在弹出的界面中设置服务器Server的参数(基本上不用动)
  • 在当前窗口中有一个Deployment(点击这个用来部署webapp),继续点击加号,部署即可。
  • 修改 Application context为:/xmm
    intellij-idea|JavaWeb: IntelliJ IDEA集成开发环境下开发第一个servlet程序(JDBC)Tomcat
    文章图片
第十一步:启动Tomcat服务器 在右上角有绿色的箭头,或者绿色的小虫子,点击这个绿色的小虫子,可以采用debug的模式启动Tomcat服务器。
注意:
此时运行发生了报错是apache-Tomcat在mac中权限的问题,解决的方法,找到Tomcat的目录下(终端下):
# sudo chmod -R755 apache-tomcat-10.0.12
启动界面如下:
intellij-idea|JavaWeb: IntelliJ IDEA集成开发环境下开发第一个servlet程序(JDBC)Tomcat
文章图片

第十二步:打开浏览器,在浏览器地址栏上输入:http://localhost:8080/xmm/student.html 演示结果如下:
intellij-idea|JavaWeb: IntelliJ IDEA集成开发环境下开发第一个servlet程序(JDBC)Tomcat
文章图片

intellij-idea|JavaWeb: IntelliJ IDEA集成开发环境下开发第一个servlet程序(JDBC)Tomcat
文章图片

恭喜你完成了第一个servlet程序。

    推荐阅读