小编Gra*_*ant的帖子

Android Spinner:在初始化期间避免onItemSelected调用

我用a Spinner和a 创建了Android应用程序TextView.我的任务是在TextView的Spinner下拉列表中显示所选项目.我在onCreate方法中实现了Spinner,所以当我运行程序时,它会显示一个值TextView(在从下拉列表中选择一个项目之前).

我只想在从下拉列表中选择一个项目后才在TextView中显示该值.我该怎么做呢?

这是我的代码:

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.TextView;

public class GPACal01Activity extends Activity implements OnItemSelectedListener {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        Spinner spinner = (Spinner) findViewById(R.id.noOfSubjects);

        // Create an ArrayAdapter using the string array and a default spinner layout
        ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,R.array.noofsubjects_array, android.R.layout.simple_spinner_item);
        // Specify the layout …
Run Code Online (Sandbox Code Playgroud)

android android-layout android-spinner

134
推荐指数
9
解决办法
8万
查看次数

防止Java程序中的SQL注入攻击

我必须在我的java程序中添加一个语句来更新数据库表:

String insert =
    "INSERT INTO customer(name,address,email) VALUES('" + name + "','" + addre + "','" + email + "');";
Run Code Online (Sandbox Code Playgroud)

我听说这可以通过SQL注入来利用,如:

DROP TABLE customer; 
Run Code Online (Sandbox Code Playgroud)

我的程序有一个Java GUI,并从中检索所有名称,地址和电子邮件值Jtextfields.我想知道DROP TABLE customer;黑客如何将以下代码()添加到我的插入语句中,以及如何防止这种情况.

java mysql sql sql-injection

12
推荐指数
4
解决办法
3万
查看次数

如何在Django中添加Search_fields

我尝试使用python在Django中添加搜索字段.以下是我使用过的代码.

# admin.py file

from django.db import models
from blog.models import Blog
from django.contrib import admin
admin.site.register(Blog)

class Blog(models.Model):
    title = models.CharField(max_length=60)
    body = models.TextField()
    created = models.DateTimeField("Date Created")
    updated = models.DateTimeField("Date Updated")
    def __unicode__(self):
        return self.title

class Comment(models.Model):
    body = models.TextField()
    author = models.CharField(max_length=60)
    created = models.DateTimeField("Date Created")
    updated = models.DateTimeField("Date Updated")
    post = models.ForeignKey(Blog)
    def __unicode__(self):
        return self.body

class CommentInline(admin.TabularInline):
    model = Comment


class BlogAdmin(admin.ModelAdmin):
    list_display = ('title','created', 'updated')
    search_fields = ['title','body']
    list_filter = ('Date Created','Date Updated')
    inlines …
Run Code Online (Sandbox Code Playgroud)

python django django-admin

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

如何在OSGi环境中为log4j2 JUL适配器设置系统属性

我想在OSGi环境中使用log4j2 JUL适配器.所以我直接用log4j2 OSGi包,并提到在设置我的自定义OSGi包的一个下面的系统属性在这里:

System.setProperty("java.util.logging.manager", "org.apache.logging.log4j.jul.LogManager");
Run Code Online (Sandbox Code Playgroud)

看起来这个系统属性没有设置,因为来自Java util框架的日志不会成为appender.

我正在使用的OSGi框架是Eclipse Equinox.

我在哪里可以设置此系统属性以与OSGi一起使用?

编辑:

据我所知,这个问题是在JVM启动时非常乞求所需的属性即java.util.logging.manager设置为默认值,因此在OSGi环境中设置它是无效的,即使我们不能使用-D选项设置此属性,因为log4j2 OSGi包没有暴露给类路径,因此发生了类未找到异常.

任何帮助都非常感谢这件事.

java logging osgi log4j log4j2

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

Android:调用另一个应用程序的活动

我有两个Android应用程序,假设它们是"A"和"B","A"有五个活动,我想从按钮点击事件"B"调用它的特定活动.我测试了这种从另一个应用程序调用的方法:

Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("com.testapp.ws");
startActivity(LaunchIntent);
Run Code Online (Sandbox Code Playgroud)

"com.testapp.ws"是包名"A".

这从其第一个活动再次运行"A"而不是从特定活动.如何调用A的指定活动?

