小编bro*_*chb的帖子

在weblogic中使用外部属性文件

我正在将我之前在JBOSS中部署的J2ee应用程序部署到Weblogic 10.3.1.0中.我遇到了外部属性文件的问题.在Jboss中我可以将属性文件放入$ JBOSS_HOME/server/default/conf中,然后将它们加载到系统类路径中,我可以毫无问题地访问它们.我能够将共享库放入$ MIDDLEWAREHOME/user_projects/domains/mydomain/lib中,并将它们加载到系统类路径中,没有任何问题,但我无法加载属性文件.

有谁知道如何在Weblogic中包含外部属性文件?

谢谢,

java weblogic properties classpath java-ee

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

Oracle编号和varchar连接

我有一个连接两个表的查询.一个表的列为varchar类型,另一个表的类型为number.我已经在3个oracle数据库上执行了我的查询,并且看到了一些我希望可以解释的奇怪结果.在两个数据库中,类似于以下工作.

select a.col1, b.somecol 
from tableA a inner join tableB b on b.col2=a.col1;
Run Code Online (Sandbox Code Playgroud)

在此查询中,tableA.col1的类型为number,tableB.col2的类型为varchar.这在两个数据库中工作正常,但在第三个数据库中没有.在第三个我得到(ORA-01722)错误.在第三个我需要做的事情......

select a.col1, b.somecol 
from tableA a inner join tableB b on b.col2=to_char(a.col1);
Run Code Online (Sandbox Code Playgroud)

这适用于所有数据库.我的问题是为什么?以上是一个简化的查询,真正的查询稍微复杂一点,并检索大量数据,因此第一个版本要快得多.如果我能让它在所有环境中工作那就太棒了.

有谁知道为什么这可能在某些oracle数据库中工作而不是没有在数据类型上强制转换的其他数据库?是否存在能够实现此类行为的全局设置?

oracle performance join to-char ora-01722

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

jpa hibernate复合外键映射

我无法为某些实体设置jpa映射.我有如下定义的父实体.

@Entity
@Table(name="EIF_INSTANCE_HDR")
public class InstanceEntity implements Serializable{

private static final long serialVersionUID = 1L;

@Id
@GeneratedValue(generator="eif_inst_gen")
@SequenceGenerator(name="eif_inst_gen",sequenceName="EIF_INSTANCE_SEQ")
@Column(name = "EAIH_ID")
private Long eaihid;
@Column(name = "EAD_ID")
private Long eadid;

@OneToMany(targetEntity=InstanceNotifyEntity.class, mappedBy="instance",fetch=FetchType.EAGER, cascade = CascadeType.ALL)
private List<InstanceNotifyEntity> userDetails = new ArrayList<InstanceNotifyEntity>();
}
Run Code Online (Sandbox Code Playgroud)

然后,我有一个带有复合键的子实体,以及该表主键的外键,如下所示:

@Entity
@Table(name="EIF_INST_NOTIFIED")
public class InstanceNotifyEntity implements Serializable{

private static final long serialVersionUID = 1L;

@Id
@ManyToOne
@JoinColumn(name="EAIH_ID", referencedColumnName="EAIH_ID")
private InstanceEntity instance;

@Id
@Column(name="USER_ID")
private Long userId;
@Column(name="COMMENT_TXT")
private String commentText;
}
Run Code Online (Sandbox Code Playgroud)

我知道子实体是不正确的,但我不确定如何将其设置为具有复合PK.我知道我需要设置一个PK类,但是当一个字段是父类的外键时,我不知道该怎么做.一旦设置了,父母将如何引用子实体?

任何帮助表示赞赏.

java hibernate jpa

10
推荐指数
1
解决办法
2万
查看次数

在Java中运行时下载JAR文件

我想知道是否有可能在启动时有一个Java桌面应用程序,查看某个URL,看看是否需要更新,如果是这样,下载必要的JAR文件,并将它们添加到运行程序的类路径中.

如果旧的罐子在那里,它们不应该已经加载到类加载器中,此时应该是吗?是否有可能在加载w/out重启应用程序之前将它们换掉?

java jar classpath auto-update

8
推荐指数
2
解决办法
2489
查看次数

maven build with war and jar将奇怪的文物推送到内部回购

我有一个maven项目,我正在构建一个war文件,但我也在使用maven-jar-plugin在同一个项目中构建一个jar.

--DISCLAIMER--我知道这不是'正确'的方法,但是当将它分成一个jar项目和一个单独的war项目与一些第三方插件时,还会出现一些其他问题.

我看到了一些奇怪的行为.以下是我的项目结构.

warproject
-src
--main
---webapp
----WEB-INF
-----web.xml
---java
----com.test.myclass
-----test.java
-pom.xml
Run Code Online (Sandbox Code Playgroud)

当我构建这个项目时,我在目标目录中获得了正确的war和jar文件,但是在我的本地.m2 repo中发生了一些奇怪的事情.安装的war文件正确命名为war-jar-0.0.1-SNAPSHOT.war,但此文件的内容是我的jar文件的内容.如果我做反过来也会发生这种情况.即如果我设置我的项目来构建一个jar并使用maven-war-plugin来构建战争,我的目标目录中的档案是正确的,但我的本地仓库有jar文件,其中包含我的war文件的内容.下面是我正在使用的pom文件.

<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</groupId>
  <artifactId>war-jar</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>
<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <configuration>
                    <jarName>${project.artifactId}-${project.version}-client</jarName>
                </configuration>
                <executions>
                    <execution>
                        <id>make-a-jar</id>
                        <phase>package</phase>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
        <resources>
            <resource>
                <directory>src/main/java</directory>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
            </resource>
        </resources>
    </build>

