开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第6天,点击查看活动详情
解决Tomcat服务器在DOS命令窗口中的乱码问题(控制台乱码)
将CATALINA_HOME/conf/logging.properties文件中的内容修改如下:
java.util.logging.ConsoleHandler.encoding = GBK
向浏览器响应一段HTML代码
public void service(ServletRequest request, ServletResponse response){
//设置响应内容为普通文本或者html代码,字符集为utf-8
//设置响应内容要在获取流之前
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
out.print("<h1>hello servlet!</h1>");
/*
这是一根输出流,负责输出字符串到浏览器
这个输出流不需要我们刷新,也不需要我们关闭,这些都由Tomcat来维护
out.flush();
out.close();
*/
}
在Servlet中连接数据库,怎么做?
- Servlet是Java程序,所以在Servlet中完全可以编写JDBC代码连接数据库。
- 在一个webapp中去连接数据库,需要将驱动jar包放到WEB-INF/lib目录下。(com.mysql.cj.jdbc.Driver 这个类就在驱动jar包当中。)
在集成开发环境当中开发Servlet程序
-
集成开发工具很多,其中目前使用比较多的是:
- IntelliJ IDEA(这个居多,IDEA在提示功能方面要强于Eclipse,也就是说IDEA使用起来比Eclipse更加智能,更好用。JetBrain公司开发的。收费的。)
- Eclipse(这个少一些),Eclipse目前还是有团队使用,只不过处于减少的趋势,自己从事工作之后,可能会遇到。Eclipse是IBM团队开发的。Eclipse寓意是“日食”。“日食”表示将太阳吃掉。太阳是SUN。IBM团队开发Eclipse的寓意是吞并SUN公司,但是2009年的时候SUN公司被Oracle公司并购了。IBM并没有成功并购SUN公司。
-
使用IDEA集成开发工具开发Servlet
-
第一步:New Project(我比较习惯先创建一个Empty Project(最下面那个),然后在空工程下新建Module【模块】,这不是必须的,根据个人情况
-
第二步:新建模块(File --> new --> Module...)
- 这里新建的是一个普通的JavaSE模块(这里先不要新建Java Enterprise模块,直接选最上面那个Java就行)
- 这个Module自动会被放在javaweb的project下面。
- 这个Module起名: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)
-
class StudentServlet implements Servlet
-
这个时候发现Servlet.class文件没有。怎么办?将CATALINA_HOME/lib/servlet-api.jar和jsp-api.jar添加到classpath当中(这里的classpath说的是IDEA的classpath)
- File --> Project Structrue --> Modules --> 右边栏中切换到Dependencies-->当前栏下方的 + 加号 --> Add JARS-->apply-->ok
-
实现jakarta.servlet.Servlet接口中的5个方法。 alt + enter 快捷键
-
-