android android-activity

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

Hibernate 4.1.9:我需要哪些jar文件?

我开始从" 简单步骤中的Hibernate 3.2 "一书中学习Hibernate框架,但是我下载了最新版本的Hibernate 4.1.9.根据这本书,我们需要在类路径中添加许多必需的罐子

  • Anttr-2.7.6.jar
  • asm.jar
  • ASM-attrs.jar
  • CGLIB的2.1.3.jar
  • 公地集合-2.1.1.jar
  • 共享记录-1.0.4.jar
  • ...等等

但我找不到新版本中所有必需的罐子.那么如果不换旧版本我该怎么办?我只需要在必需的文件夹中添加罐子,可以任何一个请告诉我我应该添加类路径(4.1.9版本)的罐子.这个问题可能很傻,但我是初学者而且我被困在这里.请帮我.谢谢!

java hibernate

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

如何使用log4j2 Commons Logging Bridge

我想使用log4j2 Commons Logging Bridge with commons 1.2.我尝试使用如下内容:

import org.apache.logging.log4j.jcl.LogFactoryImpl;

public class MyClass{

    private static Log log = LogFactoryImpl.getLog(DropinsBundleDeployer.class);
         .
         .
         .
    log.error("Error occured", e);
}
Run Code Online (Sandbox Code Playgroud)

但是当我运行代码时,我遇到了问题并且看不到任何日志:

log4j:WARN Please initialize the log4j system properly.
Run Code Online (Sandbox Code Playgroud)

但是log4j2.xml文件位于类路径中.如何使用log4j2正确使用commons logging 1.2?

java logging log4j apache-commons log4j2

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

如何仅限某些选定字符的Android编辑文本字段

有没有办法限制用户只允许在Android layout.xml中键入一些选定的字符集(例如:A或B或C或D)

android android-layout

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

Log4j2 api在OSGi环境中找不到Log4j2核心

我正在尝试使用log4j2 OSGi包,但似乎log4j2 api在OSGi环境中找不到log4j2核心.我不断得到以下异常:

ERROR StatusLogger Log4j2 could not find a logging implementation. Please add log4j-core to the classpath. Using SimpleLogger to log to the console
Run Code Online (Sandbox Code Playgroud)

我发现在很少的地方讨论了同样的例外,但我仍然无法弄清楚这个问题.Isuspect我遇到了这个问题,因为log4j2 api无法在log4j2核心的META-INF目录中找到log4j-provider.properties.有什么线索为什么我得到这个例外,我该如何纠正这个问题?(如果有人有正确的pom文件来添加log4j依赖项和捆绑请与我分享)

这些是我使用的依赖项

    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>2.2</version>
    </dependency>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>2.2</version>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

我使用apache felix作为bundle插件.发生此错误的原因是log4j2-core的META-INF内部的资源特别是log4j-providoer.properties文件对log4j api不可见.

谢谢!

java logging osgi log4j log4j2

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

Android:如何删除另一个包中的共享首选项

在我的Android应用程序中,我编码读取另一个Android应用程序的共享数据,然后从共享首选项中删除该数据.我的代码如下:

try {

     con = createPackageContext("com.testapp.ws", 0);
     SharedPreferences pref = con.getSharedPreferences("demopref", Context.MODE_PRIVATE);
     ipAdr = pref.getString("demostring", "No Value");
     pref.edit().remove("demopref").commit();
   }
Run Code Online (Sandbox Code Playgroud)

这显示以下错误:

06-12 11:52:07.400: E/ApplicationContext(3587): Couldn't rename file /data/data/com.testapp.ws/shared_prefs/demopref.xml to backup file /data/data/com.testapp.ws/shared_prefs/demopref.xml.bak
Run Code Online (Sandbox Code Playgroud)

我在我的其他应用程序中使用此方法来生成共享数据

 public void shareData(){
    String strShareValue = ip;
    SharedPreferences prefs = getSharedPreferences("demopref",Context.MODE_WORLD_READABLE);
    SharedPreferences.Editor editor = prefs.edit();
    editor.putString("demostring", strShareValue);
    editor.commit();
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点 ?有没有什么可以添加清单文件?

谢谢!

android android-emulator android-intent

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