• statement对象与sql语句(新手)


    本篇介绍读上篇代码中的疑惑点

    实现简单网页上对数据内容进行增删改查,需要用到三个部分jsp网页前端部分+java后台程序+数据库表

    一.创建一个Statement 用于在已经建立数据库连接的基础上,向数据库发送要执行的SQL语句Statement对象,用于执行不带参数的简单SQL语句
    •要执行SQL语句,必须获得java.sql.Statement实例

    Statement实例分为以下3 种类型:
    1、执行静态SQL语句。通常通过Statement实例实现。
    2、执行动态SQL语句。通常通过PreparedStatement实例实现。
    3、执行数据库存储过程。通常通过CallableStatement实例实现。
    具体的实现方式:

    //Connection con
    Statement st = con.createStatement() ;
    PreparedStatement pst = con.prepareStatement(sql语句) ;
    CallableStatement cst = con.prepareCall("{call demoSp(? , ?)}") ;
    .执行SQL语句
    Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate 和execute
    1、ResultSet executeQuery(String sqlString):执行查询数据库的SQL语句 //查询
    ,返回一个结果集(ResultSet)对象。 ResultSet对象 是查询数据库时的返回对象,读取返回结果集,可通过ResultSet的接口常用方法实现,
    2、int executeUpdate(String sqlString):用于执行INSERT、UPDATE或
    DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等
    3、execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的
    语句。
    具体实现的代码:
    ResultSet rs = st.executeQuery("select*from YourShujukuName") ;
    int rows = st.executeUpdate("insert into ...") ;
    boolean flag = st.execute(String sql) ;

    Insert into 语句

    INSERT INTO 语句用于向表格中插入新的行。//添加

    语法

    INSERT INTO 表名称 VALUES (值1, 值2,....)

     

    三、HttpServletRequest介绍

      HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,通过这个对象提供的方法,可以获得客户端请求的所有信息。

    四、Request常用方法

    request.getAttribute():是request时设置的变量的值,用request.setAttribute("name","您自己的值");来设置值,
    request.getAttribute()和request.getParameter()的区别是request.getAttribute()获得的是对象类型
    request.setAttribute()和getAttribute()只是在web容器内部流转,仅仅是请求处理阶段
    request.getAttribute("nameOfObj")可得到JSP页面一表单中控件的Value。其实表单控件中的Object的 name与value是存放在一个哈希表中的,所以在这里给出Object的name会到哈希表中找出对应它的value。
    而不同页面间传值使用request.setAttribute(position, nameOfObj)时,只会从a.jsp到b.jsp一次传递,之后这个request就会失去它的作用范围,再传就要再设一个 request.setAttribute()。而使用session.setAttribute()会在一个过程中始终保有这个值。
    服务完成了编译的工作,完成生成了HTML代码,并把它们返回给浏览器去执行,服务器上的那个request已经不存在,所有与它一起的数据都没有了. 返回给客户端后,我们就看到了一个表单,然后点击 "传送 ",再次访问服务上的Request.jsp,这时候又产生了一个新的request对像,但以前的那个数据已经不存在了,因为是不同的request了.所以你在Request.jsp里边再取它,那是当然取不到的了.setAttribute()是针对同一次服务器的访问的,第一次访问成功后我们看到了表单,点击 "传送 "后,发生了第二次与服务器的请求,产生了新的request

    //摘自百度解答

  • 相关阅读:
    MySQL连接数过多登录不上
    Linux中盘符的两种挂载方法
    Linux杀毒软件ClamAV初次体验
    VS2013开发asmx接口根据ID查询对象
    VS2013开发asmx接口返回一个自定义XML
    VS2013开发一个简单的asmx接口程序
    Java编译过程(传送门)
    凡人和神学习和使用软件的七个层次
    CentOS7 限制SSH密码尝试次数
    马云是如何招聘到多隆这样的牛人的?(转)
  • 原文地址:https://www.cnblogs.com/sengzhao666/p/10169839.html
Copyright © 2020-2023  润新知