我试图通过存储过程取出一个字段,我使用了以下查询.我的目标是获取多行,但只有当存在一行时才能成功执行结果.否则它会返回错误,如下所述.
delimiter ;;
drop procedure if exists Sample1;;
CREATE PROCEDURE Sample1(IN lft1 INT,IN rgt1 INT, OUT emp1 VARCHAR(20))
BEGIN
SELECT p.emp into emp1 FROM personnell p WHERE p.lft>lft1 and p.rgt < rgt1 LIMIT 10;
END;;
call Sample1(1,10,@emp);;
select @emp;
Run Code Online (Sandbox Code Playgroud)
MySQL said: Documentation
#1172 - Result consisted of more than one row
Run Code Online (Sandbox Code Playgroud)
注意
-----
Sample1--- procedure name;
emp -----selected field from table personnell
lft -----use to check the condition,it is also one of the field of table personnell
personnell------table …Run Code Online (Sandbox Code Playgroud) 我正在编写一个程序,在一个进程中创建多个线程。
我需要处理如果进程被某人使用kill -9信号或Ctrl + C从外部终止,我的程序应该在关闭之前执行一些操作,例如它应该将进程的状态更改为数据库中的中止。
我该如何处理?
我需要addShutdownHook()?或者还有其他更好的解决方案来解决我的问题吗?
我已经添加了 :
Runtime.getRuntime().addShutdownHook( new Thread() {
@Override
public void run() {
logger.info( "Running Shutdown Hook" );
//call some method
System.out.println( "Running Shutdown Hook" );
}
} );
Run Code Online (Sandbox Code Playgroud)
在我的主要方法中,但它似乎不起作用。
伙计们我正在开发Camera Application,这是我的第一个Android应用程序.
下面我正在添加我的应用程序截图我想要的.
第一视图:
在这里,点击右上角过滤器图标后,我想要一个下面的视图.
第二观点:
我不知道怎么能得到这种类型的观点.我如何将这种类型的视图设计成XML部分.
我读了更多的文章,比如如何在单个屏幕上打开多个表面视图预览,但我没有得到任何欣赏的解决方案.
最后选择任何过滤器预览后,我想要一个上面的图像类型视图.
表示选定的滤镜是预览应用到相机[Surfaceview预览].请提供任何类型的材料链接example.etc
伙计们,请帮助我.任何类型的帮助将不胜感激..):
提前致谢
基本上,我需要a b c(单独)
从一条线(每个之间有任意数量的空格)
"a" "b" "c"
Run Code Online (Sandbox Code Playgroud)
是否可以使用string.split执行此操作?
我从什么都试过split(".*?\".*?")来("\\s*\"\\s*").
后者工作,但它将数据拆分为数组的每个其他索引(1,3,5),其他索引为空""
编辑:
我希望这适用于任何数量/变化的字符,而不仅仅是a,b和c.(例如:"apple" "pie" "dog boy")
为我的特定问题找到了解决方案(可能效率最低):
Scanner abc = new Scanner(System.in);
for loop
{
input = abc.nextLine();
Scanner in= new Scanner(input).useDelimiter("\\s*\"\\s*");
assign to appropriate index in array using in.next();
in.next(); to avoid the spaces
}
Run Code Online (Sandbox Code Playgroud) 我有一个数组如下:
int[] array = {11, 14, 17, 11, 48, 33, 29, 11, 17, 22, 11, 48, 18};
Run Code Online (Sandbox Code Playgroud)
我想要做的是找到重复的值,并打印它们.
所以我这样做的方法是转换为ArrayList,然后Set使用streamon Set.
ArrayList<Integer> list = new ArrayList<>(array.length);
for (int i = 0; i < array.length; i++) {
list.add(array[i]);
}
Set<Integer> dup = new HashSet<>(list);
Run Code Online (Sandbox Code Playgroud)
然后我用a stream循环遍历它并使用打印值Collections.frequency.
dup.stream().forEach((key) -> {
System.out.println(key + ": " + Collections.frequency(list, key));
});
Run Code Online (Sandbox Code Playgroud)
当然,即使计数为1,它们也会打印出来.
我想加入,if(key > 1)但这是我想要的价值不是关键.
如何在此实例中获取值以仅在哪里打印value > 2.
我可以投入:
int check = …Run Code Online (Sandbox Code Playgroud) 我已经使用下面的代码来创建和填充数组,但是,当涉及到打印数组时,我没有得到我在使用Arrays.toString()函数时所期望的结果.
而不是打印
newArray: [2, 4, 6]
newArray: [8, 10, 12]
etc..
Run Code Online (Sandbox Code Playgroud)
它打印
newArray: [[I@15db9742, [I@6d06d69c, [I@7852e922, [I@4e25154f]
newArray: [[I@15db9742, [I@6d06d69c, [I@7852e922, [I@4e25154f]
etc..
Run Code Online (Sandbox Code Playgroud)
代码:
public static void main(String[] args) {
int[][] newArray = new int[4][3];
int number = 2;
for (int rowCounter = 0; rowCounter < newArray.length; rowCounter++) {
for (int colCounter = 0; colCounter < newArray[rowCounter].length; colCounter++) {
newArray[rowCounter][colCounter] = number;
number += 2;
}
System.out.println("newArray: " + Arrays.toString(newArray));
}
}
Run Code Online (Sandbox Code Playgroud)
任何有关这方面的帮助将非常感激.
这两种lambda创造方式有什么区别?为什么不编译第一个?
Predicate<Integer> predicate = Predicate.isEqual(0).or(Predicate.isEqual(1));
Run Code Online (Sandbox Code Playgroud)
给出:
错误:不兼容的类型:Predicate<Object>无法转换为Predicate<Integer> = Predicate.isEqual(0).or(Predicate.isEqual(1));
Predicate<Integer> pred21 = Predicate.isEqual(0);
Predicate<Integer> pred22 = pred21.or(Predicate.isEqual(1));
Run Code Online (Sandbox Code Playgroud)
这个工作.
我有以下双值列表:
items {9.0, 4.0, 16.0, -6.0, 5.0}
Run Code Online (Sandbox Code Playgroud)
我想找到最大值和最小值,为此我做了:
double max = items.stream().max(Comparator.comparing(String::valueOf)).get();
double min = items.stream().min(Comparator.comparing(String::valueOf)).get();
Run Code Online (Sandbox Code Playgroud)
我得到的结果是max=9.0和min=-6.0.我期待最大值16.0.后来,我换16.0了92.0,它起作用了; 它给了我max=92.0
你知道怎么解决这个问题吗?
在学习过程中,它已在我的计算机上安装了JDK,以便能够运行eXist数据库。此后,执行命令后,出现java -jar fileName.jar以下错误。
图形设备初始化失败:d3d,sw初始化QuantumRenderer时出错:找不到合适的管道java.lang.RuntimeException:java.lang.RuntimeException:初始化QuantumRenderer时出错:在com.sun.javafx.tk.quantum.QuantumRenderer上找不到合适的管道。 com.sun.javafx.tk.quantum.QuantumToolkit.init(QuantumToolkit.java:222)上的getInstance(QuantumRenderer.java:280)com.sun.javafx.tk.Toolkit.getToolkit(Toolkit.java:260)上的QuantumToolkit.init(QuantumToolkit.java:222) com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:158)上的.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:267)com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl .java:658)(位于com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:678))。javafx.application.LauncherImpl.lambda $ launchApplication $ 2(LauncherImpl.java:195)at java.base / java.lang.Thread.run(Thread.java:835)原因:java.lang.RuntimeException:初始化QuantumRenderer时出错:no在com.sun.javafx.tk.quantum.QuantumRenderer $ PipelineRunnable.run(QuantumRenderer.java:124)处的com.sun.javafx.tk.quantum.QuantumRenderer $ PipelineRunnable.init(QuantumRenderer.java:94)上找到合适的管道。 .. 1个以上线程“ main”中的异常java.lang.RuntimeException:在com.sun.javafx.application.PlatformImpl.startup的com.sun.javafx.tk.Toolkit.getToolkit(Toolkit.java:272)上找不到工具包(PlatformImpl.java:267)com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:158)com.sun.javafx.application.LauncherImpl。位于com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:678)的com.sun.javafx.application.LauncherImpl.lambda $ launchApplication $ 2(LauncherImpl.java:195)的startToolkit(LauncherImpl.java:658) java.base / java.lang.Thread.run(Thread.java:835)
Windows 10
java -version
Run Code Online (Sandbox Code Playgroud)
openjdk版本“ 12.0.2” 2019-07-16采用OpenJDK运行时环境
OpenJDK(内部版本12.0.2 + 10)采用OpenJDK 64位服务器VM
OpenJDK(内部版本12.0.2 + 10,混合模式,共享)
我必须删除项目中未使用的导入.以前我使用的是eclipse,但现在我正在使用STS.
在STS中," CTRL+ SHIFT+ o"无法删除未使用的导入.
java ×9
java-8 ×3
java-stream ×2
android ×1
arrays ×1
camera ×1
collections ×1
comparator ×1
currying ×1
eclipse ×1
generics ×1
java-12 ×1
javafx ×1
kill-process ×1
lambda ×1
mysql ×1
regex ×1
sigkill ×1
string ×1
surfaceview ×1