java/jsp执行sql语句的方式
首先给出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语句的方式的更多相关文章
- JDBC中执行SQL语句的方式
一.执行DDL.DML语句 DDL.DML分别表示数据库定义语言.数据库操纵语言,操控这两种语言应该使用Statement对象的executeUpdate方法. 代码如下: public static ...
- Java JDBC下执行SQL的不同方式、参数化预编译防御
相关学习资料 http://zh.wikipedia.org/wiki/Java数据库连接 http://lavasoft.blog.51cto.com/62575/20588 http://blog ...
- 10.1(java学习笔记)JDBC基本操作(连接,执行SQL语句,获取结果集)
一.JDBC JDBC的全称是java database connection java数据库连接. 在java中需要对数据库进行一系列的操作,这时就需要使用JDBC. sun公司制定了关于数据库操作 ...
- java执行sql语句使用别名时显示Column '***' not found
java执行sql语句使用别名时显示Column '*' not found 在做一个小项目时遇到个问题,执行sql语句使用别名时总是报sql异常 Column '*' not found,折腾半天终 ...
- 加载映射文件几种方式和mapper接口注解执行sql语句
一.加载映射文件几种方式 二.mapper接口注解执行sql语句 就将xml中的sql语句放到注解的括号中就可以,一般只用于简单的sql语句合适:
- 三种执行SQL语句的的JAVA代码
问题描述: 连接数据库,执行SQL语句是必不可少的,下面给出了三种执行不通SQL语句的方法. 1.简单的Statement执行SQL语句.有SQL注入,一般不使用. public static voi ...
- 解决乱码的方法是,在执行SQL语句之前,将MySQL以下三个系统参数设置为与服务器字符集character-set-server相同的字符集
character-set-server/default-character-set:服务器字符集,默认情况下所采用的. character-set-database:数据库字符集. characte ...
- 执行sql语句为什么?用PreparedStatement要比Statement好用
PreparedStatement public interface PreparedStatement extends Statement;可以看到PreparedStatement是Stateme ...
- 4.5 .net core下直接执行SQL语句并生成DataTable
.net core可以执行SQL语句,但是只能生成强类型的返回结果.例如var blogs = context.Blogs.FromSql("SELECT * FROM dbo.Blogs& ...
随机推荐
- python HTTP 状态码
404 Not Found 在HTTP请求的路径无法匹配任何RequestHandler类相对应的模式时返回404(Not Found)响应码. 400 Bad Request 如果你调用了一个没有默 ...
- is null 的优化
bk1gx7xwj9du6SELECT * FROM HEADERS GJH WHERE ATTRIBUTE10 IS NULL FOR UPDATE 优化建议如下: 短期来说:建立一个索引来优化: ...
- Ubuntu 下修改Tomcat和Jetty默认的JDK和初始内存
修改/etc/default/tomcat 或者 /etc/default/jetty 文件 中的 JAVA_HOME 和 JAVA_OPTS
- HDU 1029 一道微软面试题
http://acm.hdu.edu.cn/showproblem.php?pid=1029 给定一个数组,其中有一个相同的数字是出现了大于等于(n + 1) / 2次的.要求找出来. 1.明显排序后 ...
- jeesite框架搭建中mysql数据库导入问题
在进行mysql8.0的安装配置时,可以说是道路坎坷,之前介绍了如何安装配置mysql8.0,虽然mysql在正常情况下是很容易安装的,但是如果遇到特殊情况的时候那就需要特殊的处理. 这次我遇到的问题 ...
- 洪水(flood)
洪水(flood) 题目背景 Awson是某国际学校信竞组的一只菜鸡.今年,该市发生了千年难遇的洪水.被监禁在学校的Awson不甘怠堕,想将自己投入到公益服务事业中去.这天,他偷了H老师的小电驴,偷偷 ...
- [USACO15OPEN]回文的路径Palindromic Paths
[USACO15OPEN]回文的路径Palindromic Paths 题目描述 Farmer John's farm is in the shape of an N \times NN×N grid ...
- jvm 内存dump、gc查看、线程死锁,jmap、jstack、jstat
1. jstat 这个命令对于查看Jvm的堆栈信息很有用.能够查看eden,survivor,old,perm等heap的capacity,utility信息 对于查看系统是不是有能存泄漏以及 ...
- 关于rabbitmq的消息路由的同步问题
http://www.cnblogs.com/me-sa/archive/2012/11/12/rabbitmq_ram_or_disk_node.html我是看了上面的博客明白了一些原理的,我之前一 ...
- swift学习笔记3-4
再牛逼的梦想,也抵不住你傻逼似的坚持! 我跑啊跑啊,为的就是赶上那个被寄予厚望的自己. 三.运算符+表达式 swift允许重载运算符,比如 “+”你可以重载它 后续会详细介绍 赋值运算符 pass 算 ...