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.操作方法 ...
随机推荐
- 在Java中使用Maven配置的版本信息
我们在使用maven开发一些项目的时候需要知道当前的版本状态,但版本状态储存在pom.xml文件中,可以采用以下2种方式进行获取: 1. 采用xml解析的方式去获取pom文件的{project.ver ...
- HDU 1561 The more, The Better(树形dp之树形01背包)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1561 The more, The Better Time Limit: 6000/2000 MS (J ...
- oracle 查看表空间以及剩余量
--1.查看表空间的名称及大小 SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size FROM dba_tabl ...
- linux内存管理---物理地址、线性地址、虚拟地址、逻辑地址之间的转换
linux内存管理---虚拟地址.逻辑地址.线性地址.物理地址的区别(一) 这篇文章中介绍了四个名词的概念,下面针对四个地址的转换进行分析 CPU将一个虚拟内存空间中的地址转换为物理地址,需要进行两步 ...
- Java常用修饰符总结
修饰符是用于限定类型以及类型成员申明的一种符号,可用于修饰类.变量和方法,分为访问修饰符和非访问修饰符.访问修饰符控制访问权限,不同的访问修饰符有不同的权限范围,而非访问修饰符则是提供一些特有功能. ...
- c++友元函数、友元类、友成员函数
友元函数:不是类成员函数,是一个类外的函数,但是可以访问类所有成员. class Point{ public: friend void fun(Point t);//友元函数 private: int ...
- Mysql-表的基本操作
一 存储引擎介绍 二 表介绍 三 创建表 四 查看表结构 五 数据类型 六 表完整性约束 七 修改表ALTER TABLE 八 复制表 九 删除表 一 .存储引擎介绍 存储引擎即表类型,mysql根据 ...
- Python-type函数使用
- 树莓3B+_Raspbian 源使用帮助
https://mirrors.ustc.edu.cn/help/raspbian.html Raspbian 源使用帮助 地址 https://mirrors.ustc.edu.cn/raspb ...
- Python 1.3 元组与文件
一 Python元组Tuple类型 元组T= (1, 2, 3, 4)是不可变类型,属于序列,但顶层元素不可变,仅支持count()和index()操作. -*- coding:UTF- -*- # ...