我有一个JPS,其中包含一个用户可以放置图像的表单:
<div class="photo">
<div>Photo (max 240x240 and 100 kb):</div>
<input type="file" name="photo" id="photoInput" onchange="checkPhoto(this)"/>
</div>
Run Code Online (Sandbox Code Playgroud)
我写过这个js:
function checkPhoto(target) {
if(target.files[0].type.indexOf("image") == -1) {
document.getElementById("photoLabel").innerHTML = "File not supported";
return false;
}
if(target.files[0].size > 102400) {
document.getElementById("photoLabel").innerHTML = "Image too big (max 100kb)";
return false;
}
document.getElementById("photoLabel").innerHTML = "";
return true;
}
Run Code Online (Sandbox Code Playgroud)
它可以很好地检查文件类型和大小.现在我想检查图像的宽度和高度,但我不能这样做.
我试过target.files[0].width
但我得到了undefined
.通过其他方式我得到0
.
有什么建议?
我正在学习强化学习和阅读萨顿的大学课程.除了经典的PD,MC,TD和Q-Learning算法之外,我还在阅读有关决策问题解决的政策梯度方法和遗传算法.我之前从未有过这个主题的经验,而且我很难理解何时应该优先选择一种技术.我有一些想法,但我不确定.有人可以简单解释或告诉我一个来源,我可以找到一些应该使用某些方法的典型情况吗?据我所理解:
更准确地说,我认为选择一种学习方法,程序员应该问自己以下问题:
但我不知道问题的这些细节如何影响学习方法的选择.我希望有些程序员已经对RL方法有一些经验,可以帮助我更好地理解他们的应用程序.
algorithm artificial-intelligence machine-learning markov-chains reinforcement-learning
private void downloadAllRelease(HttpServletRequest request,
HttpServletResponse response) {
LoginToken tok=getToken(request, response);
int size = 0;
try {
ArrayList<Release> releases = manager.getReleases(tok.getUsername);
ZipOutputStream out = new ZipOutputStream(response.getOutputStream());
for (int i=0; i<releases.size(); i++) {
size += releases.get(i).getFile().length;
out.putNextEntry(new ZipEntry(releases.get(i).getFilename()));
out.write(releases.get(i).getFile());
out.closeEntry();
}
response.setContentLength(size);
response.setContentType("application/force-download");
response.setHeader("Content-Disposition","attachment;filename=release.zip");
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
response.setContentLength()
reeeeally减慢下载速度.
如果我不使用它或在out.close()
一切仍然正常工作之后使用它,但下载速度会快得多.
有人可以解释我为什么以及是否有必要使用response.setContentLength()
?
有没有循环执行以下操作的更快方法?
n = 2;
m = 1000;
A = rand(n,m);
B = rand(n,m);
C = zeros(n*n,m);
for i = 1 : m
tmp = A(:,i) * B(:,i)';
C(:,i) = tmp(:);
end
Run Code Online (Sandbox Code Playgroud)
基本上我需要m
nxn
在A
和之间使用列方式矩阵乘法来获得矩阵B
.然后我需要这种矩阵的矢量化.
我创建了一个RMI连接,但我不知道如何在客户端结束或崩溃时通知服务器.我找到了unreferenced()方法,但它不起作用.任何的想法?
(服务器是多客户端,只有一种对象传递给客户端,但任何客户端都有不同的实例).
谢谢.
我想用Java实现一个能够与数据库交互的程序.我已经使用EJB做了类似的事情,但这次我需要它能够在没有应用程序服务器的情况下工作.到目前为止我所做的是(使用Eclipse):
persistence.xml
(在META-INF
文件夹中)MySQL JDBC Driver
库和persistence-api-1.0.2.jar
这是我的persistence.xml
:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="top" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>database.Match</class>
<class>database.Player</class>
<class>database.Tournament</class>
<properties>
<property name="hibernate.connection.provider_class" value="org.hibernate.connection.DriverManagerConnectionProvider"/>
<property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/top"/>
<property name="hibernate.connection.driver_class" value="org.hsqldb.jdbcDriver"/>
<property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
<property name="hibernate.connection.username" value="root"/>
<property name="hibernate.connection.password" value="root"/>
<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.hbm2ddl.auto" value="update"/>
</properties>
</persistence-unit>
</persistence>
Run Code Online (Sandbox Code Playgroud)
以下是我尝试使用的方法EntityManager
:
private static EntityManagerFactory factory;
private EntityManager entityManager;
public DBManager() {
factory = Persistence.createEntityManagerFactory("top");
entityManager = …
Run Code Online (Sandbox Code Playgroud) 我有一个功能,需要3个强制输入和1个可选:
f(A, B, C, X)
Run Code Online (Sandbox Code Playgroud)
我想以这种方式使用匿名函数
h = @(X)f(A,B,C,X)
Run Code Online (Sandbox Code Playgroud)
其中A, B, C
已经确定,这样我可以只是调用h(1)
和代码运行f(A,B,C,1)
,以及h()
运行f(A,B,C)
.我能够做到的唯一方法(如果我错了,请纠正我)正在使用varargin
.我定义
f(A,B,C,varargin)
Run Code Online (Sandbox Code Playgroud)
并使用
h = @(varargin)f(A,B,C,varargin)
Run Code Online (Sandbox Code Playgroud)
问题是当我直接调用时f(A,B,C,1)
,然后在我的函数内部varargin = {1}
.如果我打电话h(1)
,那么我有varargin = {{1}}
.我怎么能避免这种情况?有没有更好的方法来实现我想要的?
我正在使用JBoss 5使用Java EE开发一个Web项目.我的WebContent文件夹有一个.css文件,由所有JSP使用(放在WebContent的其他子文件夹中).我想禁止直接访问.css文件,但仍然可以在我的JSP中使用它.我试过了
<security-constraint>
<web-resource-collection>
<web-resource-name>Direct access to .css forbidden</web-resource-name>
<url-pattern>/Style.css</url-pattern>
</web-resource-collection>
<auth-constraint/>
</security-constraint>
Run Code Online (Sandbox Code Playgroud)
在web.xml描述符中,但这样JSP无法使用它.
有任何想法吗?