当前位置:   article > 正文

JSP基础实验(期末复习)_jsp实验

jsp实验

实验1 jsp开发环境搭建

一、搭建JSP开发环境

         JSP开发环境是用来开发、测试和运行JSP程序的地方。在此以JDK_1.7.0_75、apache-tomcat-8.0.52、EelipseLunaServiceRelease2(4.4.2)为例,安装配置JSP开发环境。

(一)安装JDK要点:安装完jdk后,需手动配置JDK_HOME、PATH和CLASS_PATH环境变量。

(二)安装Tomcat要点:若手动安装Tomcat,需配置CATALINA_HOME和PATH环境变量。安装后需要先测试TOMCAT:在浏览器中输入:http://localhost:8080访问Tomcat首页。

(三)安装Eclipse内容要点:

(1)绑定Eclipse与Tomcat。在Eclipse中选择“窗口”→“首选项”。依次单击“Server”→“RuntimeEnviroments”→“Add”,选择相应版本的Tomcat及其安装路径,单击Finish按钮,完成Eclipse的绑定配置。

(2)设置UTF-8编码方式为,防止出现乱码。在Eclipse中选择“窗口”→“首选项”。依次在“常规”→“工作空间”中的“文本文件编码”设置“其他”的值为“UTF-8”;在“常规”→“内容类型”→“Java源文件”中设置“缺省编码”的值为“UTF-8”;在“Web”→“JSPFiles”中将编码方式改为“UTF-8”

二、创建JSP网站,并制作简单的JSP网页

(一)创建一个JSP网站,并使用记事本制作一个JSP网页,在页面中显示“您好,这是我的第一个JSP站点。”

1.创建JSP网站和JSP网页。

在Tomcat的安装目录下webapps/Root下新建sy1站点文件夹,在其中使用记事本创建一个JSP文件,文件名为“sy1_1.jsp”。

  1. <html>
  2. <head>
  3. <title>test.jsp</title>
  4. </head>
  5. <body>
  6. <%out.println("您好,这是我的第一个JSP站点!");%>
  7. </body></html>

2.发布测试创建的“test.jsp”文件。

在IE浏览器中输入:http://localhost:8080/sy1/sy1_1.jsp

3.查看网页中的汉字是否正常显示?如果显示为乱码,可做如下操作。在网页代码的第一行(或<html>的上面)插入如下代码,解决汉字为乱码的问题。

<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>

(二)使用Eclipse创建JSP网站,并制作一个简单JSP网页,在页面中显示100以内的和

1.创建Web项目。打开Eclipse开发环境,选择“文件”→“新建”→“DynamicWebProject”,在打开的对话框中,输入项目名“sy1”,并选定“TargetRuntime”为“ApacheTomcatv7.0”,点击“完成”按钮,完成Web项目的创建。

2.创建JSP文件。右单击“sy1”项目的“WebContent”目录,选择“新建”→“JSPFile”,在“NewJSPFile”对话框的文件名中输入“sy1_2.jsp”,点击“完成”按钮,完成JSP页面的创建。在页面的<body>标签中,输入以下代码:

  1. <% int sum=0; for(int i=1;i<=100;i++){ sum+=i; } %>
  2. <% out.println("1到100的和为:"+sum); %>

3.运行JSP文件。在页面的空白处点击鼠标右键,选择“运行方式”→“RunonServer”运行JSP文件。

实验2 Web前端基础

任务一:创建并设计一个网站主页

1.打开Eelipse,新建一个JSP网站,名称为“sy2”。

2.新建一个JSP文件,并将其命名为“sy2_1.jsp”。

3.打开sy2_1.jsp页面,按照“图2.1效果图1”,制作机械工业出版社的网站首页。

4.要求:

(1)利用Dreamweaver软件进行前端网页设计

(2)CSS样式存放在style.css中

(3)图片存放在images文件夹中

(4)页面中的新闻列表内容要加入向上滚动效果(正常+无缝)图2.1效果图1

滚动文字(正常+无缝)代码:

1.正常滚动代码鼠标悬停

(1)文字滚动

  1. <marquee direction="up" width="200px" onmouseover=stop() onmouseout=start() scrollAmount="1" scrollDelay="5">
  2. 插入你要输入的文字
  3. </marquee>

(2)图片滚动

  1. <marquee onMouseOut=this.start() onMouseOver=this.stop() scrolldelay=2>
  2. <img src=图片地址>
  3. <img src=图片地址>
  4. <img src=图片地址>
  5. <img src=图片地址>
  6. </marquee>

控制滚动方向direction=left左、up上;控制滚动速度scrollAmount=1

2.无缝滚动

占位

任务二:创建并设计一个表单网页

1.新建一个JSP文件,并将其命名为“sy2_2.jsp”。

2.打开sy2_2.jsp页面,按照“图2.2效果图2”,制作一个表单网页。

3.要求:

(1)制作一个简单的用户注册页面,包括用户名(username)、密码(password)、确认密码(pass2)、邮箱(useremai)和电话(uerphone),及注册和重置按钮。

  1. <form action="zhuce.jsp" name="myForm" id="formsub" onSubmit="returnformsub()" method="post">
  2. <table cellpadding="0" cellspacing="0">
  3. <tr>
  4. <td>用户名:</td>
  5. <td>
  6. <input type="text" name="username" id="username" onClick="checkusername()" />
  7. </td>
  8. <td>
  9. <label id="usernameerror"></label>
  10. </td>
  11. </tr>
  12. <tr>
  13. <td>密码:</td>
  14. <td>
  15. <input type="password" name="pass" id="pass" onclick="checkpass()" />
  16. </td>
  17. <td>
  18. <label id="passerror"></label>
  19. </td>
  20. </tr>
  21. <tr>
  22. <td>确认密码:</td>
  23. <td>
  24. <input type="password" name="pass2" id="pass2" onclick="checkpass2()" />
  25. </td>
  26. <td>
  27. <label id="pass2error"></label>
  28. </td>
  29. </tr>
  30. <tr>
  31. <td>邮箱:</td>
  32. <td>
  33. <input type="text" name="useremail" id="useremail" onClick="checkuseremail()" />
  34. </td>
  35. <td>
  36. <label id="useremailerror"></label>
  37. </td>
  38. </tr>
  39. <tr>
  40. <td>电话:</td>
  41. <td>
  42. <input type="text" name="uerphone" id="uerphone" onClick="checkphone()" />
  43. </td>
  44. <td>
  45. <label id="uerphoneerror"></label>
  46. </td>
  47. </tr>
  48. <tr>
  49. <td>
  50. <input type="submit" value="注册" />
  51. </td>
  52. <td>
  53. <input type="reset" value="重置" />
  54. </td>
  55. </tr>
  56. </table>
  57. </form>

(2)对各输入项的内容使用Javascript进行验证。

  1. <script type="text/javascript">
  2. function checkusername() {
  3. var username = document.getElementById("username");
  4. var usernameerror = document.getElementById("usernameerror");
  5. var unamevalue = username.value;
  6. if (unamevalue.length < 6 || unamevalue.length > 20) {
  7. usernameerror.innerHTML = "<font color='red'>用户格式不对</font>";
  8. return false;
  9. }
  10. else { usernameerror.innerHTML = "正确"; return true; }
  11. }
  12. function checkpass() {
  13. var pass = document.getElementById("pass");
  14. var passerror = document.getElementById("passerror");
  15. var passvalue = pass.value;
  16. if (passvalue.length < 6 || passvalue.length > 20) {
  17. passerror.innerHTML = "<font color='red'>密码格式不对,必须介于6至20</font>";
  18. return false;
  19. }
  20. else {
  21. passerror.innerHTML = "正确"; return true;
  22. }
  23. }
  24. function checkpass2() {
  25. var pass = document.getElementById("pass");
  26. var pass2 = document.getElementById("pass2");
  27. var pass2error = document.getElementById("pass2error");
  28. var passvalue = pass.value;
  29. var pass2value = pass2.value;
  30. if (passvalue != pass2value) {
  31. pass2error.innerHTML = "<font color='red'>密码不一致</font>";
  32. return false;
  33. }
  34. else {
  35. pass2error.innerHTML = "正确"; return true;
  36. }
  37. }
  38. function checkuseremail() {
  39. var useremail = document.getElementById("useremail");
  40. var useremailerror = document.getElementById("useremailerror");
  41. var useremailvalue = useremail.value;
  42. //js /正则表达式/
  43. var reg = /\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/;
  44. if (!reg.test(useremailvalue)) {
  45. useremailerror.innerHTML = "<font color='red'>邮箱格式不对</font>";
  46. return false;
  47. }
  48. else {
  49. useremailerror.innerHTML = "正确";
  50. return true;
  51. }
  52. }
  53. function checkphone() {
  54. var phone = document.getElementById("uerphone");
  55. var phoneerror = document.getElementById("uerphoneerror");
  56. var phonevalue = phone.value;
  57. if (phonevalue.length != 11) {
  58. phoneerror.innerHTML = "<font color='red'>手机号位数不正确</font>";
  59. return false;
  60. }
  61. else {
  62. phoneerror.innerHTML = "正确"; return true;
  63. }
  64. }
  65. function Required_Username() {
  66. var x = document.forms["myForm"]["username"].value;
  67. if (x == null || x == "") { alert("用户名不能为空!"); return false; }
  68. }
  69. function formsub() {
  70. if (Required_Username()) {
  71. if (checkusername() & checkpass() & checkpass2() & checkuseremail()) { return true; }
  72. else { return false; }
  73. }
  74. else { window.location.reload(); }
  75. }
  76. </script>

实验3 JSP语法基础

打开Eelipse,新建一个JSP网站,名称为“sy3”,并按以下任务要求完成各项任务。

任务一:编写程序片,输出1到100的和

1.新建一个JSP页面,并将其命名为“sy3_1.jsp”;

2.打开sy3_1.jsp页面,编写程序片,在页面中输出1到100的和;

3.在程序片的第一行和最后一行加上注释文字(注释方法任意),如“程序片开始”、“程序片结束”。

  1. <%
  2. //计算1~100的和
  3. int sum=0;
  4. for(int i=1;i<=100;i++){
  5. sum+=i;
  6. }
  7. //循环接收输出和
  8. %>
  9. <% out.println("1到100的和为:"+sum); %>

