小编MWi*_*ner的帖子

如何在MacOS上重启PostgreSQL服务器?

我尝试了以下操作但失败了

bash-3.2$ pg_ctl restart
pg_ctl: no database directory specified and environment variable PGDATA unset
Run Code Online (Sandbox Code Playgroud)

我正在使用Macbook Pro并且不记得我的数据存储的目录,因此也无法设置PGDATA,有没有办法重新启动Postgres而不会丢失数据?

谢谢

postgresql macos

17
推荐指数
3
解决办法
2万
查看次数

发送广播UDP但不在其他Android设备上接收

我正在尝试开发一个发送一些广播消息的应用程序,并从其他Android设备接收一些答案.我在从其他设备接收UDP消息时遇到一些麻烦.我应该提一下,这段代码适用于Gingerbread,但是在JellyBean上它不再起作用了,我不知道可能是什么问题.

这是我发送广播消息的地方(我知道其他设备在端口5000上侦听):

 private void sendUDPMessage(String msg) {

    try {
        DatagramSocket clientSocket = new DatagramSocket();

        clientSocket.setBroadcast(true);
        InetAddress address = InetAddress.getByName(Utils.getBroadcastAddress());

        byte[] sendData;

        sendData = msg.getBytes();
        DatagramPacket sendPacket = new DatagramPacket(sendData,
                sendData.length, address, 5000);
        clientSocket.send(sendPacket);

        clientSocket.close();
    } catch (Exception e) {
        e.printStackTrace();
    }

}
Run Code Online (Sandbox Code Playgroud)

这是我收到它的地方:

