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.操作方法 ...
随机推荐
- Linux Shell常用技巧(十一)
二十二. 交互式使用Bash Shell: 1. 用set命令设置bash的选项: 下面为set主要选项的列表及其表述: 选项名 开关缩写 描述 allexport -a 打开此开关, ...
- 初始化mysql数据库 /usr/bin/mysql_install_db执行时报错
错误描述: FATAL ERROR: please install the following Perl modules before executing /usr/bin/mysql_install ...
- Oracle 数据库备份和恢复配置
可能的失败及其解决方法 失败类型 我们坑你遇到的失败或错误分为两大类:物理和逻辑.物理错误一般是硬件错误或使用数据库的应用程序中的软件错误,而逻辑错误一般在终端用户级别(数据库用户和管理员). 按从轻 ...
- DBA手记(学习) - LOGMNR 简单而强大的工具
LOGMNR首先执行一个ddl(或dml)操作,以记录重做信息: SYS@ ora11g>conn scott/tigerConnected.SCOTT@ ora11g>alter sys ...
- crashes
iOS 僵尸对象调试 - 简书 iOS APP审核被拒的解决之道(2.1) - - ITeye博客 iOS应用崩溃日志分析 - CocoaChina 苹果开发中文站 - 最热的iPhone开发社区 最 ...
- c#网络加密传输
网上已经有很多测试,我就不多说了.先说说我的测试. 1.net framework 都应该合适. 2.RSACryptoServiceProvider类在.net core 下无法调用xml导出方法( ...
- #leetcode刷题之路31-下一个排列
实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列.如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列).必须原地修改,只允许使用额外常数空间. 以下 ...
- OpenStack(queens)最小化搭建记录——控制与计算共两个节点
境: 2台安装了centos7-minimal的主机 ip地址: 10.132.226.103/24 (controller) 10.132.226.104/24 (compute1) 1.配置主机名 ...
- MongoDB DBA 实践2-----常用语句与索引
一.mongodb常用语句 1.数据库database 1). 查看当前选择的数据库,默认是test 2).有则使用这个数据库,没有就创建 3).查看数据库,默认有admin.local和" ...
- IAR升级之后,编译stm32官方工程报错的解决办法
IAR升级之后,打开stm32官方例程,编译时提示如下错误: Error[Pe147]: declaration is incompatible with "__nounwind __int ...