首先给出sql驱动包

  引入sql包

  import java.sql.*;//java

  <%@ page import="java.sql.*"%>//jsp

  连接mysql数据库

  String DBDRIVER= "com.mysql.jdbc.Driver";//驱动程序

  String DBURL="jdbc:mysql://localhost:3306/db_jsp?characterEncoding=utf-8";

  //localhost是本机地址,3306端口,db_jsp数据库名,utf-8编码

  String DBUSER= "root";//登录名

  String DBPASSWORD= "toor";//登陆密码

  Connection conn=null;//Connection对象

  try{

  Class.forName(DBDRIVER);//将数据库驱动加载到JVM中,Driver类实例注册到DriverManager类中

  conn=DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD);//获取Connection对象

  }catch (Exception e){

  System.out.println("数据库连接失败:" + e.getMessage());

  }

  1.执行静态SQL语句,一般用Statement

  Statement提供了三种执行方法:

  (1)ResultSet executeQuery(String sqlString),执行查询语句,返回ResultSet;

  (2)int executeUpdate(String sqlString),执行更新语句(INSERT,UPDATE,DELETE,SQL DDL[CREATE TABLE,DROP TABLE])等,返回值是本次操作影响的记录数

  (3)execute(String sqlString),可以如(1)(2)处理单个语句,也可以处理返回多个结果的预编译语句

  //执行例子

  Statement stmt=null;无锡看男科医院哪家好 https://yyk.familydoctor.com.cn/20612/

  String sql="INSERT INTO x(a,b) VALUES('1','2')";

  stmt = conn.createStatement();

  stmt.executeUpdate(sql);//int

  2.执行动态SQL语句,一般用PreparedStatement

  PreparedStatement继承自Statement,但已经过预编译,所以执行效率更高,并且PreparedStatement不是完整的sql语句,待定字符用'?'代替,用setXXX方法设置字段

  PreparedStatement pstmt = null;//PreparedStatement对象

  String sql = "UPDATE person set password=? WHERE id=?";//'?'动态设置

  pstmt = conn.prepareStatement(sql);//预编译sql语句

  pstmt.setString(1,"hello");//第一个动态字段是String类型

  pstmt.setInt(2,123);//第二个动态字段是int类型

  pstmt.executeUpdate();//执行语句

  3.ResultSet接口提供访问结果集的方法

  ResultSet rs=stmt.executeQuery("SELECT * FROM per");//假设per数据库有id和name字段

  while(rs.next()){

  String id=rs.getString("id");

  String id=rs.getString("name");

  System.out.println(id+" "+name);

  }

java/jsp执行sql语句的方式的更多相关文章

  1. JDBC中执行SQL语句的方式

    一.执行DDL.DML语句 DDL.DML分别表示数据库定义语言.数据库操纵语言,操控这两种语言应该使用Statement对象的executeUpdate方法. 代码如下: public static ...

  2. Java JDBC下执行SQL的不同方式、参数化预编译防御

    相关学习资料 http://zh.wikipedia.org/wiki/Java数据库连接 http://lavasoft.blog.51cto.com/62575/20588 http://blog ...

  3. 10.1(java学习笔记)JDBC基本操作(连接,执行SQL语句,获取结果集)

    一.JDBC JDBC的全称是java database connection java数据库连接. 在java中需要对数据库进行一系列的操作,这时就需要使用JDBC. sun公司制定了关于数据库操作 ...

  4. java执行sql语句使用别名时显示Column '***' not found

    java执行sql语句使用别名时显示Column '*' not found 在做一个小项目时遇到个问题,执行sql语句使用别名时总是报sql异常 Column '*' not found,折腾半天终 ...

  5. 加载映射文件几种方式和mapper接口注解执行sql语句

    一.加载映射文件几种方式 二.mapper接口注解执行sql语句 就将xml中的sql语句放到注解的括号中就可以,一般只用于简单的sql语句合适:

  6. 三种执行SQL语句的的JAVA代码

    问题描述: 连接数据库,执行SQL语句是必不可少的,下面给出了三种执行不通SQL语句的方法. 1.简单的Statement执行SQL语句.有SQL注入,一般不使用. public static voi ...

  7. 解决乱码的方法是,在执行SQL语句之前,将MySQL以下三个系统参数设置为与服务器字符集character-set-server相同的字符集

    character-set-server/default-character-set:服务器字符集,默认情况下所采用的. character-set-database:数据库字符集. characte ...

  8. 执行sql语句为什么?用PreparedStatement要比Statement好用

    PreparedStatement public interface PreparedStatement extends Statement;可以看到PreparedStatement是Stateme ...

  9. 4.5 .net core下直接执行SQL语句并生成DataTable

    .net core可以执行SQL语句,但是只能生成强类型的返回结果.例如var blogs = context.Blogs.FromSql("SELECT * FROM dbo.Blogs& ...

随机推荐

  1. python HTTP 状态码

    404 Not Found 在HTTP请求的路径无法匹配任何RequestHandler类相对应的模式时返回404(Not Found)响应码. 400 Bad Request 如果你调用了一个没有默 ...

  2. is null 的优化

    bk1gx7xwj9du6SELECT *  FROM HEADERS GJH WHERE ATTRIBUTE10 IS NULL FOR UPDATE 优化建议如下: 短期来说:建立一个索引来优化: ...

  3. Ubuntu 下修改Tomcat和Jetty默认的JDK和初始内存

    修改/etc/default/tomcat  或者  /etc/default/jetty   文件 中的 JAVA_HOME 和 JAVA_OPTS

  4. HDU 1029 一道微软面试题

    http://acm.hdu.edu.cn/showproblem.php?pid=1029 给定一个数组,其中有一个相同的数字是出现了大于等于(n + 1) / 2次的.要求找出来. 1.明显排序后 ...

  5. jeesite框架搭建中mysql数据库导入问题

    在进行mysql8.0的安装配置时,可以说是道路坎坷,之前介绍了如何安装配置mysql8.0,虽然mysql在正常情况下是很容易安装的,但是如果遇到特殊情况的时候那就需要特殊的处理. 这次我遇到的问题 ...

  6. 洪水(flood)

    洪水(flood) 题目背景 Awson是某国际学校信竞组的一只菜鸡.今年,该市发生了千年难遇的洪水.被监禁在学校的Awson不甘怠堕,想将自己投入到公益服务事业中去.这天,他偷了H老师的小电驴,偷偷 ...

  7. [USACO15OPEN]回文的路径Palindromic Paths

    [USACO15OPEN]回文的路径Palindromic Paths 题目描述 Farmer John's farm is in the shape of an N \times NN×N grid ...

  8. jvm 内存dump、gc查看、线程死锁,jmap、jstack、jstat

    1. jstat     这个命令对于查看Jvm的堆栈信息很有用.能够查看eden,survivor,old,perm等heap的capacity,utility信息 对于查看系统是不是有能存泄漏以及 ...

  9. 关于rabbitmq的消息路由的同步问题

    http://www.cnblogs.com/me-sa/archive/2012/11/12/rabbitmq_ram_or_disk_node.html我是看了上面的博客明白了一些原理的,我之前一 ...

  10. swift学习笔记3-4

    再牛逼的梦想,也抵不住你傻逼似的坚持! 我跑啊跑啊,为的就是赶上那个被寄予厚望的自己. 三.运算符+表达式 swift允许重载运算符,比如 “+”你可以重载它 后续会详细介绍 赋值运算符 pass 算 ...