任务二:获取并显示用户输入的用户名信息

1.新建两个JSP页面,分别是“sy3_2.jsp”和“showinfo.jsp”;

2.在sy3_2.jsp页面中插入一个表单,一个用于接收用户名的文本框和一个“提交”按钮,将用户输入的信息提交给“showinfo.jsp”页面

  1. <form action="showinfo.jsp" method="post">
  2. 用户名:<input type="text" name="yhm"></input>
  3. <input type="submit" value="提交"></input>
  4. </form>

3.当输入用户名,并点击提交按钮后,用户名信息将显示在“showinfo.jsp”页面中。

<%="用户名为:" + request.getParameter("yhm")%>

获取表单提交来的值

<%=request.getParameter("username")%>

任务三:指令和动作引入网页

1.新建三个JSP页面,分别是“sy3_3.jsp”、“top.jsp”和“bottom.jsp”;

2.在“sy3_3.jsp”页面中使用表格快速创建一个简单的上中下布局网页框架,其中网页上部内容使用<%@includefile=""%>指令插入“top.jsp”网页,在网页下部使用<jsp:includepage=""/>动作插入“bottom.jsp”网页;

  1. <table>
  2. <tr>
  3. <td>
  4. <%@ include file="top.jsp" %>
  5. </td>
  6. </tr>
  7. <tr>
  8. <td>
  9. 中间
  10. </td>
  11. </tr>
  12. <tr>
  13. <td>
  14. <jsp:include page="bottom.jsp"/>
  15. </td>
  16. </tr>
  17. </table>

3.“top.jsp”和“bottom.jsp”分别用于网页上部和下部内容的显示,可对这两个网页做简单的内容设计。

动作元素

<jsp:include page=”bottom.jsp”flush=”true”/>

指令元素

<%@ include file="top.jsp" %>

任务四:获取并显示年月日的值

1.新建两个JSP页面,分别是“sy3_4.jsp”和“showtime.jsp”;

2.在“sy3_4.jsp”页面中插入一个表单,三个用于显示年、月、日值的下拉列表和一个“提交”按钮,将选择的日期信息提交给“showtime.jsp”页面,效果如下图所示;

  1. <body>
  2. <p><b>自动获取年月日的值</b></p>
  3. <table>
  4. <tr>
  5. <td>出生日期:</td>
  6. <td>
  7. <form action="showtime.jsp" method="post">
  8. <select name="nian" id="nian">
  9. <% for(int i=2000;i<=2022;i++) out.print("<option value='"+i+"'>"+i+"</option>");
  10. %>
  11. </select>
  12. <select name="yue" id="yue">
  13. <% for(int j=1;j<=12;j++) out.print("<option value='"+j+"'>"+j+"</option>");
  14. %>
  15. </select>
  16. <select name="ri" id="ri">
  17. <% for(int k=1;k<=31;k++) out.print("<option value='"+k+"'>"+k+"</option>");
  18. %>
  19. </select>
  20. &nbsp;&nbsp;<input type="submit" value="提交"></input>
  21. </form>
  22. </td>
  23. </tr>
  24. </table>
  25. </body>

3.在“showinfo.jsp”中接收并显示用户在“sy3_4.jsp”页面中选择的日期信息。

  1. <body>
  2. <%=request.getParameter("nian")+"年"%>
  3. <%=request.getParameter("yue")+"月"%>
  4. <%=request.getParameter("ri")+"日"%>
  5. </body>

实验4 JSP指令与动作的使用

任务一:显示系统当前的日期时间

时间格式设置方式1:

1.新建一个JSP页面“sy4_1.jsp”;

2.在sy4_1.jsp页面中使用page指令的import属性导入java.util.Date类或java.util.*类;

<%@ page import="java.util.Date" %>

3.在sy4_1.jsp页面中编写程序,使用Date对象的toLocaleString()方法获取并显示系统当前日期时间。

  1. <body>
  2. 时间格式设置方式1:
  3. <%
  4. Date dd=new Date();
  5. out.print(dd.toLocaleString());
  6. %>
  7. </body>

时间格式设置方式2:

1.新建一个JSP页面“sy4_2.jsp”;

2.在sy4_2.jsp页面中使用page指令的import属性导入java.util.*类和java.text.*类; 

  1. <%@ page import="java.util.*" %>
  2. <%@ page import="java.text.*" %>

3.在sy4_2.jsp页面中编写程序,使用SimpleDateFormat类格式化日期。

  1. <body>
  2. 时间格式设置方式2:
  3. <%
  4. Date dNow = new Date( );
  5. SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd HH:mm:ss");
  6. out.print( ft.format(dNow) );
  7. %>
  8. </body>

任务二:页面出现异常的处理

1.新建两个JSP页面,分别是“sy4_3.jsp”和“error.jsp”;

2.在“sy4_3.jsp”页面中使用page指令的errorPage属性指定页面出现异常时所转向的页面。

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8" errorPage="error.jsp" %>
  1. <%
  2. //此页面如果发生异常,将向error.jsp抛出异常,并令其进行处理
  3. int x1=5;
  4. int x2=0;
  5. int x3=x1/x2;
  6. out.print(x3);
  7. %>

3.在“error.jsp”页面中使用page指令的isErrorPage属性指定为出错页面,此页面可以使用exception异常对象处理错误信息

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8" isErrorPage="true" %>
  1. <body>出现错误,错误如下:
  2. <hr>
  3. <%=exception.toString()%>
  4. <%=exception.getMessage()%>
  5. </body>
  6. </html>
  7. <%response.setStatus(200); //设置响应的状态编码%>

4.运行“sy4_3.jsp”页面,查看结果。

任务三:使用指令和动作引入网页(同实验三的任务三)

1.新建三个JSP页面,分别是“sy4_4.jsp”、“top.jsp”和“bottom.jsp”;

2.在“sy4_4.jsp”页面中使用表格快速创建一个简单的上中下布局网页框架(如图4-1所示),其中,在网页上部使用<%@includefile=""%>指令插入“top.jsp”网页,在网页下部使用<jsp:includepage=""/>动作插入“bottom.jsp”网页;

3.“top.jsp”用于网页上部内容的显示,要求按下图所示制作一个导航栏内容(如图4-2所示)。

4.“bottom.jsp”用于网页下部内容的显示,要求按下图所示制作一个显示版权信息的页面(如图4-3所示)。

  1. <body>
  2. <table border="1" width="880" align="center" cellspacing="0" cellpadding="0">
  3. <tr height="100" bgcolor="#2d2d2d" align="center">
  4. <td width="219">
  5. <font color="6ab84d" size="6"><b>logo</b></font>
  6. </td>
  7. <td colspan="3" width="800" align="right">
  8. <%@ include file="top.jsp" %>
  9. </td>
  10. </tr>
  11. <tr>
  12. <td bgcolor="#53d6d7" width="20%" height="500" align="center"><b>左侧栏目</b></td>
  13. <td bgcolor="#38cbca" width="60%" height="500" align="center"><b>主体内容</b></td>
  14. <td bgcolor="#53d6d7" width="20%" height="500" align="center"><b>新闻链接</b></td>
  15. </tr>
  16. <tr height="50" bgcolor="#2d2d2d" align="center">
  17. <td colspan="3">
  18. <font color="white" size="6"><b>
  19. <jsp:include page="bottom.jsp"/>
  20. </b></font>
  21. </td>
  22. </tr>
  23. </table>

任务四:forward动作跳转页面

1.新建三个JSP页面,分别是“sy4_5.jsp”、“CheckLogin.jsp”和“Success.jsp”;

2.在“sy4_5.jsp”页面中创建一个登录页面(如图4-4所示)图4-4登录页面

  1. <body>
  2. <form action="CheckLogin.jsp" method="post">
  3. <table>
  4. <tr>
  5. <td>输入用户名</td>
  6. <td>
  7. <input type="text" name="name">
  8. </td>
  9. </tr>
  10. <tr>
  11. <td>输入密码</td>
  12. <td>
  13. <input type="password" name="password">
  14. </td>
  15. </tr>
  16. <tr colspan=2>
  17. <td>
  18. <input type="submit" value="登录">
  19. </td>
  20. </tr>
  21. </table>
  22. </form>
  23. </body>

3.在“CheckLogin.jsp”页面中对登录的用户信息进行检测

  1. <body>
  2. <% String name=request.getParameter("name");
  3. String password=request.getParameter("password");
  4. if(name.equals("zmr") && password.equals("123")) { %>
  5. <jsp:forward page="Success.jsp" />
  6. <% } else { %>
  7. <jsp:forward page="sy4_5.jsp" />
  8. <% } %>
  9. </body>

4.在“Success.jsp”页面中创建一个登录登录成功后的欢迎页面

  1. <body>
  2. <h1>登录成功</H1>欢迎<%=request.getParameter("name")%>进入系统!
  3. </body>

实验5 JSP内置对象的使用1

打开Eelipse,新建一个JSP网站,名称为“sy5”,并按以下任务要求完成各项任务。

任务一:获取用户表单提交的简单信息

1.新建两个JSP页面,分别是“sy5_1.jsp”和“sy5_1a.jsp”;

2.打开sy5_1.jsp页面,制作一个用户信息提交页面(如图5-1所示),其中包含两个文本框和一个提交按钮。在文本框中输入数据后,点击“提交”按钮,将信息提交给sy5_1a.jsp页面文件处理;

  1. <body>
  2. <form action="sy5_1a.jsp" method="post">
  3. 请输入学号:<input type="text" name="xh"></input><br>
  4. 请输入姓名:<input type="text" name="xm"></input><br>
  5. <input type="submit" name="submit" value="提交"></input>
  6. <input type="reset" name="reset" value="重置">
  7. </form>
  8. </body>

3.打开sy5_1a.jsp页面,在这个页面中,接收用户在sy5_1.jsp页面中填写过的信息,并将信息显示出来(如图5-2所示)。图5-1用户信息提交页面图5-2信息显示页面提示:

(1)使用request对象的getParameter()方法获取用户表单提交的信息例如:request.getParameter("name");

