IDEA中单元测试使用Scanner控制台无法输入
今天使用IDEA,Junit使用Scanner控制台无法输入,我以为是代码的问题。于是把单元测试换成了main函数
1、使用单元测试
@Test
public void test()throws Exception{//从键盘输入用户信息,添加到day04_test01_bookstore库的users表中Scanner input = new Scanner(System.in);System.out.print("请输入用户名:");String username = input.next();System.out.print("请输入密码:");String password = input.next();System.out.print("请输入邮箱:");String email = input.next();//1、注册驱动Class.forName("com.mysql.jdbc.Driver");//2、获取连接Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test01_bookstore?useUnicode=true&characterEncoding=utf8", "root", "123456");//3、编写sqlString sql = "insert into users values(null,?,password(?),?)";//4、创建PreparedStatementPreparedStatement pst = conn.prepareStatement(sql);//此时的sql带?的//加入一步,设置?的值pst.setString(1, username);//1表示第1个?pst.setString(2, password);//2表示第2个?pst.setString(3, email);//3表示第3个?//5、执行sqlint len = pst.executeUpdate();System.out.println(len>0?"添加成功":"添加失败");//6、关闭pst.close();conn.close();input.close();
}
2、使用main函数
package Connection4;import org.junit.Test;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Scanner;/*** @author shkstart* @create 2021-08-24 13:35*/public class Test04 {public static void main(String[] args) throws Exception {Test04 test04 = new Test04();test04.test();}public void test() throws Exception {//从键盘输入用户信息,添加到day04_test01_bookstore库的users表中Scanner input = new Scanner(System.in);System.out.print("请输入用户名:");String username = input.next();System.out.print("请输入密码:");String password = input.next();System.out.print("请输入邮箱:");String email = input.next();//1、注册驱动Class.forName("com.mysql.jdbc.Driver");//2、获取连接Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test01_bookstore?useUnicode=true&characterEncoding=utf8", "root", "123456");//3、编写sqlString sql = "insert into users values(null,?,password(?),?)";//4、创建PreparedStatementPreparedStatement pst = conn.prepareStatement(sql);//此时的sql带?的//加入一步,设置?的值pst.setString(1, username);//1表示第1个?pst.setString(2, password);//2表示第2个?pst.setString(3, email);//3表示第3个?//5、执行sqlint len = pst.executeUpdate();System.out.println(len > 0 ? "添加成功" : "添加失败");//6、关闭pst.close();conn.close();input.close();}
}
那到底单元测试能不能使用Scanner呢,答案是能的
解决方法:
1、 打开IDEA安装根目录下的bin文件夹,找到idea.exe.vmoptions和idea64.exe.vmoptions这两个文件
2、用记事本或者EditPlus 或者直接在idea中编辑这两个文件
添加-Deditable.java.test.console=true
注意:是两个文件都要添加
idea.exe.vmoptions文件
idea64.exe.vmoptions文件
然后就可以输入了。
IDEA中单元测试使用Scanner控制台无法输入相关推荐
- scanner 获取控制台信息_关于java.util.scanner:如何使用Java中的Scanner类从控制台读取输入?...
如何使用Scanner类从控制台读取输入? 像这样: System.out.println("Enter your username:"); Scanner = input(); ...
- 通过代码创建一个文件a.txt 然后写一个方法,控制台循环输入内容,然后通过gbk的编码格式保存到 a.txt中(要求可以追加),直到输入exit结束 再写一个方法,要求用字符缓冲流读取a.tx
通过代码创建一个文件a.txt 然后写一个方法,控制台循环输入内容,然后通过gbk的编码格式保存到 a.txt中(要求可以追加),直到输入exit结束 再写一个方法,要求用字符缓冲流读取a.txt中的 ...
- vscode中控制台不能输入_vscode控制台不能输入怎么办
vscode控制台不能输入怎么办? VS Code 控制台不能输入的问题 最近想简单复习下之前的C++的东西,由于用的是Mac环境只能装VS Code,第一次用还是不太习惯,本想简单做下输入的测试,代 ...
- 在项目中单元测试是用来做什么的?
前言 再讲单元测试测什么之前,我们先了解下为什么需要要单元测试? 当编写项目的时刻,如果我们假设底层的代码是正确无误的,那么先是高层代码中使用了底层代码;然后这些高层代码又被更高层的代码所使用,如此往 ...
- 如何在RedHat8中使用快捷键打开控制台
如何在RedHat8中使用快捷键打开控制台 1.右键屏幕空白处.点击设置DisplaySettings 2.选择Keyboard,并将列表下拉至最后,看到一个"+"号 3添加快捷命 ...
- 解决IDEA中安装JREBEL插件控制台报JRebel-JVMTI [FATAL] Couldn‘t write to C:\Users\错误
解决IDEA中安装JREBEL插件控制台报JRebel-JVMTI [FATAL] Couldn't write to C:\Users\错误 问题 在写javaweb项目时,反复的开关 ...
- python处理回显_Python中getpass模块无回显输入源码解析
本文主要讨论了python中getpass模块的相关内容,具体如下. getpass模块 昨天跟学弟吹牛b安利Python标准库官方文档的时候偶然发现了这个模块.仔细一看内容挺少的,只有两个主要api ...
- Java学习笔记之[ 利用扫描仪Scanner进行数据输入 ]
/*********数据的输入********/ /**利用扫描仪Scanner进行数据输入 怎么使用扫描仪Scanner *1.放在类声明之前,引入扫描仪 import java.util.Scan ...
- 在可编辑表格EditorGrid中,我选择一行已输入的数据,点击删除按钮,该行数据将被删除,然后当我点击表单提交按钮时,已经被删除的那一行数据仍然被插入数据库中...
为什么80%的码农都做不了架构师?>>> 问题描述:在可编辑表格中,我选择一行已输入的数据,点击删除按钮,该行数据将被删除,然后当我点击表单提交按钮时,已经被删除的那一行数据仍 ...
- java输出流输入流的使用_Java中的IO流之文件输入输出流
Java中的IO流之文件输入输出流 1.文件流介绍 文件流是以字节为单位进行读写文件的,所以属于字节流,并且是低级流.文件流位于java.io包下. 输入输出流分别是FileInputSteam和Fi ...
最新文章
- 清华集训2014 day2 task1 简单回路
- python timeit计时_如何使用Python的timeit计时代码段以测试性能?
- 读书笔记 - 《吉卜力的伙伴们》
- Bootstrap全局css样式_代码
- Liunx 系统调优
- leetcode No.21 合并两个有序链表
- Spring官方都说废掉GuavaCache用Caffeine,你还不换?
- java list打乱排序_JAVA Collections.shuffle打乱列表
- 如何优雅地记录操作日志
- 什么是VB.NET?
- 千姿百态项目经理2——“缥缈”项目经理
- abaqus python提取楼层剪力_用Python提取ABAQUS中节点集合的反力
- 【Swift】401状态处理流程
- MATLAB2014b画极坐标散点图
- 亚马逊广告接口 amazon advertising
- android 头像球_【Android 界面效果44】Android之圆头像实例
- excel中使用VBA如何统计数据区域最后一行行号?
- 人脸识别技术在智慧城城市建设中的深度应用
- 源码分析教程5部曲之1——漫游C语言-杨振平-专题视频课程
- union和union all 的区别
热门文章
- JACK——PaintRobot Exercise6
- idea tomcat 发布web工程全过程
- 14.TCP/IP 详解卷1 --- DNS:域名系统
- 6. 隐藏 index.php
- 74. PHP 计数器
- 20180712 (函数,函数的返回值return,函数的参数以及实际运用)
- setTimeout 带参数调用问题
- keepalived+nginx双机热备+负载均衡
- oracle常用命令(比较常见好用)
- leetcode 名单 Insertion Sort List