jsp学习

JSP学习与尝试

JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。 (简单理解就是在Java代码之中写入html标签,和在学习前端的过程中学习的JavaScript有些类似,但是经过查询后,两者还是有很大差别:
1.Jsp是一种动态网页技术标准也是JAVAEE的标准
2.JavaScript是脚本语言,用于前端交互,而且应该是在html中写入java(好吧,最大区别是前端和后端)
(1)JSPJava servlet
1.JSP事实上就是一种servlet,但是JSP可以很方便的编写或者修改HTML网页而不用去面对大量的println语句(使用Jsp只需要完成程序员需要输出到客户端的内容)
2.servlet擅长逻辑控制,Jsp擅长页面显示
3.Web容器会把Jsp翻译为可识别的类
(2)JSP运行
(3)jsp编写中所遇到的问题
1.最重要的应该是如何正确建立一个jsp项目(其中包括后续Module的配置,Tomcat的配置)
我是在经历了自己创建运行失败多次找到的教程,记下来比较好:用IDEA创建jsp文件
2.在对tomcat 进行配置时出现的Tomcat deployment 下没有Artifact,在这种情况下jsp文件无法进行“run"操作
解决方法

3.getRequestDispatcher红字显示错误
错误提醒:cannot resolve method"xxxxx"
解决办法:添加Tomcat
解决方法方法2;
4.有关跳转页面的问题
在设计中如果密码错误就会跳转到login页面,其中我觉得应该有两种形式:

else{
   
            request.setAttribute("usertext","密码与账号名不符合!");
            //(1)request.getRequestDispatcher("login.jsp".(request,response));
            //(2)<jsp:forward page = "login.jsp"></jsp:forward>
        }

但是事实上,
在这里插入图片描述在这里插入图片描述
Rename reference?
后来我去查找了一下具体用法,修改为:
在这里插入图片描述就正确了。
除了以上两种,还有代码: response.sendRedirect(“xxx.jsp”);
有关它们的区别:
1.response 客户端跳转
2.forword做标记,服务器跳转
3.requestDispatcher类 服务器跳转

有关jsp指令分享的文章:

jsp常见指令总结
5.有关jsp文件防止乱码的问题

request.setCharacterEncoding("utf-8");

response.setContentType("text/html;charset=utf-8");

String name=request.getParameter("username");

String password=request.getParameter("password");
request.setCharacterEncoding("gb2312");

对,就是它们!
(4)本次作业设计
1.三个jsp实现登录,它们分别为:
login.jsp:负责登陆页面
doIt.jsp:负责登录过程问题处理和成功进行后的跳转
success.jsp:计算器的运行,引入了一个beans包,包中的computerBeans里写有运算过程的具体实现,在success中用useBean方法进行了调用
具体代码:
login.jsp:

<%--
  Created by IntelliJ IDEA.
  User: 石
  Date: 2020/5/23
  Time: 10:44
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>登陆页面</title>
</head>
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值