JAVA课堂随记(持续更新)

4.13笔记

注释有3种:
1,文档注释: /** * */
2,// 单行注释
3,/ * … * / 多行注释

=====================================================
JSP是什么:
JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,一种动态网页技术标准


<%@ page language="java" contentType="text/html; charset=UTF-8" 
pageEncoding="UTF-8" errorPage="errorPage.jsp" %>
//页面指令,java语言的,下面这些内容输出到html是文本格式的,
页面的编码是utf-8,错误提醒页面

    
    测试页面

//为了防止出现乱码,要在里加上一个

=========================================================
JSP有9个内置对象out,request,response,Page,pageContext,exception,config,application,session.
pageContext:用来存页面上下文信息.
exception:异常对象
注:404找不到资源,500是代码错误
错误页面的写法

<%@ page language="java" contentType="text/html; charset=UTF-8" 
pageEncoding="UTF-8" isErrorPage="true" %>


   
   测试页面


不好意思,出错了
<%
   response.getWriter().println(exception.getMessage());
%>


<%= 简单的代码%>//是用来显示输出的
//访问计算量的代码编写
 Integer count =(Integer) application.getAttribute("count");//页面访问次数计算代码
    if(count == null){
        count = 0;//如果访问次数为空,那么赋值为0
    }
    count = count +1;//每次访问都加1
    application.setAttribute("count",count);
    response.getWriter().println("访问次数"+count);

JAVA课堂随记(持续更新)_第1张图片

4.14笔记

一个页面需要:banner条,导航条,版权声明。
我们需要声明一个方法包含它们。
页面共享include:有静态,有动态

<%@ include file="header.jsp"%>//把需要的页面给包含进来
,编译为指令嵌进去,在编译的时候起作用

//这是图片添加的代码,需要把图片放在同路径images,设置长宽
版权所有©right;2班45
//声明版权所有 首页 //这是词条的设置 在index.jsp中<% int i =100 %>,然后在header.jsp<%=i %>结果是可以输出 动作,在运行的时候起作用,独立的servlet 跳转页面,相当于进入新的页面

赋值符只有在运行的时候才起作用

//创建表单 //创建提交按钮
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" errorPage="errorPage.jsp" %>




首页 新闻 产品 其他 关于

JAVA课堂随记(持续更新)_第2张图片

4.20笔记

Servlet:写java代码,比较方便,可读性比较好,如果在页面上显示比价麻烦,显示的时候比较简单,如果要处理业务逻辑比较麻烦。

JSP Model2采用jsp+Servlet+JavaBean技术,此技术将原本JSP页面中的流程控制代码提取出来,封装到Servlet中,从而实现了整个程序页面显示,流程控制和业务逻辑的分离

MVC:模型(model)+视图(view)+控制器(controller)
JAVA课堂随记(持续更新)_第3张图片
model访问不了view,view也访问不了model

做一个完整的登录页面(内含登录成功,登录失败的跳转页面)

//这是登录页面
<%@ page language="java" contentType="text/html; charset=UTF-8" 
pageEncoding="UTF-8" errorPage="../../errorPage.jsp" %>


    
    测试页面


登录名称:
登录密码:
验证码:
//验证码验证 //登录的按钮 //取消的按钮

JAVA课堂随记(持续更新)_第4张图片
这是登录成功的页面显示

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


这是我们的主界面,你好:<%=request.getAttribute("name")%>//通过传参数把
用户名字传进来


JAVA课堂随记(持续更新)_第5张图片
这是登录失败的页面

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


登录失败,原因是 <%=request.getAttribute("msg")%>请重新登录
//通过传参数把登录失败的原因显示出来,并重新加载登录页面


这是登录页面的JavaServlet代码

package cn.edu.mju.project2.comtroller;
import cn.edu.mju.project2.utils.StrUtils;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet("/login")
public class LoginController extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{
        String msg = req.getParameter("msg");
        req.setAttribute("msg",msg);
        req.getRequestDispatcher("/WEB-INF/template/login.jsp").forward(req,resp);
 	}
@Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String loginName = req.getParameter("loginName");
        String loginPwd = req.getParameter("loginPwd");
        String validCode = req.getParameter("validCode");
        String saveCode = (String)req.getSession().getAttribute("code");
        ServletContext application = this.getServletContext();
        application.setAttribute("c",1);
        //登陆名称是你的学号,密码是1234,那么显示下面的内容,否则,显示账户密码错误
        String msg =null;
        if(StrUtils.isBank(validCode)){
            loginFail(req,resp,"请输入校验码");
        }else{
            if(validCode.equals(saveCode)){
                if("45".equals(loginName) && "123456".equals(loginPwd)){
                    req.getSession().setAttribute("name",loginName);//传loginName给name
                    resp.sendRedirect("main");
                    req.setAttribute("name",loginName);
                    req.getRequestDispatcher("/WEB-INF/template/main.jsp").forward(req,resp);
                }else{
                    msg = "账号密码错误!";
                    loginFail(req,resp,"账号密码错误!");
                }
            }else{
                loginFail(req,resp,"校验码输入错误");
            }
        }

        

    }
    //声明登录失败原因的方法
    private void loginFail(HttpServletRequest req, HttpServletResponse resp,String msg) throws ServletException, IOException{
        req.setAttribute("msg",msg);
        resp.sendRedirect("/login?msg="+ msg);

    }

你可能感兴趣的:(JAVA课堂随记(持续更新))