(2)使用request对象的setCharacterEncoding()方法解决表单提交出现乱码的问题例如:request.setCharacterEncoding("UTF-8");

  1. <body>
  2. <% request.setCharacterEncoding("UTF-8");
  3. String xh=request.getParameter("xh");
  4. String xm=request.getParameter("xm");
  5. %>
  6. 客户端提交的信息如下:<br>
  7. <%="学号:" + request.getParameter("xh") %><br>
  8. <%="姓名:" + request.getParameter("xm") %><br>
  9. </body>

任务二:获取用户表单提交的综合信息

1.新建两个JSP页面,分别是“sy5_2.jsp”和“sy5_2a.jsp”;

2.打开sy5_2.jsp页面,制作一个用户注册页面(如图5-3所示),其中包含学号(text)、姓名(text)、性别(radio)、出生日期(select)、爱好(checkbox)、提交(submit)表单标签。在该页面中输入信息后,点击“提交”按钮,将信息提交给sy5_2a.jsp页面文件处理;

  1. <body>
  2. <form action="sy5_2a.jsp" method="post">
  3. <h2>用户登录</h2>
  4. <table>
  5. <tr>
  6. <td>学号:</td>
  7. <td>
  8. <input type="text" name="xh"></input>
  9. </td>
  10. </tr>
  11. <tr>
  12. <td>姓 名:</td>
  13. <td>
  14. <input type="text" name="xm"></input>
  15. </td>
  16. </tr>
  17. <tr>
  18. <td>性 别:</td>
  19. <td>
  20. <input type="radio" name="sex" id="radio1" value="男" checked>
  21. <input type="radio" name="sex" id="radio2" value="女">
  22. </td>
  23. </tr>
  24. <tr>
  25. <td>出生日期:</td>
  26. <td>
  27. <select name="nian" id="selnian">
  28. <% for(int i=2000;i<=2022;i++) out.print("<option value='"+i+"'>"+i+"</option>");
  29. %>
  30. </select>
  31. <select name="yue" id="selyue">
  32. <% for(int j=1;j<=12;j++) out.print("<option value='"+j+"'>"+j+"</option>");
  33. %>
  34. </select>
  35. <select name="ri" id="selri">
  36. <% for(int k=1;k<=31;k++) out.print("<option value='"+k+"'>"+k+"</option>");
  37. %>
  38. </select>
  39. </td>
  40. </tr>
  41. <tr>
  42. <td>爱好:</td>
  43. <td>
  44. <input type="checkbox" name="ah" id="zq" value="足球">足球
  45. <input type="checkbox" name="ah" id="lq" value="篮球">篮球
  46. <input type="checkbox" name="ah" id="ymq" value="羽毛球">羽毛球
  47. <input type="checkbox" name="ah" id="ppq" value="乒乓球">乒乓球
  48. </td>
  49. </tr>
  50. <tr>
  51. <td></td>
  52. <td colspan="2">
  53. <input type="submit" value="提交" />
  54. <input type="reset" value="重填" />
  55. </td>
  56. </tr>
  57. </table>
  58. </form>
  59. </body>

3.打开sy5_2a.jsp页面,在这个页面中,接收用户在sy5_2.jsp页面中填写过的信息,并将信息显示出来(如图5-4所示)。

  1. <body>
  2. <% request.setCharacterEncoding("UTF-8");
  3. String xh=request.getParameter("xh");
  4. String xm=request.getParameter("xm");
  5. String sex=request.getParameter("sex");
  6. String nian=request.getParameter("nian");
  7. String yue=request.getParameter("yue");
  8. String ri=request.getParameter("ri");
  9. String ah=request.getParameter("ah");
  10. %>
  11. <h2>客户端提交的信息如下:</h2>
  12. <%="学号:" + request.getParameter("xh")%><br>
  13. <%="姓名:" + request.getParameter("xm")%><br>
  14. <%="性别:" + request.getParameter("sex")%><br>
  15. <%="出生日期:" + request.getParameter("nian")+"年"+ request.getParameter("yue")+"月"+ request.getParameter("ri")+"日"%><br>
  16. <%="爱好:" + request.getParameter("ah")%><br>
  17. 爱好:
  18. <%String b[]=request.getParameterValues("ah");
  19. if(b!=null) {
  20. for(int i=0;i<b.length;i++)
  21. {
  22. out.println(" "+b[i]+" ");
  23. }
  24. }
  25. %>
  26. </body>

获取复选框中的选中的选项

  1. <%Stringb[]=request.getParameterValues("ah");
  2. if(b!=null){
  3. for(int i=0;i<b.length;i++){
  4. out.print(""+b[i]+"");
  5. }
  6. }
  7. %>

任务三:使用response对象的setHeader()方法实现页面刷新功能

1.新建一个JSP页面“sy5_3.jsp”;

2.打开sy5_3.jsp页面,在页面中使用java.util.Date函数显示系统的当前时间(如图5-5所示)。要求设置页面每隔3秒钟自动刷新一次。

  1. <body>
  2. <h1>现在时间(自动刷新):<%=new java.util.Date().toLocaleString() %></h1>
  3. <% response.setHeader("refresh","3"); %>
  4. </body>

任务四:使用response对象的sendRedirect()方法实现页面重定向功能

1.新建三个JSP页面,分别是“sy5_4.jsp”、“sy5_4a.jsp”和“sy5_4b.jsp”;

2.打开sy5_4.jsp页面,制作一个用户登录页面(如图5-6所示),其中包含账号(text)、密码(password)、提交(submit)、重置(reset)表单标签。在该页面中输入信息后,点击“提交”按钮,将信息提交给sy5_4a.jsp页面文件处理;

  1. <body>
  2. <h1>用户登陆系统</h1>
  3. <form action="sy5_4a.jsp" method="post">
  4. <table>
  5. <tr>
  6. <td> 用户名</td>
  7. <td><input type="text" name="name"></td>
  8. </tr>
  9. <tr>
  10. <td>&nbsp; &nbsp;</td>
  11. <td><input type="password" name="password"></td>
  12. </tr>
  13. <tr colspan=2>
  14. <td><input type="submit" value="登录"></td>
  15. <td><input type="reset" value="重置"></td>
  16. </tr>
  17. </table>
  18. </form>
  19. </body>

3.打开sy5_4a.jsp页面,在这个页面中,编写用于验证用户信息的程序片。如果账号和密码正确,则使用response对象的sendRedirect()方法跳转到sy5_4b.jsp页面,并显示欢迎用户的信息(如图5-7所示);如果账号和密码错误,则在当前页中显示错误提示信息“用户名或密码不正确,请重新输入!”

  1. <body>
  2. <%
  3. request.setCharacterEncoding("UTF-8");
  4. String name=request.getParameter("name");
  5. String password=request.getParameter("password");
  6. if(name.equals("root")&&password.equals("123456")) {
  7. response.sendRedirect("sy5_4b.jsp?aa="+name);}
  8. else{
  9. out.println(" 提示:用户名或密码不正确,请重新输入!");
  10. }
  11. %>
  12. </body>

sy5_4b.jsp页面

  1. <body>
  2. <%request.setCharacterEncoding("UTF-8");
  3. String aaname=request.getParameter("aa");
  4. out.println("欢迎您,"+aaname+"用户");
  5. %>
  6. </body>

综合练习1

打开Eelipse,新建一个JSP网站,名称为“ZHLX1”,并按以下要求完成综合练习1的各项任务。

1.新建五个JSP页面,分别是“login.jsp”、“logincheck.jsp”、“hindex.jsp”、“adduser.jsp”和“userinfo.jsp”;

2.打开login.jsp页面,制作一个用户登录页面(如图1所示),点击“提交”按钮,将信息提交给logincheck.jsp页面文件处理;

  1. <body>
  2. <form name="form1" action="logincheck.jsp" method="post">
  3. <h1>用户登录</h1>
  4. 用户名:
  5. <input type="text" name="yhm" maxlength="8" placeholder="请输入用户名"><br><br>
  6. 密码:
  7. <input type="password" name="pwd" maxlength="16" placeholder="请输入密码"><br><br>
  8. <input type="submit" value="提交" onclick="dlcheck()">
  9. </form>
  10. </body>

3.打开logincheck.jsp页面,在这个页面中,接收用户在login.jsp页面中提交的信息,并验证是否为合法用户名信息。

  1. <body>
  2. <%String yh=request.getParameter("yhm");
  3. String mm=request.getParameter("pwd");
  4. if(yh.equals("")||mm.equals("")) {
  5. out.print("用户名或密码不能为空");
  6. response.setHeader("Refresh","3;URL=login.jsp");
  7. }
  8. else {
  9. if(yh.equals("zmr") &&mm.equals("123456")){
  10. response.sendRedirect("hindex.jsp?user="+yh);
  11. }
  12. else{
  13. out.print("用户名或密码不正确.3秒后跳转到登录页面");
  14. response.setHeader("Refresh","3;URL=login.jsp");
  15. }
  16. }
  17. %>
  18. </body>

4.打开hindex.jsp页面,在这个页面中,接收用户在login.jsp页面中填写过的合法用户名信息,并将用户名信息显示出来(如图3所示)。

5.打开hindex.jsp页面,在这个页面中,在左侧导航单元格中,制作“用户注册”和“添加新闻”栏目,并为“用户注册”添加超链接,链接到“adduser.jsp”页面。

  1. <body>
  2. <table border="1" width="880" cellspacing="0" cellpadding="0">
  3. <tr height="100" align="center">
  4. <td colspan="2">
  5. <%@ include file="top.jsp" %>
  6. </td>
  7. </tr>
  8. <tr height="25" align="left">
  9. <td colspan="2"> 欢迎您,<%=request.getParameter("user")%>进入系统!</td>
  10. </tr>
  11. <tr>
  12. <td width="300px" height="500" align="center">
  13. <p><a href="adduser.jsp">用户注册</a></p>
  14. <p>添加新闻</p>
  15. </td>
  16. <td width="580px" height="500" align="center"><b>右侧内容</b></td>
  17. </tr>
  18. <tr height="150" align="center">
  19. <td colspan="2">
  20. <font color="black" size="6"><b>后台主页——网页底部</b></font>
  21. </td>
  22. </tr>
  23. </table>
  24. </body>