</project>
Run Code Online (Sandbox Code Playgroud)

控制台输出如下,它显示jar正在上传为战争.

Installing /home/me/work/src/war-jar/target/war-jar-0.0.1-SNAPSHOT.jar to /home/me/.m2/repository/com/test/war-jar/0.0.1-SNAPSHOT/war-jar-0.0.1-SNAPSHOT.war
Run Code Online (Sandbox Code Playgroud)

--UPDATE我有这个工作,但我不得不改变我的'make-a-jar'执行的阶段来从包安装.这工作正常,上传了正确的工件,但我仍然感到困惑,为什么这会产生影响.显然,工件是在不同的生命周期阶段生成的,因此在项目的原始安装时不会生成,因此不会上载错误的文件.这似乎是一个"黑客",我想了解为什么这样做.

java maven-2 jar war

7
推荐指数
1
解决办法
6466
查看次数

ffmpeg c/c ++获取帧计数或时间戳和fps

我正在使用ffmpeg来解码C中的视频文件.我正在努力获得我正在解码的当前帧的计数或帧的时间戳.我已经阅读了很多帖子,展示了如何基于fps和帧时间戳计算估计帧数,但是我无法获得其中任何一个.

我需要的是:视频文件的fps,当前帧或帧的时间戳否(未计算)

我拥有:我能够获得视频的使用时间

pFormatCtx->duration/AV_TIME_BASE
Run Code Online (Sandbox Code Playgroud)

我正在计算当前处理它们的帧,并获得当前帧数,但这不会长期工作.我可以使用获取文件的总帧数

pFormatCtx->streams[currentStream->videoStream]->nb_frames
Run Code Online (Sandbox Code Playgroud)

我已经读过这可能不适用于所有流,虽然它已经适用于我尝试过的每一个流.

我已经尝试使用time_base.num和time_base.den值以及packet.pts,但我无法理解我从这些值中得到的值,所以我可能只需要更好地理解这些值是什么.

有没有人知道有关如何获取此值的示例的资源?

c c++ ffmpeg

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

android ffmpeg opengl es渲染电影

我试图通过NDK渲染视频,添加一些在sdk中不支持的功能.我使用FFmpeg解码视频,可以通过ndk编译,并以此为出发点.我已经修改了这个例子而不是使用glDrawTexiOES来绘制纹理我已经设置了一些顶点并且在其上面渲染纹理(opengl es渲染四边形的方式).

下面是我要渲染的内容,但创建glTexImage2D的速度很慢.我想知道是否有任何方法可以加快速度,或者给出加快速度的外观,例如尝试在背景中设置一些纹理并渲染预先设置的纹理.或者,如果有任何其他方法可以更快速地将视频帧绘制到android中的屏幕?目前我只能得到大约12fps.

glClear(GL_COLOR_BUFFER_BIT);
glEnableClientState(GL_VERTEX_ARRAY);
glEnableClientState(GL_TEXTURE_COORD_ARRAY);
glBindTexture(GL_TEXTURE_2D, textureConverted);

//this is slow
glTexImage2D(GL_TEXTURE_2D, /* target */
0, /* level */
GL_RGBA, /* internal format */
textureWidth, /* width */
textureHeight, /* height */
0, /* border */
GL_RGBA, /* format */
GL_UNSIGNED_BYTE,/* type */
pFrameConverted->data[0]);

glEnableClientState(GL_TEXTURE_COORD_ARRAY);
glTexCoordPointer(2, GL_FLOAT, 0, texCoords);
glVertexPointer(3, GL_FLOAT, 0, vertices);
glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_BYTE, indices);
glDisableClientState(GL_VERTEX_ARRAY);
glDisableClientState(GL_TEXTURE_COORD_ARRAY);
Run Code Online (Sandbox Code Playgroud)

编辑 我改变了我的代码只初始化gltextImage2D一次,并用glSubTexImage2D修改它,它对帧速率没有太大的改进.

然后,我修改了代码以修改NDK上的本机Bitmap对象.通过这种方法,我有一个后台线程运行,处理下一帧并填充本机端的位图对象.我认为这有潜力,但我需要提高将AVFrame对象从FFmpeg转换为本机位图的速度.下面是目前我用来转换的一种蛮力方法.有没有办法提高速度或优化转换?

static void fill_bitmap(AndroidBitmapInfo*  info, void *pixels, AVFrame *pFrame)
{
uint8_t *frameLine;

int  yy;
for (yy = …
Run Code Online (Sandbox Code Playgroud)

android ffmpeg opengl-es android-ndk

4
推荐指数
1
解决办法
7220
查看次数

数据库审计表

我有一个我正在使用的现有应用程序,并且客户已经为审计日志定义了他们想要的表结构.它包含以下列:

storeNo 
timeChanged
user 
tableChanged 
fieldChanged 
BeforeValue 
AfterValue
Run Code Online (Sandbox Code Playgroud)

通常我在每个表上都有简单的审计列,它们提供userChanged和timeChanged值.将写入这些表的应用程序是一个Java应用程序,并且通过jdbc在oracle数据库上进行调用.我的问题是获得前/后值的最佳方法是什么.我讨厌比较对象以查看填充此表的更改,这不会有效.如果一个更新中有多个列发生更改,则此新表将包含多个条目.或者有没有办法在oracle中这样做?过去其他人做了什么来跟踪变化而不是改变价值观?

java oracle audit

2
推荐指数
1
解决办法
2600
查看次数