小编Ste*_*Kuo的帖子

有没有办法编译隐藏源代码?

使用Play或Grails或任何其他JVM框架;

有没有一种方法(或者是什么方法),以充分编译生成的战争/ jar文件,这样的源代码可以被隐藏,而不会反编译的可能性?

或者甚至在编译之后,是否可以轻松地反编译并获取字符串和类?例如db connection等.

谢谢.

java grails groovy jvm playframework

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

比较Java中的两个对象

我有两个不同的同一实体"社区"对象

两个对象(社区和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 ..为什么?我做错了什么?从数据库中检索这两个对象!

java

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

java:线程新手.这可能吗?

我会尽量做空.

需要多个线程来打开套接字(每个线程打开一个套接字)并发出HTTP请求.我是新线程的多线程,我不知道这是否可行,因为每个线程必须运行,直到请求完成(我认为).

[评论后编辑]

我不知道这是否可行,因为当前运行的线程可以在获取响应之前暂停.

谢谢你的帮助.

java multithreading

0
推荐指数
1
解决办法
199
查看次数

Java中的PrepareStatement问题

我创建了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 jdbc

0
推荐指数
1
解决办法
351
查看次数

Java中的Excel PMT功能

我想用Java实现PMT功能(来自Excel).PMT功能的公式是:

(D7*D9/12)/(1-(1+D9/12)^(-(D11/12)*12))
Run Code Online (Sandbox Code Playgroud)

哪里:

  • D7 =财务金额
  • D9 =费率
  • D11 =期限

例如

D7 = $1,00,000,
D9 = 10%,
D11 = 36
Run Code Online (Sandbox Code Playgroud)

这里PMT功能的输出即每月付款 $3,226.72

请任何人帮我在Java中计算这个函数值.

java

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

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 arrays

0
推荐指数
1
解决办法
577
查看次数

getExtras()返回null

这是我的代码.

在我的主.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)

java android android-intent android-activity

0
推荐指数
1
解决办法
2977
查看次数