6.参照hindex.jsp页面,并按图4样式,制作adduser.jsp页面。图4用户注册页面

  1. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  3. <html>
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  6. <title>Insert title here</title>
  7. <style type="text/css">
  8. .nav {
  9. margin: 5px;
  10. }
  11. .nav li {
  12. list-style-type: none;
  13. }
  14. .nav ul {
  15. font-size: 12px;
  16. display: flex;
  17. margin-left: 50px;
  18. margin-right: 50px;
  19. justify-content: space-around;
  20. }
  21. .nav li:hover {
  22. color: orange;
  23. }
  24. </style>
  25. </head>
  26. <body>
  27. <table border="1" width="880" cellspacing="0" cellpadding="0">
  28. <tr height="100" align="center">
  29. <td colspan="2">
  30. <h1>后台主页——顶部</h1>
  31. </td>
  32. </tr>
  33. <tr height="25" align="left">
  34. <td colspan="2">
  35. <div class="nav">
  36. <ul>
  37. <li>首页</li>
  38. <li>关于我们</li>
  39. <li>新闻资讯</li>
  40. <li>产品介绍</li>
  41. <li>解决方案</li>
  42. <li>新品推送</li>
  43. <li>资料下载</li>
  44. <li>加盟合作</li>
  45. <li>联系我们</li>
  46. </ul>
  47. </div>
  48. </td>
  49. </tr>
  50. <tr>
  51. <td width="300px" height="500" align="center">
  52. <p><a href="adduser.jsp">用户注册</a></p>
  53. <p>添加新闻</p>
  54. </td>
  55. <td bgcolor="#ccff90" width="580px" height="500" align="left">
  56. <form action="userinfo.jsp" method="post">
  57. <table>
  58. <tr>
  59. <td>学号:</td>
  60. <td>
  61. <input type="text" name="xh"></input>
  62. </td>
  63. </tr>
  64. <tr>
  65. <td>姓 名:</td>
  66. <td>
  67. <input type="text" name="xm"></input>
  68. </td>
  69. </tr>
  70. <tr>
  71. <td>性 别:</td>
  72. <td>
  73. <input type="radio" name="sex" id="radio1" value="男" checked>
  74. <input type="radio" name="sex" id="radio2" value="女">
  75. </td>
  76. </tr>
  77. <tr>
  78. <td>出生日期:</td>
  79. <td>
  80. <select name="nian" id="selnian">
  81. <% for(int i=2000;i<=2022;i++) out.print("<option value='"+i+"'>"+i+"</option>");
  82. %>
  83. </select>
  84. <select name="yue" id="selyue">
  85. <% for(int j=1;j<=12;j++) out.print("<option value='"+j+"'>"+j+"</option>");
  86. %>
  87. </select>
  88. <select name="ri" id="selri">
  89. <% for(int k=1;k<=31;k++) out.print("<option value='"+k+"'>"+k+"</option>");
  90. %>
  91. </select>
  92. </td>
  93. </tr>
  94. <tr>
  95. <td>爱好:</td>
  96. <td>
  97. <input type="checkbox" name="ah" id="zq" value="足球">足球
  98. <input type="checkbox" name="ah" id="lq" value="篮球">篮球
  99. <input type="checkbox" name="ah" id="ymq" value="羽毛球">羽毛球
  100. <input type="checkbox" name="ah" id="ppq" value="乒乓球">乒乓球
  101. </td>
  102. </tr>
  103. <tr>
  104. <td></td>
  105. <td colspan="2">
  106. <input type="submit" value="提交" />
  107. <input type="reset" value="重填" />
  108. </td>
  109. </tr>
  110. </table>
  111. </form>
  112. </td>
  113. </tr>
  114. <tr height="150" align="center">
  115. <td colspan="2">
  116. <font color="black" size="6"><b>后台主页——网页底部</b></font>
  117. </td>
  118. </tr>
  119. </table>
  120. </body>
  121. </html>

7.打开userinfo.jsp页面,在这个页面中,接收用户在adduser.jsp页面中填写的用户注册信息,并将信息显示出来(代码片段同实验五 任务2)。

实验6 JSP内置对象的使用2

打开Eelipse,新建一个JSP网站,名称为“sy6”,并按以下任务要求完成各项任务。

任务一:使用session对象记录用户登录信息

1.新建两个JSP页面,分别是“sy6_1.jsp”、“sy6_1a.jsp”和“sy6_1b.jsp”;

2.打开sy6_1.jsp页面,制作一个用户登录页面(如图6-1所示),其中包含两个文本框、一个“提交”按钮和一个“重置”按钮。在文本框中输入数据后,点击“提交”按钮,将信息提交给ch6_1a.jsp页面文件处理;

3.打开sy6_1a.jsp页面,在这个页面中,接收用户在sy6_1.jsp页面中输入的登录用户信息,并进行登录信息验证操作。

要求:

(1)设置用户名“zhangsan”,密码“123”

(2)登录成功后,将用户名的值保存到session变量“yhm”中,将登录成功标志标志的值“OK”保存到session变量“flag”中,并直接跳转到sy6_1b.jsp页面(如图6-2所示);

(3)若登录失败,则提示“登录失败!”,并设置在3秒钟后跳转到sy6_1.jsp页面(如图6-3所示)。

  

  1. <%
  2. if (request.getParameter("userName")!=null && request.getParameter("pwd")!=null)
  3. {
  4. String name = request.getParameter("userName");
  5. String pwd = request.getParameter("pwd");
  6. if(name.equals("root")&& pwd.equals("123456"))
  7. {
  8. session.setAttribute("flag","OK");
  9. session.setAttribute("yhm", name);
  10. response.sendRedirect("sy6_1b.jsp");
  11. }
  12. else
  13. {
  14. out.print("登录失败!");
  15. out.println("<h3>3秒钟后,自动跳转到登录页面!</h3>");
  16. response.setHeader("Refresh","3;sy6_1.jsp");
  17. }
  18. }
  19. %>

sy6_1b.jsp

  1. <%
  2. String strYhm=(String)session.getAttribute("yhm");
  3. String strLogin=(String)session.getAttribute("flag");
  4. if (strYhm!=null && strLogin!=null && strLogin.equals("OK"))
  5. {
  6. out.println("登陆成功!");
  7. out.println("<h3>欢迎["+strYhm+"]进入网站主页!</h3>");
  8. }
  9. else
  10. {
  11. out.println("您没有权限访问该页面,请先登录!");
  12. response.setHeader("Refresh","3;URL=sy6_1.jsp");
  13. }
  14. %>

任务二:使用session对象实现一个简单的问卷调查功能

1.新建三个JSP页面,分别是“sy6_2.jsp”、“sy6_2a.jsp”和“sy6_2b.jsp”;

2.打开sy6_2.jsp页面,制作一个个人基本信息填报页面(如图6-4所示),其中包含一个文本框、两个单选按钮、一个下拉列表、一个“提交”按钮和一个“重置”按钮。在输入个人基本信息后,点击“提交”按钮,将进入ch6_2a.jsp问卷调查页面;

  1. <body>
  2. <form action="sy6_2a.jsp" method="post">
  3. <h2>个人基本信息填报页面</h2>
  4. <table>
  5. <tr>
  6. <td>&nbsp; &nbsp; &nbsp; &nbsp;名:</td>
  7. <td>
  8. <input type="text" name="xm" ></input>
  9. <span>*</span>
  10. </td>
  11. </tr>
  12. <tr>
  13. <td>&nbsp; &nbsp; &nbsp; &nbsp;别:</td>
  14. <td>
  15. <input type="radio" name="sex" id="radio1" value="男" checked>
  16. <input type="radio" name="sex" id="radio2" value="女" >
  17. </td>
  18. </tr>
  19. <tr>
  20. <td>出生日期:</td>
  21. <td>
  22. <select name="zy" id="zy">
  23. <option>计算机科学与技术</option>
  24. <option>网络工程</option>
  25. <option>软件工程</option>
  26. <option>大数据</option>
  27. </select>
  28. </td>
  29. </tr>
  30. <tr>
  31. <td></td>
  32. <td colspan="2">
  33. <input type="submit" value="提交" />
  34. <input type="reset" value="重填" />
  35. </td>
  36. </tr>
  37. </table>
  38. </form>
  39. </body>

3.打开sy6_2a.jsp页面,在这个页面中,接收并显示用户在sy6_2.jsp页面中输入的个人姓名和专业信息,及此次问卷调查的题目(如图6-5所示)。问卷填写完毕后,点击“提交”按钮,将进入ch6_2b.jsp问卷结果显示页面;

要求:

(1)题目的数量及内容可任意设置

(2)将姓名的值保存到session变量“stuName”中图6-5问卷调查页面

  1. <body>
  2. <%
  3. request.setCharacterEncoding("UTF-8");
  4. String xm1 =request.getParameter("xm");
  5. String xb1 =request.getParameter("xb");
  6. String zy1 =request.getParameter("zy");
  7. out.print("谢谢" +zy1+"专业的" +xm1+"同学,请开始填写向卷");
  8. session.setAttribute("stuName", xm1); %>
  9. <form name="form1" method="post" action="sy6_2b.jsp">
  10. <p>第1题:中国的首都是哪个城市? </p>
  11. <p> <input type= "radio" name="t1" id="radio" value="北京">北京</p>
  12. <p> <input type="radio" name= "t1" id="radio" value="天津">天津</p>
  13. <p> <input type="radio" name="t1" id="radio" value="山东">山东</p>
  14. <p> <input type="radio" name= "t1" id="radio" value="辽宁">辽宁</p>
  15. <p>第2题:宁夏回族自治区的首府是哪个城市? </p>
  16. <p> <input type="radio" name="t2" id="radio" value= "银川">银川</p>
  17. <p> <input type= "radio" name="t2" id="radio" value= "石嘴山" >石嘴山</p>
  18. <p> <input type="radio" name="t2" id="radio" value= "吴忠">吴忠</p>
  19. <p> <input type= "radio" name="t2" id= "radio" value= "中卫">中卫</p>
  20. <p> <input type= "submit" name=" button" id=”button" value= "提交">
  21. <input type="reset" name= "button2" id="button2" value= "重置">
  22. </form>
  23. </body>

 4.打开sy6_2b.jsp页面,在这个页面中,显示答题人员的姓名信息及答题结果(如图6-6所示);

