别被Spring吓跑,手把手教你如何用jsp做简单的网站,小白也能上手
很多人一听到Java Web开发,脑子里全是Spring Boot、微服务、分布式,头都大了。其实,如果你只是想快速搭建一个能跑起来的内部管理系统,或者给公司做个简单的展示型官网,根本没必要搞那么复杂。今天我就掏心窝子说说,如何用jsp做简单的网站,让你绕过那些晦涩的理论,直接上手干活。
我当年刚入行那会儿,导师丢给我个项目,让我用JSP做个后台。我第一反应是:这都2024年了,谁还写JSP啊?但现实是,很多老系统的维护、小型企业的快速需求,JSP依然是一把好手。它简单、直接,不需要配置一堆XML文件,只要你有Tomcat,就能跑起来。
先说环境。别去整那些IDEA的高级配置,直接用Eclipse或者IntelliJ IDEA的社区版就行。建一个Dynamic Web Project,这是关键。别选Java EE 8那种重得要死的模板,选个Java EE 6或者7,甚至Java SE 8就够用了。Tomcat服务器选个稳定的版本,比如9.0.x,别用最新的,容易出幺蛾子。
第一步,理清目录结构。很多人搞不定JSP,是因为文件乱放。你必须在WebContent(或WebRoot)目录下,乖乖建好这几个文件夹:WEB-INF、css、js、images。记住,所有JSP文件最好都放在WEB-INF下面,这样用户不能直接通过URL访问,安全性高一点。虽然对于简单网站来说,这步不是必须的,但养成好习惯总没错。
第二步,写第一个JSP页面。别一上来就搞复杂的标签库。就用最原始的HTML+JSP脚本。比如index.jsp,里面直接写HTML,然后在body里加个<% out.println("Hello World"); %>。这时候启动Tomcat,访问localhost:8080/项目名/index.jsp,看到Hello World,你就成功了一半。这一步能帮你建立信心,别嫌low,能跑通就是硬道理。
第三步,处理表单提交。这是动态网站的核心。用户输入数据,你得接收。新建一个servlet,继承HttpServlet,重写doPost方法。在doPost里,用request.getParameter("username")获取用户输入。这里有个坑,中文乱码。别指望自动解决,直接在方法开头加上request.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8"); 这两行代码,能解决80%的乱码问题。剩下的20%,去检查你的JSP页面头部有没有加<%@ page contentType="text/html;charset=UTF-8" language="java" %>。
第四步,数据展示。收到数据后,别直接打印。把它存到request.setAttribute里,然后转发到另一个JSP页面。比如forward到show.jsp。在show.jsp里,用EL表达式${username}显示数据。EL表达式比JSP脚本<%= %>好看多了,也安全多了。这时候,你就完成了一个最简单的“提交-处理-展示”闭环。
第五步,样式美化。别用内联样式,太丑。去下载Bootstrap,把css和js文件放到对应的文件夹里,在JSP里用和