Update类型_JDBC的方法_JAVA方法_Loadrunner脚本
java vuser JDBC 参数化的方法
如果不进行参数化 直接把32 33行去掉 ,sql 值写到valuers 中就行了
下面这是 insert,delete,update 三种方法的sql 方法模板
注:数据库增删改 都是 第37行 int rows = ps.executeUpdate(); Update()方法,本来就都是Update操作
步骤:
1.注册驱动
2.通过用户名,密码,数据库url等信息,获取jdbc链接Connection
3.通过jdbc链接,对sql语句进行预编译,得到PreparedStatement
4.对sql语句进行传参数
5.执行sql语句
6.获取数据
insert、update、delete返回的是操作的是数据行数
Select返回的ResultSet对象,可以获取对应的列值
7.关闭链接
非空的情况下,关闭Connection
非空的情况下,关闭PreparedStatement
这是在java 中模拟执行
package com.test;
//包名 import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement; public class Jdbc_Update {
String user = "root";
String password = "123456";
String url = "jdbc:mysql://localhost:3306/oa?useUnicode=true&characterEncoding=utf8";
String sql = "insert into itcast_role (name, description) values (?,?)";
//定义成全局变量
PreparedStatement ps;
Connection conn; public int init() throws Throwable {
//1.注册mysql驱动
Class.forName("com.mysql.jdbc.Driver");
//2.通过url,user,password建立mysql连接,返回Connection的对象
//第三个getConnection - [记住的]
conn = DriverManager.getConnection(url, user, password);
//3.对sql进行预编译,返回一个编译过的sql对象PreparedStatement -[记住的]
ps = conn.prepareStatement(sql);
return 0;
}//end of init public int action() throws Throwable {
//4.执行前对不确定的sql数据进行赋值
ps.setString(1, "产品");
ps.setString(2, "设计产品"); //5.返回受影响的行数
int rows = ps.executeUpdate();
System.out.println("受影响的行数"+ rows);
return 0;
}//end of action public int end() throws Throwable {
//6.关闭连接
conn.close();
return 0;
}//end of end public static void main(String[] args) throws Throwable {
// 模拟lr一下执行
Jdbc_Update test = new Jdbc_Update();
test.init();
test.action();
test.end(); } }
java_jdbc方法
这是在loadrunner中的模拟执行
注意:如果要参数化 ,使用的是< > 不是{ }
/*
* LoadRunner Java script. (Build: _build_number_)
*
* Script Description:
*
*/ import lrapi.lr;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement; public class Actions
{ String user = "root";
String password = "123456";
String url = "jdbc:mysql://localhost:3306/oa?useUnicode=true&characterEncoding=utf8";
String sql = "insert into itcast_role (name, description) values (?,?)";
//定义成全局变量
PreparedStatement ps;
Connection conn; public int init() throws Throwable {
//1.注册mysql驱动
Class.forName("com.mysql.jdbc.Driver");
//2.通过url,user,password建立mysql连接,返回Connection的对象
//第三个getConnection - 记住的
conn = DriverManager.getConnection(url, user, password);
//3.对sql进行预编译,返回一个编译过的sql对象PreparedStatement -记住的
ps = conn.prepareStatement(sql);
return 0;
}//end of init public int action() throws Throwable {
//---------事务action() --判断开始--------- lr.start_transaction("insert-1"); ps.setString(1, "<dataP>");
ps.setString(2, "<dataP>"); //5.返回受影响的行数
int rows = ps.executeUpdate();
//---------注释掉打印免得浪费压测资源---------
// System.out.println("受影响的行数"+ rows); //因为上面一行受影响的行数,返回的是布尔函数 是就True 不是就false “==1表示相等”所以这样判断就可以了
if(rows == 1){ lr.end_transaction("insert-1", lr.PASS); }else{ lr.end_transaction("insert-1", lr.FAIL); } return 0;
}//end of action public int end() throws Throwable {
//6.关闭连接
conn.close();
return 0;
}//end of end
}
loadrunner_jdbc
这是loadrunner的运行日志
Virtual User Script started at : 2019-03-30 17:44:02
Starting action vuser_init.
Ending action vuser_init.
Running Vuser...
Starting iteration 1.
Starting action Actions.
Notify: Transaction "insert-1" started.
Notify: Transaction "insert-1" ended with "Pass" status (Duration: 0.0214).
Ending action Actions.
Ending iteration 1.
Ending Vuser...
Starting action vuser_end.
Ending action vuser_end.
Vuser Terminated.
log
附 参数化
——> query 查询数据库压测脚本 https://www.cnblogs.com/zhenyu1/p/10628822.html
Update类型_JDBC的方法_JAVA方法_Loadrunner脚本的更多相关文章
- Query类型_JDBC的方法_JAVA方法_Loadrunner脚本
数据库查询压力测试脚本 jdbc_java_查询类型接口测试 package com.test; import java.sql.Connection; import java.sql.DriverM ...
- zendstudio 声明变量类型,让变量自动方法提示
zendstudio 行内注释, 显式声明变量类型,让变量自动方法提示 $out = []; /* @var $row \xxyy\SizeEntity */ foreach ($rows[ 'lis ...
- paip。java 高级特性 类默认方法,匿名方法+多方法连续调用, 常量类型
paip.java 高级特性 类默认方法,匿名方法+多方法连续调用, 常量类型 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http ...
- SpringMVC提交数据遭遇基础类型和日期类型报400错误解决方法
使用SpringMVC开发的时候,页面如果有日期格式的数据,后台接受也是java.util.Date,则报告400错误 .下面是解决方案的演示示例: 这个是实体类,里面createDate就是java ...
- JavaScript中判断整字类型最简洁的实现方法
这篇文章主要介绍了JavaScript中判断整字类型最简洁的实现方法,本文给出多个判断整数的方法,最后总结出一个最短.最简洁的实现方法,需要的朋友可以参考下 我们知道JavaScript提供了type ...
- String 类型equals方法和int == 方法效率比较
最近写了一个递归方法,在进行比较判断的时候,因为都是integer类型,而integer类型在大于127或者小于-128时会在新建一个,这是因为integer类型的拆装箱机制, 之前没有考虑过equa ...
- 书写 sql 中关于 update 多表联合更新的方法
SQL Update多表联合更新的方法(1) sqlite 多表更新方法//----------------------------------update t1 set col1=t2.col1fr ...
- 170823、SQL Update多表联合更新的方法
SQL Update多表联合更新的方法 (1) sqlite 多表更新方法 update t1 set col1=t2.col1 from table1 t1 inner join table2 t2 ...
- 【js实例】Array类型的9个数组方法,Date类型的41个日期方法,Function类型
前文提要:[js实例]js中的5种基本数据类型和9种操作符 Array类型的9个数组方法 Array中有9个数组方法: 1.检测数组 2.转换方法 3.栈方法 4.队列方法 5.冲排序方法6.操作方法 ...
随机推荐
- RabbitMQ镜像模式双节点部署时故障转移过程中队列中消息的状态
场景 现有节点Node1和Node2,建立Exchange:yu.exchange,创建队列yu1.queue镜像队列master位于Node1,yu2.queue镜像队列位于Node2,使用topi ...
- ubuntu配置telnet服务
1.安装xinetd 以及telnetd #:~$ sudo apt-get install xinetd telnetd 2.配置文件(若文件不存在就手动添加文件和相应配置信息) 1): #:~$ ...
- Android 把url生成二维码并贴到给定的底图上
主要是用到了com.google.zxing jar包生成二维码的功能,这个jar包需要自己接下载 直接上代码 public static Bitmap CreateBinaryCodeImageBy ...
- Oracle插入(insert into)
Oracle插入(insert into) 转载:http://www.oraclejsq.com/article/010100199.html Oracle对表数据的插入是使用insert命令来执行 ...
- Navicat Premium 12 激活
链接:https://pan.baidu.com/s/1R4WB2JjKd0UYnN00CpUPSA 提取码:e3wy (破解工具及软件安装包) 破解流程:https://www.jianshu.co ...
- SQL中的CONVERT();cast()函数
SQLSERVER中CONVERT函数格式: CAST (expression AS data_type) 参数说明: expression:任何有效的SQLServer表达式. AS:用于分隔两个参 ...
- 使用VMware安装CentOS7
以前一直用的CentOS6,这次搭建一套CentOS7. 感觉和6还是有一些差异,在这边记录下. 一.选择典型(推荐): 二.选择安装程序光盘映像文件: 网上有几个版本,mini版,DVD版,不过mi ...
- MongoDB DBA 实践7-----MongoDB的分片集群操
一.使用Ranged Sharding对集合进行分片 从mongo连接到的shell中mongos,使用该sh.shardCollection()方法对集合进行分片. 注意: 必须已为集合所在的数据库 ...
- Oracle之plsql及游标
--1.赋值 --:= 赋值 declare var_name ) :='&请输入名字';--&是一个提示输入的特殊符号,会打开一个输入框 var_age ) :='&请输入年 ...
- nexus3使用docker运行/创建docker私有仓库/maven私有仓库
version: '3.2' services: nexus3: container_name: nexus3 hostname: nexus3 image: sonatype/nexus3:3.14 ...