我正在研究java中的MUD.我每次打勾都会看到玩家输入,但是我正在使用Scanner阻止操作.我想要非阻塞输入.
我看过nio有一个Selector类的包,但是我不确定如何使用它System.in.我想,一旦我运行服务器,我肯定会需要它,但现在一切都是离线的.
我已经尝试过扩展主类Applet和重写keyDown,但这只是意味着在第一个之后不再接受输入.当然,我不再阻止任何东西了,但是没有更多的输入.keyDown我想,再也没有打过电话.
也许线程即使在执行阻塞操作时也可能被中断?
感谢您对此问题的任何见解.
我在新系统上安装了Java.我的C驱动器中的一些随机路径会自动为我的PATH变量设置.每当我尝试运行Java时,它都显示java.exe not found在错误的路径中!
我正在尝试PATH使用SET命令更改变量,但新路径只会与旧路径一起添加.我无法在系统上运行Java.
set PATH=%PATH%;C:\Program Files\Java\jdk1.7.0_71\bin
Run Code Online (Sandbox Code Playgroud)
设置后我也试过PATH在Windows环境变量列表中设置变量JAVA_HOME!
当我输入Java时cmd,我得到:
系统找不到文件C:\ ProgramData\Oracle\Java\javapath\java.exe.
此路径是旧的未知自动设置路径.
有没有办法运行Java!我正在使用Windows 8.
我正在开发一个包含这些场景的通用方法的类库:
上面的这两个功能已经实现,现在我的应用程序需要保存消息.
我的问题是,在SQL数据库中存储聊天对话的最佳方法是什么:
每次我点击发送,我都会在数据库中插入消息?
为每个用户创建一个列表,每次单击"发送"时,该消息都会保存在发送该消息的用户列表中.然后,如果用户断开连接,我将迭代消息列表,并为每个消息插入数据库中的所有消息.
还有其他解决方案吗?
我现在正在做的是以下内容.我有这个方法,它位于我的Hub类:
public void saveMessagetoDB(string userName, string message)
{
var ctx = new TestEntities1();
var msg = new tbl_Conversation {Msg = message};
ctx.tbl_Conversation.Add(msg);
ctx.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)
我saveMessagetoDB在客户端HTML文件中调用此方法,如下所示:
$('#btnSendMessage').click(function () {
var msg = $("#txtMessage").val();
if (msg.length > 0) {
var userName = $('#hUserName').val();
// <<<<<-- ***** Return to Server [ SaveMessagetoDB ] *****
objHub.server.saveMessagetoDB(userName, msg);
Run Code Online (Sandbox Code Playgroud) 我想在代码中提供的URL处获取声音文件并播放它(mp3格式为).我查看了一些与此问题相关的Stack Overflow问题,他们都说过mp3plugin.jar这样做了.
在Eclipse中,我在配置构建路径下将其添加为外部jar(因为它位于我的Downloads文件夹中,不确定它是否是最佳位置).我再次运行它,它仍然给我这个错误:
javax.sound.sampled.UnsupportedAudioFileException:无法从 Starter.main
上的javax.sound.sampled.AudioSystem.getAudioInputStream(未知来源)的输入流中获取音频输入流
(Starter.java:21)
这是代码:
public class Starter {
public static void main(String[] args) {
AudioInputStream din = null;
try {
URL url = new URL("http://c5.rbxcdn.com/2e6d33a5b3b1d8f250c395816ff9f145");
HttpURLConnection httpcon = (HttpURLConnection) url.openConnection();
InputStream bufferedIn = new BufferedInputStream(httpcon.getInputStream());
AudioInputStream in = AudioSystem.getAudioInputStream(bufferedIn);
AudioFormat baseFormat = in.getFormat();
AudioFormat decodedFormat = new AudioFormat(
AudioFormat.Encoding.PCM_SIGNED,
baseFormat.getSampleRate(), 16, baseFormat.getChannels(),
baseFormat.getChannels() * 2, baseFormat.getSampleRate(),
false);
din = AudioSystem.getAudioInputStream(decodedFormat, in);
DataLine.Info info = new DataLine.Info(SourceDataLine.class, decodedFormat);
SourceDataLine line = (SourceDataLine) AudioSystem.getLine(info); …Run Code Online (Sandbox Code Playgroud) 我有下表中的报告要求.我使用这些表创建了一个新数据库,并从实时数据库导入数据以进行报告.
报表参数是日期范围.我阅读了以下内容,发现DATE_CORRELATION_OPTIMIZATION可以通过使用seek而不是scan来更快地使查询工作.我做了必要的设置 - 仍然是查询使用相同的旧计划和相同的执行时间.需要进行哪些其他更改才能使查询使用日期关联?
注意:我使用的是SQL Server 2005
参考
SQL
--Database change made for date correlation
ALTER DATABASE BISourcingTest
SET DATE_CORRELATION_OPTIMIZATION ON;
GO
--Settings made
SET ANSI_NULLS ON
SET ANSI_PADDING ON
SET ANSI_WARNINGS ON
SET ARITHABORT ON
SET CONCAT_NULL_YIELDS_NULL ON
SET QUOTED_IDENTIFIER ON
SET NUMERIC_ROUNDABORT OFF
GO
--Test Setting
IF ( (sessionproperty('ANSI_NULLS') = 1) AND
(sessionproperty('ANSI_PADDING') = 1) AND
(sessionproperty('ANSI_WARNINGS') = 1) AND
(sessionproperty('ARITHABORT') = 1) AND
(sessionproperty('CONCAT_NULL_YIELDS_NULL') = 1) AND
(sessionproperty('QUOTED_IDENTIFIER') = 1) AND
(sessionproperty('NUMERIC_ROUNDABORT') = …Run Code Online (Sandbox Code Playgroud) 我在WildFly 10服务器上运行我的应用程序.我不希望将我的连接细节放在我的应用程序src代码上,因此我试图将它放在WildFly 10服务器本身.
但是我遇到了问题.
在[WILDFLY_HOME]\modules\system\layers\base\com\microsoft,我创建了以下目录sqlserver\main,并将我的JAR文件和我的XML文件放在主文件夹中.
我正在使用的JAR是sqljdbc.jar.
module.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!-- JDBC Drivers module.xml file to configure your JDBC drivers-->
<!-- SQL Server 2014 example -->
<module xmlns="urn:jboss:module:1.3" name="com.microsoft.sqlserver">
<resources>
<resource-root path="sqljdbc.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.transaction.api"/>
</dependencies>
</module>
Run Code Online (Sandbox Code Playgroud)
接下来[WILDFLY_HOME]\standalone\configuration,我修改了standalone.xml.在子系统数据源部分下,我添加了SQL Server的详细信息.
standalone.xml:
<subsystem xmlns="urn:jboss:domain:datasources:4.0">
<datasources>
<datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
<connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url>
<driver>h2</driver>
<security>
<user-name>sa</user-name>
<password>sa</password>
</security>
</datasource>
<datasource jndi-name="java:/TestDS" pool-name="TestDS" enabled="true" use-java-context="true">
<connection-url>jdbc:sqlserver://localhost\test:1433;databaseName=test</connection-url>
<driver>mssql</driver>
<security>
<user-name>sa</user-name>
<password>Password123!</password>
</security>
<pool> …Run Code Online (Sandbox Code Playgroud) 我想计算NULL一行中的值的数量.
例如:
Name Col1 Col2 Col3 Col4 | ansCol
abc null a@c.com null null | 3
bbc null null null null | 4
Run Code Online (Sandbox Code Playgroud)
在这个例子中,答案很简单:
SELECT *,
(CASE WHEN Name IS NULL THEN 1 ELSE 0 END +
CASE WHEN Col1 IS NULL THEN 1 ELSE 0 END +
CASE WHEN Col2 IS NULL THEN 1 ELSE 0 END +
CASE WHEN Col3 IS NULL THEN 1 ELSE 0 END +
CASE WHEN Col4 IS NULL THEN 1 ELSE …Run Code Online (Sandbox Code Playgroud) 在我们的应用程序中,我们以编程方式动态(见下文)使用自定义 UITabBarItem。我们使用 ImageAssets 来获得暗/亮正确的图像。但它不能 100% 工作:如果我们重新启动应用程序,那就没问题了。如果 iOS 切换到暗模式并且应用程序正在运行,图像将保持亮模式。想知道这是一个错误还是我现在可以设法让它工作......
UIImage *mImage = [UIImage imageNamed:@"tabBar1"];
UIImage *mImageSel = [UIImage imageNamed:@"tabBar1Sel"];
mImage = [mImage imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
mImageSel = [mImageSel imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
self.tabBarItem = [[UITabBarItem alloc] initWithTitle:nil image:mImage selectedImage:mImageSel];
UIEdgeInsets titleInsets = UIEdgeInsetsMake(-6, 0.0, -6.0, 0.0);
self.tabBarItem.imageInsets = titleInsets;
Run Code Online (Sandbox Code Playgroud)
没有显示错误信息...
首先,我是这个环境的新手.我以前开发过Java,但不是应用程序服务器.从来没有这样做过,我以前从未使用过JBoss或WildFly.
我已经能够设置和运行WildFly服务器,并访问它127.0.0.1:9990.当我部署我的.war文件时,服务器没有反应,我无法访问URL.
WildFly服务器确实声明我的部署成功并且处于活动状态,然后我尝试访问:127.0.0.1:8080/RECAPP-API/rest/message/test并且我得到404(找不到页面错误).
我正在使用Maven,所以首先,我的pom.xml:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.test.recapp.rest</groupId>
<artifactId>RECAPP-API</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
<version>3.0.6.Final</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jackson-provider</artifactId>
<version>3.0.6.Final</version>
</dependency>
</dependencies>
</project>
Run Code Online (Sandbox Code Playgroud)
我的JSONService.java:
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Response;
@Path("/message")
public class JSONService {
@GET
@Path("/{param}")
@Produces("application/json")
public Response printMessage(@PathParam("param") String msg) {
String result = "Restful example: …Run Code Online (Sandbox Code Playgroud) java ×4
sql-server ×4
wildfly ×2
chat ×1
input ×1
ios-darkmode ×1
ios13 ×1
javasound ×1
jboss ×1
maven ×1
messages ×1
mssql-jdbc ×1
optimization ×1
resteasy ×1
saas ×1
schema.org ×1
server ×1
signalr ×1
stdio ×1
t-sql ×1
textinput ×1
uitabbaritem ×1
wildfly-10 ×1
windows ×1
windows-8 ×1