使用Play或Grails或任何其他JVM框架;
有没有一种方法(或者是什么方法),以充分编译生成的战争/ jar文件,这样的源代码可以被隐藏,而不会反编译的可能性?
或者甚至在编译之后,是否可以轻松地反编译并获取字符串和类?例如db connection等.
谢谢.
我有两个不同的同一实体"社区"对象
两个对象(社区和com)具有相同的值
Communty.java有以下变量:
private Integer communityId;
private String communityName;
private String description;
// many to many relationship
private Set<Faculty> faculties = new HashSet<Faculty>();
private Set<User> users = new HashSet<User>();
Run Code Online (Sandbox Code Playgroud)
我用同样的方法:
@Override
public boolean equals(Object obj) {
// TODO Auto-generated method stub
if(obj==null)
return false;
if(obj==this)
return true;
if(!(obj instanceof Community)) return false;
Community community = (Community)obj;
return community.getCommunityId() == this.getCommunityId();
}
Run Code Online (Sandbox Code Playgroud)
当我检查时community==com,它返回false ..为什么?我做错了什么?从数据库中检索这两个对象!
我会尽量做空.
需要多个线程来打开套接字(每个线程打开一个套接字)并发出HTTP请求.我是新线程的多线程,我不知道这是否可行,因为每个线程必须运行,直到请求完成(我认为).
[评论后编辑]
我不知道这是否可行,因为当前运行的线程可以在获取响应之前暂停.
谢谢你的帮助.
我创建了3个字段语言,国家,安装类型的表.当我写一个查询来打印每个字段中的最大出现值时,我遇到了一个奇怪的问题.任何人都可以说出原因.这是我的代码.
PreparedStatement ps1= null;
ps1 = conn.prepareStatement("desc Configuration");
ResultSet rs1=ps1.executeQuery();
while(rs1.next()) {
System.out.print(rs1.getString(1)+":");
PreparedStatement ps2= null;
ps2 = conn.prepareStatement("select ? from Configuration c1 "+
" group by language "+
" having count(*) >= all " +
" ( select count(*) from Configuration c2 "+
" group by language )");
ps2.setString(1,rs1.getString(1));
ResultSet rs2=ps2.executeQuery();
while(rs2.next())
System.out.print(rs2.getString(1));
System.out.println();
}
Run Code Online (Sandbox Code Playgroud)
我得到的输出是语言:语言但是我期待的输出是 语言:英语就是这样.如果我替换'?',我会得到以后的输出 在准备声明中使用语言.但是如果我给出相同的语言?我得到了我为ps2.setString提供的东西.
为什么会这样呢?有解决方案吗
我想用Java实现PMT功能(来自Excel).PMT功能的公式是:
(D7*D9/12)/(1-(1+D9/12)^(-(D11/12)*12))
Run Code Online (Sandbox Code Playgroud)
哪里:
例如
D7 = $1,00,000,
D9 = 10%,
D11 = 36
Run Code Online (Sandbox Code Playgroud)
这里PMT功能的输出即每月付款 $3,226.72
请任何人帮我在Java中计算这个函数值.
目前我正在研究一个程序,它解析一个文件并从每行中取出34-40个字符并将它们放入数据库中的一个表中,但每次我遇到长度小于34个字符的行时,我的程序吐出这个错误:
警告:常规错误:字符串索引超出范围:40
我仍然是Java的新手,所以需要帮助.这是我的代码的一部分:
try
{
fstream = new FileInputStream(filename);
DataInputStream in = new DataInputStream(fstream);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
PreparedStatement deleteFields = null;
String deleteTable = "DELETE FROM info WHERE VOLSER IS NOT NULL;";
deleteFields = conn.prepareStatement(deleteTable);
deleteFields.executeUpdate();
deleteFields.close();
logger.info(deleteTable);
PreparedStatement updateFields = null;
String[] qmarks = new String[linenumber];
//Adding data to the database
for(int i = 0; i < linenumber; i++)
{
String cust = in.readLine();
String subCust = cust.substring(34,40);
qmarks[i] = subCust;
String updateString = "REPLACE INTO …Run Code Online (Sandbox Code Playgroud) 这是我的代码.
在我的主.java文件中.
public void showQuiz (View view){
Username = (EditText) findViewById(R.id.Username);
String userId = Username.getText().toString();
String deviceId = Secure.getString(this.getContentResolver(),
Secure.ANDROID_ID);
//this intent is used to open other activity wich contains another webView
Intent intent = new Intent(this, Quiz.class);
Bundle bun = new Bundle();
bun.putString("userid",userId);
bun.putString("deviceid", deviceId);
intent.putExtras(bun);
startActivity(intent);
}
Run Code Online (Sandbox Code Playgroud)
这是Activity的.java文件中的内容.
package com.earn.egpt;
import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;
public class Quiz extends Activity {
private static final String url = "http://www.m.s-w-family.com/?subid=";
private static final String url2 = "&deid=";
@Override
public …Run Code Online (Sandbox Code Playgroud)