要求:

(1)使用session对象获取并显示“stuName”中的姓名信息

(2)使用request对象获取并显示各题目的答题结果

  1. <body>
  2. <%
  3. request.setCharacterEncoding("UTF-8");
  4. String dtr= (String)session.getAttribute("stuName");
  5. String t1a=request.getParameter("t1");
  6. String t2a=request.getParameter("t2");
  7. out.print(dtr+"同学,你的问卷填写结果是: <br>");
  8. out.print("第1题: "+t1a+"<br>");
  9. out.print("第2题: "+t2a);
  10. %>
  11. </body>

任务三:使用Application对象实现一个计数器

1.新建一个个JSP页面“sy6_3.jsp”;

2.打开sy6_3.jsp页面,使用application对象统计当前页面访问次数。

要求:

(1)若用户是第一次访问,则显示“欢迎访问您首次访问本网站!”信息,并显示访问量(如图6-7所示)

(2)若用户非首次访问,则显示“欢迎再次访问本网站!”信息,并显示访问量(如图6-8所示)

  1. <body>
  2. <%
  3. int fwCount=0;
  4. if( application.getAttribute("number")==null){
  5. out.println("欢迎访问您首次访向本网站!<br>");
  6. fwCount=1;
  7. }
  8. else{
  9. out.println("欢迎再次访问本网站!<br> ");
  10. fwCount =(Integer)application.getAttribute("number")+1;
  11. }
  12. application.setAttribute("number",fwCount);
  13. %>
  14. 当前网页访问量:<%=fwCount%>
  15. </body>

实验7 JSP数据库操作1

任务一:MySQL和Navicat的安装和配置

任务二:使用mysql数据库管理工具创建数据库和数据表

1.使用Navicat for MySQL创建一个“newsdb”数据库,创建“tb_user”和“tb_news”数据表,表中具体字段及数据如下:

 2.使用Navicat for MySQL新建查询,并在查询编辑器中编写SQL命令,对tb_news表中的数据进行增、删、改、查操作。

(1)查询tb_user表中的所有字段的信息 select * from tb_user

(2)查询tb_user表中用户名和密码的信息 select 用户名,密码 from tb_user

(3)查询tb_user表中小强的密码信息 select 密码 from tb_user where 用户名='小强'

(4)查询tb_news表中标题和时间的信息 select 标题,时间 fromt b_news

(5)查询tb_news表中编号为5的所有字段信息select * from tb_news where 编号=5

(6)查询tb_news表中前3行的标题和时间信息select * from tb_news limit 3

(7)查询tb_news表中前3行的标题和时间信息select * from tb_news limit 0,3

(8)查询tb_news表中从第2行开始,连续2行的标题和时间信息select * from tb_news limit 1,2

(9)查询tb_news表中前5行的标题和时间信息,按照时间的降序排序select * from tb_news order by 时间 desc limit 5

(10)修改tb_news表中编号为5的新闻的作者为“新华社”update tb_news set 作者='新华社' where 编号=5

(11)在tb_news表中任意增加一行数据,其中,作者为“曾山”insert into tb_news(标题,内容,作者,时间)values('曾山标题','曾山内容','曾山','2020-11-12')

(12)删除tb_news表中作者为“曾山”的数据 delete from tb_new swhere 作者='曾山'

任务三:使用JDBC的方式连接MySQL数据库并进行查询操作

1.打开Eelipse,新建一个JSP网站,名称为“sy7”

2.新建1个JSP页面“sy7_1.jsp”;

3.打开sy7_1.jsp页面,制作一个新闻列表页面(如图7-1所示),编写如下代码,连接newsdb数据库,将tb_news表中前5行新闻的新闻标题查询出来,并显示在网页中。

  1. <body>
  2. <h1>新闻列表页</h1>
  3. <%
  4. Class.forName("com.mysql.jdbc.Driver");
  5. Connection conn=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/newsdb","root","123456");
  6. Statement stmt=conn.createStatement();
  7. ResultSet rs=stmt.executeQuery("select * from tb_news");
  8. while(rs.next()){
  9. out.print(rs.getString("biaoti")+"<br>");
  10. }
  11. rs.close();
  12. stmt.close();
  13. conn.close();
  14. %>
  15. </body>

实验8 JSP数据库操作2

任务一:使用mysql数据库管理工具创建数据库和数据表 使用NavicatforMySQL创建一个“newsdb”数据库,创建一个“tb_news”数据表,表中具体字段属性及数据内容同实验7:

任务二:使用JDBC的方式连接MySQL数据库并进行查询操作

1.打开Eelipse,新建一个JSP网站,名称为“sy8”

2.新建2个JSP页面“sy8_1.jsp”和“sy8_1a.jsp”;

3.打开sy8_1.jsp页面,制作一个新闻列表页面(如图8-2所示),编写如下代码,连接newsdb数据库,从tb_news表中查询数据,并在页面中仅显示前5条新闻的标题和时间新闻的信息。

实现连接数据库并进行查询操作的步骤:

  1. //第一步:将jar拷贝到WebContent/WEB-INF/lib目录中。
  2. //第二步:在网页上部加入代码,导入java.sql包
  3. <%@ page import="java.sql.*" %>
  4. //第三步:在网页<body>标签中加入连接数据库并查询显示数据的代码
  5. <%
  6. String Driver="com.mysql.jdbc.Driver" ;
  7. String URL="jdbc:mysql://127.0.0.1:3306/newsdb" ;
  8. Class.forName(Driver);
  9. Connection conn=DriverManager.getConnection(URL,"root","123456");
  10. Statement stmt=conn.createStatement();
  11. ResultSet rs=stmt.executeQuery("select * from tb_news limit 5");
  12. %>
  13. <h1>新闻列表</h1>
  14. <table border="1">
  15. <tr>
  16. <td width=200px>新闻标题</td>
  17. <td width=200px>发布时间</td>
  18. </tr>
  19. <%
  20. while(rs.next()) {
  21. out.print("<tr>");
  22. out.print("<td><a href=sy8_1a.jsp?newsid="+rs.getString("bianhao")+">"+rs.getString("biaoti")+"<a></td>");
  23. out.print("<td>"+rs.getString("time")+"</td>");
  24. out.print("</tr>");
  25. }
  26. rs.close();
  27. stmt.close();
  28. conn.close();
  29. %>
  30. </table>

4.打开sy8_1a.jsp页面,使得点击sy8_1.jsp中显示的任意一条新闻的标题或时间,在sy8_1a.jsp详细显示该新闻的详细内容(如图8-3所示)。

  1. <body>
  2. <%
  3. String Driver="com.mysql.jdbc.Driver" ;
  4. String URL="jdbc:mysql://127.0.0.1:3306/newsdb?useUnicode=true&characterEncoding=utf-8" ;
  5. Class.forName(Driver);
  6. Connection conn=DriverManager.getConnection(URL,"root","123456");
  7. Statement stmt=conn.createStatement();
  8. ResultSet rs=stmt.executeQuery( "select * from tb_news where bianhao="+request.getParameter("newsid") );
  9. if(rs.next()) {
  10. %>
  11. <table width="600" border="1" align="center" cellpadding="0" cellspacing="0">
  12. <tr>
  13. <td align="center">
  14. <h1>网页顶部</h1>
  15. </td>
  16. </tr>
  17. <tr>
  18. <td height="27" align="center">
  19. <%=rs.getString("biaoti")%>
  20. </td>
  21. </tr>
  22. <tr>
  23. <td height="323" valign="top">
  24. <%=rs.getString("neirong")%>
  25. </td>
  26. </tr>
  27. <tr>
  28. <td height="32" align="right" valign="top">
  29. 来源:<%=rs.getString("zuozhe")%>
  30. 发布时间:<%=rs.getString("time")%>
  31. </td>
  32. </tr>
  33. <tr>
  34. <td align="center">
  35. <h2>网页底部</h2>
  36. </td>
  37. </tr>
  38. </table>
  39. <% }
  40. rs.close();
  41. stmt.close();
  42. conn.close(); %>
  43. </body>

 实验9 JSP数据库操作3

任务一:使用mysql数据库管理工具创建数据库和数据表使用NavicatforMySQL创建一个“newsdb”数据库,创建一个“tb_news”数据表,表中具体字段属性及数据内容同实验7:

任务二:在新闻列表页添加增、删、改的链接,并完成数据增加操作

1.打开Eelipse,新建一个JSP网站,名称为“sy9”

2.将实验“sy8_1.jsp”和“sy8_1a.jsp”两个页面复制到本站点,并分别更名为“sy9_1.jsp”和“sy9_1a.jsp”;

3.打开“sy9_1.jsp”页面,在页面下方添加“添加新闻”、“修改新闻”和“删除新闻”三个文字链接,分别链接到“addnews.jsp”、“delnews.jsp”、“editnews.jsp”三个页面。

  1. <span><a href=addnews.jsp>添加新闻<a></span>&nbsp;&nbsp;&nbsp;&nbsp;
  2. <span><a href=delnews.jsp>修改新闻<a></span>&nbsp;&nbsp;&nbsp;&nbsp;
  3. <span><a href=editnews.jsp>删除新闻<a></span>&nbsp;&nbsp;&nbsp;&nbsp;

