jsp期末复习知识点

C/S  应用程序 例如 jsp,php,c,c++,java
B/S  网页开发 例如 html,css,js

<input >
<form action="地址">
    <input type="" name="name1" value="value1">
    
</form>
常用type:
    1.text 文本框
    2.submit 提交表单
    3.botton 按钮,通常是配合js使用
    4.hidden 隐藏的
    5.password 密码框
    6.radio 单选
    7.check 多选


目录结构:
    工程目录:一定在tomcat的主目录下的webapps下
    WEB-INF:一定要在工程目录下(必须为工程目录的子目录)
    WEB-INF子目录结构: 
        1.src    资源位置(通常放java文件和xml文件)
        2.classes   编译后的文件位置
        3.lib  存放库文件(通常为jar文件)

tomcat在浏览器下的输入
    http://localhost:8080/工程目录/文件

在命令中启动tomcat
    net start tomcat(服务名称)
关闭
    net stop tomcat

jsp的一些标准语法
<%      通常填写java的脚本语句
...
...
%>

<%!   %>   全局声明 与java中的static类似也和全局变量类似,
        声明之后,只要网页没有关闭,变量一直存在
<%=  %>    相当于java中的 System.out.print();
       必须为表达式
       可以写成<%  out.println();%> 一样的效果
<%@   %>   通常用来声明包含头
    <%@page contentType="Text/html;charset=uft-8">
        默认语言为java
        language="java"
            pageEncoding="uft-8"   声明字符集
@page
    1.language 声明语言
    2.contentType 相当于声明网页的mate标签内容以及声明字符集
         相当于>>>  <meta charset="UTF-8">
    3.pageEncoding 声明网页的字符集
    4.import 包含头文件 

@include 引用文件
    1.file="文件名"


html 注释  
    <!--    -->
jsp 注释
    <%--   --%>


jsp标记元素
    forward 用来将目标文件的东西引入当当前页面,会覆盖
        当前页面的内容
        <jsp:forward page="路径">
        通常配合param标签使用

    param 用来传递参数

    include 这个只是单纯将指定路径下的网页内容移动到当前网页
        没有覆盖操作
        相当于无参的一个函数的写法
        通常用来拼装网页(结构化网页设计)

数据的传递
<form>标签有两种传递模式
    method 用来设置传递模式
        1.post 相当于后台传递,不能看见
            
        2.get  在地址栏中传递,用户可以看见
            通常是编程初期使用,不安全,用于练手
            也可以用来检测是否传值正确
地址栏中传值的语法
    www.baidu.com?username=admin&password=123
    这样做不安全

获取上一个网页传递的值(get或post)
    request.getParameter("name1");(返回值是String类型)


设置java脚本的字符集
    request.setCharacterEncoding("utf-8"); 
字符集
    1.ascll
    2.ISO8859-1
    3.GB2312
    4.GBK
    5.unicode (utf-8属于这个里面)

在mysql中,默认字符集为latin1
在创建mysql表单的时候,要在语句后面加上
create table name(
id varchar(11)    
)engine=innodb default charset=utf8;
防止不可输入中文


session对象的使用(用于服务后端传值,非地址栏传值,不可见)
    该对象是会话级别,只有关闭网页后才会销毁,否则一直存在
    相当于全局变量

通常使用的方法函数:
    1.getAttribute("name");   获取对应名称的值
    2.setAttribute("name","value"); 名字+对应的值

response 页面重定向
方法函数:
    1.sendRedirect("路径"); 相当于form表单的action
    2.setHeader("refresh","5;URL=页面路径");  相当于from表单的action,可以加上定时


Integer转换为String
Integer a = 2;
String str = a.toString();

字符串转换为数字 字符串内容必须为数字,否则会报错
String str = "10";
Integer it = Integer.valueOf(str);

java的函数传值,有些时候要求是Integer类型,就绝对不能穿String类型,反之一样


jsp的作用域
    1.application 作用范围是整个应用(浏览器)
    2.session 当前页面(只要页面不关闭,都存在)
    3.request 当前请求
    4.page 当前网页


数据库的链接步骤
1.导入JDBC的API
    1) <%@page import="java.sql.*"%>
    在WEB-INF中的lib文件夹下一定要有连接器才能导入该包
    2) String sConnstr="jdbc:mysql://localhost:3306/数据库名字" (localhsot处填入ip地址也可以)
        如果数据传入msyql中,出现中文乱码,在这句话后面加上
        ?characterEncoding=utf8"   即可
    如:jdbc:mysql://localhost:3306/test?characterEncoding=utf8
    3)导入链接设备
        com.mysql.jdbc.Driver

2.装载数据库驱动程序
    Class.forName(数据库的映射路径);  // com.mysql.jdbc.Driver

3.建立链接
    Connection conn=DriverManager.getConnection(sConnstr,mysql账号,密码);    建立链接

4.创建一个调用mysql语句的一个对象(Statement)
    Statement stmt=conn.createStatement(); 
5.执行sql语句(通常使用String 去写一个sql语句)
    1.select 查找
        select 列名 from 表单名字 where id=1;  (where 相当于java的if)
                order by 列名 desc(从大到小) limit 5 (取前五个)(用来排序,写在表单名字后面)
                limit 2,5
    2.update 更新(修改)
        updata 表单名字 set 列名 = 值  
    3.delete 删除
        
    4.insert into 增加
        
        1)insert into news values(123,123,142,4124);  默认形式
        2)insert into news(title,acnumber) values('我是温馨',1000);  指定添加形式
stmt.executeQuery(sql);   只用select上,返回值是一个结果集(ResultSet类型)
                例如ResultSet rs=stmt.executeQuery(sql); 
            rs.next();指向下一个集合,如果没有,返回false,有返回true
stmt.executeUpdate(sql);   用在修改,删除,增加 ,成功返回值是一个大于0的数字,失败返回0

6.处理结果
    rs.getInt("id");    处理int类型,返回值是Integer 
    rs.getString("title"); 处理varchar,text类型,返回值是String

7.关闭数据库
    conn.close();


        

<jsp:useBean id="commentDAO" class="news.beans.CommentDAO" scope="page" />
    id:变量名字
    class:类名字
    scope:声明周期
        1.application 作用范围是整个应用(浏览器)
        2.session 当前页面(只要页面不关闭,都存在)
        3.request 当前请求
        4.page 当前网页


<jsp:setProperty name="comment" property="*"/>
传过来的值的名字要和对应的类名字相匹配(自动匹配)
    name:javaBean对象的名字
    property:填写对象的参数,用*号代表所有

<jsp:getProperty name="news" property="username"/>
将news对象的username属性值获取出来
相当于<%=news.getUsername()%>

      

    


        

  • 7
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值