private void start_UDP()
{
    try {
            serverSocketUDP = new DatagramSocket(5000);
        }
    catch (Exception e) {

        Log.i(LOGTAG, "Exception opening DatagramSocket UDP");
    }

    final byte[] receiveData = new byte[1024];


    while(runningUDP) {
        Log.d(LOGTAG, "Waiting for Broadcast request in ServerUDP.");

        final …
Run Code Online (Sandbox Code Playgroud)

android udp broadcast

17
推荐指数
1
解决办法
3万
查看次数

基于Java的微控制器?

我一直在研究微控制器,并想知道它们中的大多数是否基于C/C++?我非常精通java,并且想问你们,如果有人知道我可以研究一个性价比很高的基于java的微控制器.

感谢所有答案!

microcontroller arduino jarduino

16
推荐指数
3
解决办法
2万
查看次数

使用Java控制Arduino

我希望用Java程序打开和关闭LED.我在大约5分钟内完成了C#中的项目,但在Java中似乎更具挑战性.我让Arduino等待1或0写入COM端口,并根据它改变LED.我用于Arduino的代码如下.

int LedPin = 13;
char data;

void setup()
{
    Serial.begin(9600);
    pinMode( LedPin , OUTPUT );
}

void loop()
{
    data = Serial.read();
    if (Serial.available() > 0)
    {
        if(data == '1' )
        {
            digitalWrite(LedPin,HIGH);
        }
        else if(data == '0' )
        {
            digitalWrite(LedPin,LOW);
        }
    }
    else
        if (Serial.available()<0)
        {
            digitalWrite(LedPin,HIGH);
            delay(500);
            digitalWrite(LedPin,LOW);
            delay(500);
        }
}
Run Code Online (Sandbox Code Playgroud)

我如何使用Java应用程序执行此操作?

java eclipse arduino jarduino

15
推荐指数
3
解决办法
6万
查看次数

为什么JPA不支持java.time.Instant?

我认为这java.time.Instant是将日期存储到数据库中的最佳选择:它最有可能是TIMESTAMP,并且您不依赖于时区,它只是当时的一个时刻.

JPA支持LocalDate,LocalTime,LocalDateTime等,但不是即时.当然,你可以使用AttributeConverterJadira这样的一个或一些库,但为什么它不支持开箱即用?

java jpa java.time.instant

15
推荐指数
1
解决办法
4837
查看次数

如何禁用表格"是否要将安装程序移动到废纸篓?" 安装完成后

我使用pkgbuild productbuild来构建安装程序.但是,安装在OS X 10.12 Sierra上,安装完成后,我会看到"您是否要将安装程序移动到废纸篓?要将此包和磁盘映像保留在当前位置.请单击"保留".

我想禁用该表.怎么做?

有没有人有关于这种新行为的更多信息?

是否要将安装程序移至废纸篓?

installer operating-system productbuild pkgbuild macos-sierra

14
推荐指数
0
解决办法
789
查看次数

使用OpenEJB构建独立的可执行JAR

我正在构建一个CLI工具,它集成了几个EJB模块.出于这个原因,我需要构建一个fat jar,然后作为独立的应用程序执行.

但是,使用以下堆栈跟踪执行此操作(注意:fat jar与其位于同一目录中)失败:java -jarconf/openejb.xmlfat jar

INFORMATION - PersistenceUnit(name=demo, provider=org.hibernate.jpa.HibernatePersistenceProvider) - provider time 2706ms
INFORMATION - Jndi(name="java:global/DemoMain/demo-shade-1.0-SNAPSHOT/MEJB!javax.management.j2ee.ManagementHome")
INFORMATION - Jndi(name="java:global/DemoMain/demo-shade-1.0-SNAPSHOT/MEJB")
INFORMATION - Jndi(name="java:global/DemoMain/demo-shade-1.0-SNAPSHOT/openejb/Deployer!org.apache.openejb.assembler.Deployer")
INFORMATION - Jndi(name="java:global/DemoMain/demo-shade-1.0-SNAPSHOT/openejb/Deployer")
INFORMATION - Jndi(name="java:global/DemoMain/demo-shade-1.0-SNAPSHOT/openejb/ConfigurationInfo!org.apache.openejb.assembler.classic.cmd.ConfigurationInfo")
INFORMATION - Jndi(name="java:global/DemoMain/demo-shade-1.0-SNAPSHOT/openejb/ConfigurationInfo")
INFORMATION - Jndi(name="java:global/DemoMain/demo-shade-1.0-SNAPSHOT/DemoServiceImpl!com.github.rzo1.service.DemoService")
INFORMATION - Jndi(name="java:global/DemoMain/demo-shade-1.0-SNAPSHOT/DemoServiceImpl")
INFORMATION - Existing thread singleton service in SystemInstance(): org.apache.openejb.cdi.ThreadSingletonServiceImpl@557c8e7e
INFORMATION - Closing DataSource: demoDS
INFORMATION - Closing DataSource: demoDSNonJTA
Exception in thread "Thread-0" java.lang.RuntimeException: org.apache.openejb.OpenEjbContainer$AssembleApplicationException: javax.enterprise.inject.spi.DeploymentException: couldn't start owb context
       at com.github.rzo1.DemoMain.run(DemoMain.java:116)
       at java.lang.Thread.run(Thread.java:745)
Caused …
Run Code Online (Sandbox Code Playgroud)

java ejb maven openejb maven-shade-plugin

14
推荐指数
1
解决办法
778
查看次数

如何在Mac OS上卸载JDK?

伙计们 - 我在尝试从我的MAC卸载JDK时面临挑战(macOS High Sierra版本10.13.4 - 17E199).我安装了两个JDK实例,我想卸载它们.

我按照此页面上列出的步骤操作:https://docs.oracle.com/javase/8/docs/technotes/guides/install/mac_jdk.html

我试图在/ Library/Java/JavaVirtualMachines目录中运行此命令,该目录抛出一个我没有权限的错误.

rm -rf jdk1.8.0_06.jdk
Run Code Online (Sandbox Code Playgroud)

我是该机器的管理员,我不确定我还需要什么权限.我作为管理员和root用户尝试没有成功.

请分享您对此的看法.

java macos java-8 java-10

14
推荐指数
4
解决办法
2万
查看次数

连接池或数据源?我应该把它放在哪个JNDI?

在JNDI级别或Webapp级别连接池更有意义吗?例如,我可以简单地在javax.sql.DataSource创建:

<Context antiJARLocking="true">
  <Resource name="jdbc/myDataSource" 
    auth="Container"
    type="javax.sql.DataSource" 
    driverClassName="com.mysql.jdbc.Driver"
    url="jdbc:mysql://localhost/myDataSource" user="user" password="password" />
</Context>
Run Code Online (Sandbox Code Playgroud)

然后在Spring中配置池:

<bean id="myDataSource" class="com.mchange.v2.c3p0.DataSources"
  factory-method="pooledDataSource">
  <constructor-arg>
    <jee:jndi-lookup jndi-name="java:comp/env/jdbc/myDataSource" />
  </constructor-arg>
</bean>
Run Code Online (Sandbox Code Playgroud)

或者,我可以直接在JNDI本身配置池:

<Resource name="jdbc/myDataSource" 
  auth="Container"
  factory="org.apache.naming.factory.BeanFactory"
  type="com.mchange.v2.c3p0.ComboPooledDataSource" 
  driverClassName="com.mysql.jdbc.Driver"
  jdbcUrl="jdbc:mysql://localhost/myDataSource" 
  user="user" password="password"
  minPoolSize="3" 
  maxPoolSize="15" 
  maxIdleTime="5000"
  idleConnectionTestPeriod="300" 
  acquireIncrement="3" />
Run Code Online (Sandbox Code Playgroud)

离开这个春天:

<jee:jndi-lookup id="myDataSource" jndi-name="java:comp/env/jdbc/myDataSource" />
Run Code Online (Sandbox Code Playgroud)

在这两种情况下,myDataSource spring bean都是一个c3p0连接池数据源,但哪一个更好?我认为在JNDI中使用池是最有意义的,但缺点是你必须将c3p0 lib推送到servlet容器级别,这可能会导致与现有servlet冲突,如果它们当前使用不同的版本.但是,将它放在JNDI中意味着您的应用程序根本不必担心池化.你们都在想什么?

java tomcat jndi datasource connection-pooling

13
推荐指数
1
解决办法
3万
查看次数

如何处理Spring Security更新中的defaultRolePrefix ="ROLE_"从3.2.7到4.0.2.RELEASE

我的Spring Boot应用程序可以运行Spring Security 3.2.7.RELEASE.现在,我想将其更新为4.0.2.RELEASE.

经过几个小时的调试后,我发现Spring Security 4.0.2.RELEASE使用了 defaultRolePrefix="ROLE_"

org.springframework.security.access.expression.SecurityExpressionRoot.hasAnyAuthorityName(String prefix, String... roles) 方法

在我的应用程序中,我使用没有此前缀的角色,因此我得到了AccessDeniedException.

如何配置Spring Boot才能使用SecurityExpressionRoot.defaultRolePrefix=""

spring spring-security spring-boot

13
推荐指数
1
解决办法
3328
查看次数