4、打开“addnews.jsp”页面,制作1个用于添加新闻信息的页面

  1. <body>
  2. <%
  3. String Driver="com.mysql.jdbc.Driver" ;
  4. String URL="jdbc:mysql://127.0.0.1:3306/newsdb?useUnicode=true&characterEncoding=utf-8" ;
  5. Class.forName(Driver); Connection conn=DriverManager.getConnection(URL,"root","123456");
  6. Statement stmt=conn.createStatement(); ResultSet rs=stmt.executeQuery("select * from tb_news");
  7. if(rs.next()) { %>
  8. <form action="addnews_1.jsp" method="post" style="width: 30%; margin: auto">
  9. <table width="600" border="1" align="center" cellpadding="0" cellspacing="0">
  10. <tr>
  11. <td align="center" colspan="2">
  12. <h1>添加新闻</h1>
  13. </td>
  14. </tr>
  15. <tr>
  16. <td height="27" align="center">新闻标题</td>
  17. <td width="500"><input type="text" name="bt_text" style=" width:410px;"></td>
  18. </tr>
  19. <tr>
  20. <td height="27" align="center">新闻作者</td>
  21. <td width="500"><input type="text" name="zz_text" style=" width:410px;"></td>
  22. </tr>
  23. <tr>
  24. <td height="323" valign="top" colspan="2">新闻内容:<br>
  25. <textarea name="nr_text" value="请输入新闻内容" rows="20" cols="82"></textarea>
  26. <br>
  27. <input type="submit" value="插入新闻">
  28. <input type="reset" value="取消">
  29. </td>
  30. </tr>
  31. <tr>
  32. <td align="center" colspan="2">
  33. <h2>网页底部</h2>
  34. </td>
  35. </tr>
  36. </table>
  37. <% }
  38. rs.close();
  39. stmt.close();
  40. conn.close(); %>
  41. </form>
  42. </body>

5、创建1个“addnews_1.jsp”页面,编写代码,实现添加新闻信息的功能

  1. <%@ page import="java.sql.*" %>
  2. <%@ page import="java.util.Date" %>
  3. <%@ page import="java.text.SimpleDateFormat" %>
  1. <body>
  2. <%
  3. request.setCharacterEncoding("UTF-8");
  4. String bt=request.getParameter("bt_text");
  5. String zz=request.getParameter("zz_text");
  6. String nr=request.getParameter("nr_text");
  7. //获取日期
  8. Date now=new Date();
  9. SimpleDateFormat sj=new SimpleDateFormat("yyyy-MM-dd");
  10. //连接数据库
  11. String Driver="com.mysql.jdbc.Driver" ;
  12. String URL="jdbc:mysql://127.0.0.1:3306/newsdb?useUnicode=true&characterEncoding=utf-8" ;
  13. Class.forName(Driver);
  14. Connection conn=DriverManager.getConnection(URL,"root","123456");
  15. Statement stmt=conn.createStatement();
  16. //插入语句
  17. String sql="insert into tb_news(biaoti,zuozhe,neirong,time) values('"+bt+"','"+zz+"','"+nr+"','"+sj.format(now)+"')";
  18. int n=stmt.executeUpdate(sql);
  19. if(n==1) {
  20. out.print("数据插入操作成功!");
  21. out.println("<h3>3秒钟后,自动跳转到新闻列表页面!</h3>");
  22. response.setHeader("Refresh","3;URL=sy9_1.jsp");
  23. }
  24. else{
  25. out.print("数据插入操作失败!");
  26. out.println("<h3>3秒钟后,自动跳转到新闻列表页面!</h3>");
  27. response.setHeader("Refresh","3;URL=sy9_1.jsp");
  28. }
  29. if(stmt!=null){
  30. stmt.close();
  31. }
  32. if(conn!=null){
  33. conn.close();
  34. }
  35. %>
  36. </body>

综合项目2

打开Eelipse,新建一个JSP网站,名称为“ZHLX2”,并按以下要求完成综合练习1的各项任务。

1.新建8个JSP页面,分别是:

login.jsp用户登录页面

logincheck.jsp验证登录代码页面

loginout.jsp退出登录代码页面

hindex.jsp后台主页

adduser.jsp用户注册页面

adduser_1.jsp用户注册代码页面

userlist.jsp用户列表页面

userinfo.jsp用户信息显示页面

2.打开login.jsp页面,制作一个用户登录页面,点击“提交”按钮,将信息提交给logincheck.jsp页面文件处理;

  1. <body>
  2. <form name="form1" action="logincheck.jsp" method="post">
  3. <h1>用户登录</h1>
  4. 用户名:
  5. <input type="text" name="yhm" maxlength="8" placeholder="请输入用户名"><br><br>
  6. 密码:
  7. <input type="password" name="pwd" maxlength="16" placeholder="请输入密码"><br><br>
  8. <input type="submit" value="提交" onclick="dlcheck()">
  9. </form>
  10. </body>

3.打开logincheck.jsp页面,在这个页面中,接收用户在login.jsp页面中提交的信息,并连接数据库,验证是否为合法用户信息

<%@ page import="java.sql.*" %>
  1. <body>
  2. <%
  3. request.setCharacterEncoding("UTF-8");
  4. String yhm=request.getParameter("yhm");
  5. String mm=request.getParameter("pwd");
  6. if(yhm.equals("")||mm.equals("")) {
  7. out.print("用户名或密码不能为空");
  8. response.setHeader("Refresh","3;URL=login.jsp");
  9. }
  10. else {
  11. String Driver="com.mysql.jdbc.Driver";
  12. String URL="jdbc:mysql://127.0.0.1:3306/newsdb?useUnicode=true&characterEncoding=utf-8";
  13. Class.forName(Driver);
  14. Connection conn=DriverManager.getConnection(URL,"root","123456");
  15. Statement stmt=conn.createStatement();
  16. ResultSet rs = stmt.executeQuery("select * from tb_user where 用户名='"+yhm+"'and 密码='"+mm+"'");
  17. if(rs.next()){
  18. session.setAttribute("yhzh",yhm);
  19. session.setAttribute("kl", "20221111");
  20. response.sendRedirect("hindex.jsp?user="+yhm);
  21. }
  22. else{
  23. out.print("用户名或密码不正确,3秒后跳转到登录页面");
  24. response.setHeader("Refresh","3;URL=login.jsp");
  25. }
  26. }
  27. %>
  28. </body>

4.打开后台主页hindex.jsp页面,在这个页面中,接收用户在login.jsp页面中填写过的合法用户名信息,并将用户名信息显示出来。

5.打开hindex.jsp页面,在这个页面中,在左侧导航单元各种,制作

“后台首页”添加超链接,链接到“hindex.jsp”页面“

用户列表”添加超链接,链接到“userlist.jsp”页面“

用户注册”添加超链接,链接到“adduser.jsp”页面

“添加新闻”暂不添加超链接

“退出登录”添加超链接,链接到“loginout.jsp”页面

  1. <body>
  2. <table border="1" width="880" cellspacing="0" cellpadding="0">
  3. <tr height="100" align="center">
  4. <td colspan="2">
  5. <h1>后台主页——网页顶部</h1>
  6. </td>
  7. </tr>
  8. <tr height="25" align="left">
  9. <td colspan="2">
  10. <%
  11. request.setCharacterEncoding("UTF-8");
  12. String ayhzh=(String)session.getAttribute("yhzh");
  13. String akl=(String)session.getAttribute("kl");
  14. if(ayhzh!=null&&akl!=null&&akl.equals("20221111")){
  15. out.print("欢迎您,"+ayhzh+"用户");
  16. }
  17. else{
  18. out.println("您没有权限访问该页面,请先登录!");
  19. response.setHeader("Refresh","3,URL=login.jsp");
  20. }
  21. %>
  22. </td>
  23. </tr>
  24. <tr>
  25. <td width="300px" height="500" align="center">
  26. <p><a href="hindex.jsp">后台首页</a></p>
  27. <p><a href="userlist.jsp">用户列表</a></p>
  28. <p><a href="adduser.jsp">用户注册</a></p>
  29. <p><a href="edituser.jsp">用户修改</a></p>
  30. <p><a href="deluser.jsp">用户删除</a></p>
  31. <p>添加新闻</p>
  32. <p><a href="loginout.jsp">退出登录</a></p>
  33. </td>
  34. <td width="580px" height="500" align="center"><b>右侧内容</b></td>
  35. </tr>
  36. <tr height="150" align="center">
  37. <td colspan="2">
  38. <font color="black" size="6"><b>后台主页——网页底部</b></font>
  39. </td>
  40. </tr>
  41. </table>
  42. </body>

6.参照样式,制作用户列表页面userlist.jsp。

  1. <%@ page import="java.sql.*" %>
  2. <%@ page import="java.util.Date" %>
  1. <body>
  2. <table border="1" width="880" cellspacing="0" cellpadding="0">
  3. <tr height="100" align="center">
  4. <td colspan="2" align="center" height="150px">
  5. <h1>后台主页——网页顶部</h1>
  6. </td>
  7. </tr>
  8. <tr height="25" align="left">
  9. <td colspan="2">
  10. <%
  11. request.setCharacterEncoding("UTF-8");
  12. String ayhzh=(String)session.getAttribute("yhzh");
  13. String akl=(String)session.getAttribute("kl");
  14. if (ayhzh!=null &&akl!=null&&akl.equals("20221111")){
  15. out.print("欢迎您, "+ayhzh +" 用户");
  16. }
  17. else{
  18. out.println("您没有权限访问该页面,请先登录!");
  19. response.setHeader("Refresh", "3;URL=login.jsp" );
  20. }
  21. %>
  22. </td>
  23. </tr>
  24. <tr>
  25. <td width="300px" height="500" align="center">
  26. <p><a href="hindex.jsp">后台首页</a></p>
  27. <p><a href="userlist.jsp">用户列表</a></p>
  28. <p><a href="adduser.jsp">用户注册</a></p>
  29. <p><a href="edituser.jsp">用户修改</a></p>
  30. <p><a href="deluser.jsp">用户删除</a></p>
  31. <p><a href="#">添加新闻</a></p>
  32. <p><a href="loginout.jsp">退出登录</a></p>
  33. </td>
  34. <td width="500px">
  35. <%
  36. String Driver="com.mysql.jdbc.Driver" ;
  37. String URL="jdbc:mysql://127.0.0.1:3306/newsdb?useUnicode=true&characterEncoding=utf-8" ;
  38. Class.forName(Driver);
  39. Connection conn=DriverManager.getConnection(URL,"root","123456");
  40. Statement stmt=conn.createStatement();
  41. ResultSet rs=stmt.executeQuery("select*from tb_user order by id");
  42. %>
  43. <table width="400px" border="1px" align="center" cellpadding="0" cellspacing="0">
  44. <tr>
  45. <td width="150px" align="center"><strong>用户名</strong></td>
  46. <td width="250px" align="center"><strong>密码</strong></td>
  47. </tr>
  48. <% while(rs.next()){
  49. out.print("<tr>");
  50. out.print("<td><a href=userinfo.jsp?userid="+rs.getString("id")+">"+rs.getString("用户名")+"</a></td>");
  51. out.print("<td>"+rs.getString("密码")+"</td>");
  52. out.print("</tr>");
  53. }
  54. rs.close();
  55. stmt.close();
  56. conn.close();
  57. %>
  58. </table>
  59. </td>
  60. </tr>
  61. <tr height="150" align="center">
  62. <td colspan="2">
  63. <font color="black" size="6"><b>后台主页——网页底部</b></font>
  64. </td>
  65. </tr>
  66. </table>
  67. </body>

 7.参照样式,制作用户信息显示页面userinfo.jsp。

