我在Google AppEngine(Python SDK)中有这个代码:
from string import maketrans
intab = u"ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ".encode('latin1')
outtab = u"aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn".encode('latin1')
logging.info(len(intab))
logging.info(len(outtab))
trantab = maketrans(intab, outtab)
Run Code Online (Sandbox Code Playgroud)
当我在交互式控制台中运行代码时我没有问题,但是当我在GAE中尝试它时,我收到以下错误:
引发ValueError,"maketrans参数必须具有相同的长度"ValueError:maketrans参数必须具有相同的长度INFO 2009-12-03 20:04:02,904 dev_appserver.py:3038]"POST/backendsavenew HTTP/1.1"500 - INFO 2009-12 -03 20:08:37,649 admin.py:112] 106 INFO 2009-12-03 20:08:37,651 admin.py:113] 53 ERROR 2009-12-03 20:08:37,653 init .py:388] maketrans参数必须具有相同的长度
我无法弄清楚为什么它的尺寸增加了一倍.带代码的python文件保存为UTF-8.
在此先感谢您的帮助.
我有一个叫技师的课
public class Technician {
private String empLName;
private String empFName;
private int empId;
//I skipped all setters and getters
}
Run Code Online (Sandbox Code Playgroud)
在其他类中,我检索所有技术人员名称并将其加载到数组列表中.
Technician empl = new Technician();
ArrayList <Technician> employees = new ArrayList<Technician>();
//...skip code related to database
// rs is ResultSet
while (rs.next()){
empl.setEmpFName(rs.getString("EMP_LNAME"));
empl.setEmpLName(rs.getString("EMP_FNAME"));
empl.setEmpId(rs.getInt("EMP_ID"));
employees.add(empl);
}
Run Code Online (Sandbox Code Playgroud)
当我调试时,我看到从数据库中检索正确的值.在while循环的第一次迭代中,我的empl对象获取数据库中第一个雇员的值,并将其存储在雇员ArrayList中.在第二次迭代中,雇员ArrayList中的第一个对象被第二个雇员的值覆盖.因此,我的ArrayList中有两名员工,姓氏相同.在第三次迭代中,同样的故事,员工ArrayList中的两名员工被数据库中第三名员工的价值覆盖.
如果有任何建议如何修复我的代码,我将不胜感激.谢谢,
我最近一直在看Go的goroutines,并认为在Java中有类似的东西会很好.据我所知,并行化方法调用的常用方法是执行以下操作:
final String x = "somethingelse";
new Thread(new Runnable() {
public void run() {
x.matches("something");
}
}).start();
Run Code Online (Sandbox Code Playgroud)
那不是很优雅.有没有更好的方法呢?我在项目中需要这样的解决方案,所以我决定围绕异步方法调用实现自己的包装类.
我在J-Go发布了我的包装类.但我不知道这是不是一个好的解决方案.用法很简单:
SampleClass obj = ...
FutureResult<Integer> res = ...
Go go = new Go(obj);
go.callLater(res, "intReturningMethod", 10); //10 is a Integer method parameter
//... Do something else
//...
System.out.println("Result: "+res.get()); //Blocks until intReturningMethod returns
Run Code Online (Sandbox Code Playgroud)
或者更简洁:
Go.with(obj).callLater("myRandomMethod");
//... Go away
if (Go.lastResult().isReady()) //Blocks until myRandomMethod has ended
System.out.println("Method is finished!");
Run Code Online (Sandbox Code Playgroud)
在内部,我正在使用一个实现Runnable的类,并做一些Reflection工作来获取正确的方法对象并调用它.
我想对我的小型库以及在Java中进行这样的异步方法调用的主题有所了解.安全吗?有没有更简单的方法?
我打算编写一个简单的文本查看器,我希望能够处理非常大的文件.我正在考虑使用Tie::File这个,并对线条进行分页.这是懒惰加载线条,还是一次加载所有线条?
我正在使用JNDI和Tomcat6来管理Mysql连接,我的Catalina/domain.com/ROOT.xml有:
<Resource name="jdbc/db" auth="Container" type="javax.sql.DataSource"
username="db1" password="somepass" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/db?autoReconnect=true" maxActive="15" maxIdle="3"
maxWait="5000" removeAbandoned="true" removeAbandonedTimeout="20" />
Run Code Online (Sandbox Code Playgroud)
我虽然autoReconnect将重新连接到数据库,但它没有,在大约8小时不活动后,我的应用程序吐出丢失的数据库错误连接.有任何想法吗?
谢谢,Fedor
我试图从我的.NET应用程序中使用REST API.这个API都是用JAVA编写的.我被要求通过HTTP标头传递身份验证凭据.如何通过HTTP标头传递"DATE","AUTHORIZATION"和"Accept"等身份验证凭据.
我可以使用.NET中的哪个类来完成此任务.谁能帮我这个?
所有的帮助将不胜感激.
Ajish.
在Windows和*nix机器上,Python通常较慢吗?Python似乎在我的Mac OS X机器上闪现,而它似乎在我的Window的Vista机器上运行得更慢.这些机器的处理能力相似,而vista机器的内存增加了1GB.
我在Mercurial中特别注意到这一点,但我认为这可能只是Mercurial在Windows上打包的方式.
我们都知道MATLAB提供标签完成了用作像MATLAB函数参数的文件名importdata,imread.我们如何为我们创建的功能做到这一点?
编辑:

显示当前目录中的文件和文件夹.
我想使用MTOM和Spring WS将大文件从服务器发送到客户端.我意识到这不是这类事情的最佳方法,但这是一项要求.我有MTOM设置,它适用于50mb左右的小文件.我遇到较大文件的内存不足错误,并通过更改不同的堆空间大小,我可以发送稍大的文件,但没有接近1GB.1GB是我的测试用例.如何将MTOM服务从服务器流式传输或分块到客户端?我使用Java 6更新17,Tomcat 6和Spring WS 1.5.7与SaajSoapMessageFactory.
我找到了使用jax-ws进行流式传输的示例,但我不确定如何将其合并到Spring WS端点中.