上机任务(利用好chatgpt,文心一言等工具。):
1、下载软件,并安装:JDK,TOMCAT,IDEA
2、学会用记事本编写jsp文件,并放进tomcat的相关目录下,运行。
3、学会在IDEA编辑器中新建java web项目,并配置tomcat,运行jsp页面。
4、自学IDEA的各种使用技巧。
【练习结果截图如下:】
<%-- Created by IntelliJ IDEA. User: 32682 Date: 2024/4/1 Time: 11:04 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> <html> <head> <title>JSP - Hello World</title> </head> <body> 输出九九乘法表 <br> <% for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { String str = j + "*" + i + "=" + j * i; out.print(str + " "); }out.println("<br>"); } %> </body> </html>
5、JSP编程练习:
(1)用JSP实现用户获取用户输入的操作。(仿教材例5-5)
input.jsp
output.jsp
【练习结果截图如下:】
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>练习1</title> </head> <body> <form action="test_output.jsp" method="post"> <table border="1px solid" frame="void"> <tr> <td> 姓名: </td> <td> <input type="text" name="name"> </td> </tr> <tr> <td> 性别: </td> <td> <input type="radio" name="sex" value="男">男 <input type="radio" name="sex" value="女">女 </td> </tr> <tr> <td> 爱好: </td> <td> <div> <input type="checkbox" name="like" value="篮球">篮球 <input type="checkbox" name="like" value="旅游">旅游 <input type="checkbox" name="like" value="音乐">音乐 <input type="checkbox" name="like" value="摄影">摄影 </div> </td> </tr> <tr> <td> E-mail: </td> <td> <input type="text" name="E-mail"> </td> </tr> <tr> <td> </td> <td> <input type="submit" value="Submit"> <input type="reset" value="全部重写"> </td> </tr> </table> </form> </body> </html>
<%@ page import="java.nio.charset.StandardCharsets" %> <%@ page contentType="text/html;charset=UTF-8" language="java" import="java.util.*" pageEncoding="UTF-8"%> <html> <head> <title>练习2</title> </head> <body> <table border="1px solid" frame="void"> <tr> <td> 姓名: </td> <td> <%=new String(request.getParameter("name").getBytes("ISO-8859-1"),"UTF-8")%> </td> </tr> <tr> <td> 性别: </td> <td> <%=new String(request.getParameter("sex").getBytes("ISO-8859-1"),"UTF-8")%> </td> </tr> <tr> <td> 爱好: </td> <td> <% String []like= request.getParameterValues("like"); for(int i=0;i< like.length;i++){ %> <%=new String(like[i].getBytes("ISO-8859-1"),"UTF-8")+" "%> <% } %> </td> </tr> <tr> <td> E-mail: </td> <td> <%=new String(request.getParameter("E-mail").getBytes("ISO-8859-1"),"UTF-8")%> </td> </tr> </table> </body> </html>
(2)用JSP实现用户登录验证的功能。
- 如果用户输入正确的账号密码,则提示问候语句;如果用户输入错误的账号密码,则提示账号密码有误。
- 任意编写3-4个页面,为每个页面添加权限控制。如果用户已经登录,则在每个页面页首提示:欢迎你,**。如果没有登录跳转到这个页面,则提示:非法访问。
【练习结果截图与代码如下:】
<%@ page contentType="text/html;charset=UTF-8" language="java" import="java.util.*" pageEncoding="GB18030"%> <html> <head> <title>Title</title> </head> <body> <% String username = request.getParameter("UserName"); String password = request.getParameter("UserPassword"); if(username!=null){ if(username.equals("1")&&password.equals("a")){ out.println("您好,张三!"); } if(username.equals("2")&&password.equals("b")){ out.println("您好,李四!"); } if (username.equals("3")&&password.equals("c")){ out.println("您好,Tom!"); } else{ out.println("您输入的账号密码有误,请重新输入!"); } } else{ out.println("请输入账号!"); } %> </body> </html>
<%@ page contentType="text/html;charset=UTF-8" language="java" import="java.util.*" pageEncoding="GB18030"%> <html> <head> <title>登陆界面</title> </head> <body> <% String error = request.getParameter("error"); if (error != null && error.equals("true")) { out.println("<p style='color: red;'>用户名或密码错误,请重试。</p>"); } %> <form action="user_check.jsp" method="post"> <ul style="list-style: none"> <li> 用户名: <input type="text" name="UserName" required> </li> <li> 密码: <input type="password" name="UserPassword" required> </li> <li> <input type="submit" value="登录"> </li> </ul> </form> </body> </html>
<%@ page contentType="text/html;charset=UTF-8" language="java" import="java.util.*" pageEncoding="GB18030"%> <html> <head> <title>检查界面</title> </head> <body> <% String name= request.getParameter("UserName"); String password= request.getParameter("UserPassword"); if (name.equals("Tom")&&password.equals("c")){ session.setAttribute("name",name); response.sendRedirect("user_success.jsp"); } else{ response.sendRedirect("user1.jsp?error=true"); } %> </body> </html>
<%@ page contentType="text/html;charset=UTF-8" language="java" import="java.util.*" pageEncoding="GB18030"%> <html> <head> <title>Title</title> </head> <body> <% String name=(String)session.getAttribute("name"); if(name!=null){ out.println("您好!"+name); } else{ out.println("您好!"+null); out.println("非正常登录"); } session.invalidate(); %> </body> </html>