<%@page import="java.sql.*" %>
  1. <body>
  2. <table border="1" width="880" cellspacing="0" cellpadding="0">
  3. <tr>
  4. <td colspan="2" align="center" height="150px">
  5. <h1>后台主页——网页顶部</h1>
  6. </td>
  7. </tr>
  8. <tr height="25" align="left">
  9. <td colspan="2">
  10. <%
  11. request.setCharacterEncoding("UTF-8");
  12. String ayhzh=(String)session.getAttribute("yhzh");
  13. String akl=(String)session.getAttribute("kl");
  14. if (ayhzh!=null &&akl!=null&&akl.equals("20221111")){
  15. out.print("欢迎您, "+ayhzh +" 用户");
  16. }
  17. else{
  18. out.println("您没有权限访问该页面,请先登录!");
  19. response.setHeader("Refresh", "3;URL=login.jsp" );
  20. }
  21. %>
  22. </td>
  23. </tr>
  24. <tr>
  25. <td width="300px" height="500" align="center">
  26. <p><a href="hindex.jsp">后台首页</a></p>
  27. <p><a href="userlist.jsp">用户列表</a></p>
  28. <p><a href="adduser.jsp">用户注册</a></p>
  29. <p><a href="edituser.jsp">用户修改</a></p>
  30. <p><a href="deluser.jsp">用户删除</a></p>
  31. <p><a href="#">添加新闻</a></p>
  32. <p><a href="loginout.jsp">退出登录</a></p>
  33. </td>
  34. <td width="500px">
  35. <%
  36. String Driver="com.mysql.jdbc.Driver" ;
  37. String URL="jdbc:mysql://127.0.0.1:3306/newsdb?useUnicode=true&characterEncoding=utf-8" ;
  38. Class.forName(Driver);
  39. Connection conn=DriverManager.getConnection(URL,"root","123456");
  40. Statement stmt=conn.createStatement();
  41. ResultSet rs=stmt.executeQuery("select*from tb_user where id="+request.getParameter("userid"));
  42. if(rs.next()){
  43. %>
  44. <table width="400" border="1" align="center" cellpadding="0" cellspacing="0">
  45. <tr>
  46. <td align="center" colspan="2">
  47. <h3>用户信息</h3>
  48. </td>
  49. </tr>
  50. <tr>
  51. <td align="right" width="150">
  52. <p>用户名:</p>
  53. </td>
  54. <td align="left">
  55. <%=rs.getString("用户名")%>
  56. </td>
  57. </tr>
  58. <tr>
  59. <td align="right" width="150">
  60. <p>密码:</p>
  61. </td>
  62. <td align="left">
  63. <%=rs.getString("密码")%>
  64. </td>
  65. </tr>
  66. </table>
  67. <% }
  68. rs.close();
  69. stmt.close();
  70. conn.close(); %>
  71. </td>
  72. </tr>
  73. <tr height="150" align="center">
  74. <td colspan="2">
  75. <font color="black" size="6"><b>后台主页——网页底部</b></font>
  76. </td>
  77. </tr>
  78. </table>
  79. </body>

8.参照样式,制作用户注册页面adduser.jsp。

  1. <body>
  2. <table border="1" width="880" cellspacing="0" cellpadding="0">
  3. <tr height="100" align="center">
  4. <td colspan="2">
  5. <h1>后台主页——网页顶部</h1>
  6. </td>
  7. </tr>
  8. <tr height="25" bgcolor="#f1f8e9" align="left">
  9. <td colspan="2">
  10. <%
  11. request.setCharacterEncoding("UTF-8");
  12. String ayhzh=(String)session.getAttribute("yhzh");
  13. String akl=(String)session.getAttribute("kl");
  14. if (ayhzh!=null &&akl!=null&&akl.equals("20221111")){
  15. out.print("欢迎您, "+ayhzh +" 用户");
  16. }
  17. else{
  18. out.println("您没有权限访问该页面,请先登录!");
  19. response.setHeader("Refresh", "3;URL=login.jsp" );
  20. }
  21. %>
  22. </td>
  23. </tr>
  24. <tr>
  25. <td width="300px" height="500" align="center">
  26. <p><a href="hindex.jsp">后台首页</a></p>
  27. <p><a href="userlist.jsp">用户列表</a></p>
  28. <p><a href="adduser.jsp">用户注册</a></p>
  29. <p><a href="edituser.jsp">用户修改</a></p>
  30. <p><a href="deluser.jsp">用户删除</a></p>
  31. <p>添加新闻</p>
  32. <p><a href="loginout.jsp">退出登录</a></p>
  33. </td>
  34. <td width="580px" height="500" align="center">
  35. <form name="form1" action="adduser_1.jsp" method="post">
  36. 用户名:
  37. <input type="text" name="yhm" maxlength="8" placeholder="请输入用户名"><br><br>
  38. 密码:
  39. <input type="password" name="pwd" maxlength="16" placeholder="请输入密码"><br><br>
  40. <input type="submit" value="提交" onclick="dlcheck()">
  41. <input type="reset" value="取消" onclick="dlcheck()">
  42. </form>
  43. </td>
  44. </tr>
  45. <tr height="150" align="center">
  46. <td colspan="2">
  47. <font color="black" size="6"><b>后台主页——网页底部</b></font>
  48. </td>
  49. </tr>
  50. </table>
  51. </body>

9.制作用户注册验证页面adduser_1.jsp。

<%@page import="java.sql.*" %>
  1. <body>
  2. <%
  3. request.setCharacterEncoding("UTF-8");
  4. String yh=request.getParameter("yhm");
  5. String mm=request.getParameter("pwd");
  6. String Driver="com.mysql.jdbc.Driver";
  7. String URL="jdbc:mysql://127.0.0.1:3306/newsdb?useUnicode=true&characterEncoding=utf-8";
  8. Class.forName(Driver);
  9. Connection conn=DriverManager.getConnection(URL,"root","123456");
  10. Statement stmt=conn.createStatement();
  11. String sql="insert into tb_user(用户名,密码)values('"+yh+"','"+mm+"')";
  12. int n=stmt.executeUpdate(sql);
  13. if(n==1){
  14. out.print("用户注册成功!");
  15. out.println("<h3>3秒钟后,自动跳转到用户列表页面!</h3>");
  16. response.setHeader("Refresh","3;URL=userlist.jsp");}
  17. else{
  18. out.print("用户注册失败!");
  19. out.println(" <h3>3秒钟后,自动跳转到后台管理首页!</h3>");
  20. response.setHeader("Refresh","3;URL=hindex.jsp");
  21. }
  22. if(stmt!=null){
  23. stmt.close();
  24. }
  25. if(conn!=null){
  26. conn.close();}
  27. %>
  28. </body>

10.制作用户修改页面edituser.jsp。

<%@ page import="java.sql.*" %>
  1. <body>
  2. <table border="1" width="880" cellspacing="0" cellpadding="0">
  3. <tr height="100" align="center">
  4. <td colspan="2" align="center" height="150px">
  5. <h1>后台主页——网页顶部</h1>
  6. </td>
  7. </tr>
  8. <tr height="25" align="left">
  9. <td colspan="2">
  10. <%
  11. request.setCharacterEncoding("UTF-8");
  12. String ayhzh=(String)session.getAttribute("yhzh");
  13. String akl=(String)session.getAttribute("kl");
  14. if (ayhzh!=null &&akl!=null&&akl.equals("20221111")){
  15. out.print("欢迎您, "+ayhzh +" 用户");
  16. }
  17. else{
  18. out.println("您没有权限访问该页面,请先登录!");
  19. response.setHeader("Refresh", "3;URL=login.jsp" );
  20. }
  21. %>
  22. </td>
  23. </tr>
  24. <tr>
  25. <td width="300px" height="500" align="center">
  26. <p><a href="hindex.jsp">后台首页</a></p>
  27. <p><a href="userlist.jsp">用户列表</a></p>
  28. <p><a href="adduser.jsp">用户注册</a></p>
  29. <p> <a href="edituser.jsp">用户修改</a></p>
  30. <p> <a href="deluser.jsp">用户删除</a></p>
  31. <p><a href="#">添加新闻</a></p>
  32. <p><a href="loginout.jsp">退出登录</a></p>
  33. </td>
  34. <td width="500px">
  35. <%
  36. String Driver="com.mysql.jdbc.Driver" ;
  37. String URL="jdbc:mysql://127.0.0.1:3306/newsdb?useUnicode=true&characterEncoding=utf-8" ;
  38. Class.forName(Driver);
  39. Connection conn=DriverManager.getConnection(URL,"root","123456");
  40. Statement stmt=conn.createStatement();
  41. ResultSet rs=stmt.executeQuery("select*from tb_user order by id");
  42. %>
  43. <table width="400px" border="1px" align="center" cellpadding="0" cellspacing="0">
  44. <tr>
  45. <td width="150px" align="center"><strong>用户名</strong></td>
  46. <td width="250px" align="center"><strong>密码</strong></td>
  47. <td width="100px" align="center"><strong>操作</strong></td>
  48. </tr>
  49. <% while(rs.next()){ out.print("<tr>");
  50. out.print("<td><a href=userinfo.jsp?userid="+rs.getString("id")+">"+rs.getString("用户名")+"</a></td>");
  51. out.print("<td>"+rs.getString("密码")+"</td>");
  52. out.print("<td><a href=edituser_1.jsp?userid="+rs.getString("id")+">修改<a></td>");
  53. out.print("</tr>");
  54. }
  55. rs.close();
  56. stmt.close();
  57. conn.close();
  58. %>
  59. </table>
  60. </td>
  61. </tr>
  62. <tr height="150" align="center">
  63. <td colspan="2">
  64. <font color="black" size="6"><b>后台主页——网页底部</b></font>
  65. </td>
  66. </tr>
  67. </table>
  68. </body>

10.制作用户修改提交页面edituser_1.jsp。

<%@ page import="java.sql.*" %>
  1. <body>
  2. <table border="1" width="880" cellspacing="0" cellpadding="0">
  3. <tr height="100" align="center">
  4. <td colspan="2" align="center" height="150px">
  5. <h1>后台主页——网页顶部</h1>
  6. </td>
  7. </tr>
  8. <tr height="25" align="left">
  9. <td colspan="2">
  10. <% request.setCharacterEncoding("UTF-8"); String ayhzh=(String)session.getAttribute("yhzh");
  11. String akl=(String)session.getAttribute("kl"); if (ayhzh!=null
  12. &&akl!=null&&akl.equals("20221111")){ out.print("欢迎您, "+ayhzh +" 用户"); } else{
  13. out.println("您没有权限访问该页面,请先登录!"); response.setHeader("Refresh", "3;URL=login.jsp" ); } %>
  14. </td>
  15. </tr>
  16. <tr>
  17. <td width="300px" height="500" align="center">
  18. <p><a href="hindex.jsp">后台首页</a></p>
  19. <p><a href="userlist.jsp">用户列表</a></p>
  20. <p><a href="adduser.jsp">用户注册</a></p>
  21. <p> <a href="edituser.jsp">用户修改</a></p>
  22. <p> <a href="deluser.jsp">用户删除</a></p>
  23. <p><a href="#">添加新闻</a></p>
  24. <p><a href="loginout.jsp">退出登录</a></p>
  25. </td>
  26. <td width="500px">
  27. <%
  28. String Driver="com.mysql.jdbc.Driver" ;
  29. String URL="jdbc:mysql://127.0.0.1:3306/newsdb?useUnicode=true&characterEncoding=utf-8" ;
  30. Class.forName(Driver);
  31. Connection conn=DriverManager.getConnection(URL,"root","123456");
  32. Statement stmt=conn.createStatement();
  33. ResultSet rs=stmt.executeQuery("select * from tb_user where id="+request.getParameter("userid"));
  34. if(rs.next())
  35. {
  36. %>
  37. <form method="post" action="edituser_2.jsp?userid=<%=rs.getString("id")%>">
  38. <table width="400" border="1" align="center" cellpadding="0" cellspacing="0">
  39. <tr>
  40. <td align="center" colspan="2">
  41. <h3>用户信息</h3>
  42. </td>
  43. </tr>
  44. <tr>
  45. <td align="right" width="150">
  46. <p>用户名:</p>
  47. </td>
  48. <td align="left">
  49. <input name="yhm" type="text" size="50"
  50. value=<%=rs.getString("用户名")%> >
  51. </td>
  52. </tr>
  53. <tr>
  54. <td align="right" width="150">
  55. <p>&nbsp;&nbsp;&nbsp;&nbsp;码:</p>
  56. </td>
  57. <td align="left">
  58. <input name="pwd" type="text" size="50"
  59. value=<%=rs.getString("密码")%> >
  60. </td>
  61. </tr>
  62. <tr>
  63. <td colspan="2">
  64. <input type="submit" name="button" id="button"
  65. value="修改用户">&nbsp;&nbsp;&nbsp;&nbsp;<input type="reset" value="取消">
  66. </td>
  67. </tr>
  68. </table>
  69. </form>
  70. <%}
  71. rs.close();
  72. stmt.close();
  73. conn.close();
  74. %>
  75. </td>
  76. </tr>
  77. <tr height="150" align="center">
  78. <td colspan="2">
  79. <font color="black" size="6"><b>后台主页——网页底部</b></font>
  80. </td>
  81. </tr>
  82. </table>
  83. </body>

10.制作用户修改验证页面edituser_2.jsp。

<%@page import="java.sql.*" %>
  1. <body>
  2. <%
  3. request.setCharacterEncoding("UTF-8");
  4. String yh=request.getParameter("yhm");
  5. String mm=request.getParameter("pwd");
  6. String Driver="com.mysql.jdbc.Driver";
  7. String URL="jdbc:mysql://127.0.0.1:3306/newsdb?useUnicode=true&characterEncoding=utf-8";
  8. Class.forName(Driver);
  9. Connection conn=DriverManager.getConnection(URL,"root","123456");
  10. Statement stmt=conn.createStatement();
  11. int n=stmt.executeUpdate("update tb_user set 用户名='"+yh+"',密码='"+mm+"' where id="+request.getParameter("userid"));
  12. if(n==1){
  13. out.print("数据修改成功!");
  14. out.println("<h3>3秒钟后,自动跳转到用户列表页面!</h3>");
  15. response.setHeader("Refresh","3;URL=userlist.jsp");}
  16. else{
  17. out.print("数据修改失败!");
  18. out.println("<h3>3秒钟后,自动跳转到修改用户列表页面!</h3> ");
  19. response.setHeader("Refresh","3;URL=edituser.jsp");
  20. }
  21. if(stmt!=null){
  22. stmt.close();
  23. }
  24. if(conn!=null){
  25. conn.close();}
  26. %>
  27. </body>

10.制作用户删除页面deluser.jsp。

	<%@ page import="java.sql.*" %>
  1. <body>
  2. <table border="1" width="880" cellspacing="0" cellpadding="0">
  3. <tr height="100" align="center">
  4. <td colspan="2" align="center" height="150px">
  5. <h1>后台主页——网页顶部</h1>
  6. </td>
  7. </tr>
  8. <tr height="25" align="left">
  9. <td colspan="2">
  10. <%
  11. request.setCharacterEncoding("UTF-8");
  12. String ayhzh=(String)session.getAttribute("yhzh");
  13. String akl=(String)session.getAttribute("kl");
  14. if (ayhzh!=null &&akl!=null&&akl.equals("20221111")){
  15. out.print("欢迎您, "+ayhzh +" 用户");
  16. }
  17. else{
  18. out.println("您没有权限访问该页面,请先登录!");
  19. response.setHeader("Refresh", "3;URL=login.jsp" );
  20. }
  21. %>
  22. </td>
  23. </tr>
  24. <tr>
  25. <td width="300px" height="500" align="center">
  26. <p><a href="hindex.jsp">后台首页</a></p>
  27. <p><a href="userlist.jsp">用户列表</a></p>
  28. <p><a href="adduser.jsp">用户注册</a></p>
  29. <p> <a href="edituser.jsp">用户修改</a></p>
  30. <p> <a href="deluser.jsp">用户删除</a></p>
  31. <p><a href="#">添加新闻</a></p>
  32. <p><a href="loginout.jsp">退出登录</a></p>
  33. </td>
  34. <td width="500px">
  35. <%
  36. String Driver="com.mysql.jdbc.Driver" ;
  37. String URL="jdbc:mysql://127.0.0.1:3306/newsdb?useUnicode=true&characterEncoding=utf-8" ;
  38. Class.forName(Driver);
  39. Connection conn=DriverManager.getConnection(URL,"root","123456");
  40. Statement stmt=conn.createStatement();
  41. ResultSet rs=stmt.executeQuery("select*from tb_user order by id");
  42. %>
  43. <table width="400px" border="1px" align="center" cellpadding="0" cellspacing="0">
  44. <tr>
  45. <td width="150px" align="center"><strong>用户名</strong></td>
  46. <td width="250px" align="center"><strong>密码</strong></td>
  47. <td width="100px" align="center"><strong>操作</strong></td>
  48. </tr>
  49. <% while(rs.next()){ out.print("<tr>");
  50. out.print("<td><a href=userinfo.jsp?userid="+rs.getString("id")+">"+rs.getString("用户名")+"</a></td>");
  51. out.print("<td>"+rs.getString("密码")+"</td>");
  52. out.print("<td><a href=deluser_1.jsp?userid="+rs.getString("id")+">删除<a></td>");
  53. out.print("</tr>");
  54. }
  55. rs.close();
  56. stmt.close();
  57. conn.close();
  58. %>
  59. </table>
  60. </td>
  61. </tr>
  62. <tr height="150" align="center">
  63. <td colspan="2">
  64. <font color="black" size="6"><b>后台主页——网页底部</b></font>
  65. </td>
  66. </tr>
  67. </table>
  68. </body>

10.制作用户删除验证页面deluser_1.jsp。

<%@page import="java.sql.*" %>
  1. <body>
  2. <%
  3. request.setCharacterEncoding("UTF-8");
  4. String yh=request.getParameter("yhm");
  5. String mm=request.getParameter("pwd");
  6. String Driver="com.mysql.jdbc.Driver";
  7. String URL="jdbc:mysql://127.0.0.1:3306/newsdb?useUnicode=true&characterEncoding=utf-8";
  8. Class.forName(Driver);
  9. Connection conn=DriverManager.getConnection(URL,"root","123456");
  10. Statement stmt=conn.createStatement();
  11. int n=stmt.executeUpdate ("delete from tb_user where id="+request.getParameter("userid"));
  12. if(n==1){
  13. out.print("删除数据成功!");
  14. out.println("<h3>3秒钟后,自动跳转到用户列表页面!</h3>");
  15. response.setHeader("Refresh","3;URL=userlist.jsp");}
  16. else{
  17. out.print("删除数据失败!");
  18. out.println("<h3>3秒钟后,自动跳转到删除用户列表页面!</h3> ");
  19. response.setHeader("Refresh","3;URL=deluser.jsp");
  20. }
  21. if(stmt!=null){
  22. stmt.close();
  23. }
  24. if(conn!=null){
  25. conn.close();}
  26. %>
  27. </body>

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/575387
推荐阅读
相关标签
  

闽ICP备14008679号