将String数组作为POST传递给PHP

我试图将一个字符串数组作为POST数据传递给PHP脚本但不确定该怎么做。 这是我到目前为止执行PHP脚本的代码: 我试图传递数组的地方: nameValuePairs.add(new BasicNameValuePair(“message”,message)); String [] devices = {device1,device2,device3}; nameValuePairs.add(new BasicNameValuePair(“devices”, devices));// <– Can't pass String[] to BasicNameValuePair callPHPScript("notify_devices", nameValuePairs); 调用PHP脚本: public String callPHPScript(String scriptName, List parameters) { HttpClient client = new DefaultHttpClient(); HttpPost post = new HttpPost(“http://localhost/” + scriptName); String line = “”; StringBuilder stringBuilder = new StringBuilder(); try { post.setEntity(new UrlEncodedFormEntity(parameters)); HttpResponse […]

Hibernate问题:外键必须与引用的主键具有相同数量的列

目标:我想将ImportJob中的importJobId作为分配表的id的外键,这样当我们有importJobId然后只有我们可以在分配时没有Job而没有任何分配。 ImportJob表的复合主键为[ORGID,IMPORTJOBTYPE],我试图在hibernate中创建外键关系 在Allocation.hbm.xml中没有运行并收到错误消息: Foreign key (FKB29B5F7366007086:ALLOCATIONS [importjobid])) must have same number of columns as the referenced primary key (IMPORTJOBMANAGMENT [ORGID,IMPORTJOBTYPE]) 这是我的ImportJob.hbm.xml文件 以下是bean类供参考: public class AllocationBean extends WorkbenchBeanBase { private static final Logger log = Logger.getLogger(AllocationBean.class); private Float allocations; private String importJobType; private long id; private long orgId; } public class ImportJobManagment implements Serializable { private […]

在Java中,如何在不生成String对象的情况下从HttpServletRequest标头中提取密码?

处理敏感数据(==密码)的常见Java安全准则建议不要使用String对象来存储数据,而是使用字节或字符数组。 我试图在HttpServlet处理程序中应用此指南。 特别是,我使用类似于基本身份validation的方法,其中凭据在标头中传入(这是一个GET请求,因此没有正文)。 我遇到的问题是,在没有生成String对象的情况下,似乎无法获取头数据,这违反了get-go的准则。 我已经彻底搜索了一个解决方案,但没有找到任何相关的讨论。 有没有人对此问题有任何见解? 注意:这是通过HTTPS进行的,因此这里没有连接安全问题。

将JSF标记与JSTL标记混合会产生奇怪的结果

我有这段代码: 如您所见,我仅在columnRendered为true时呈现该outputPanel。 好吧,有时会出现这种情况(仅用于测试以批准它应该做什么): 是的,所以它应该输入c:if并将columnRendered切换为false。 但事实并非如此,所以columnRendered永远是真的…… 你知道为什么吗?

无法将连接强制转换为oracle.jdbc.OracleConnection

为什么java.sql.Connection无法在下面的代码中强制转换为oracle.jdbc.OracleConnection? 我的主要目标是传递给Oracle连接新用户名并将其保存在例如’osuser’列的’SESSION’表中,因为我想跟踪数据库用户更改并在表中显示它。 @Repository public class AuditLogDAOImpl implements AuditLogDAO { @PersistenceContext(unitName=”myUnitName”) EntityManager em; @Resource(name = “dataSource”) DataSource dataSource; public void init() { try { Connection connection = DataSourceUtils.getConnection(dataSource); OracleConnection oracleConnection = (OracleConnection) connection; //Here I got cast exception! String metrics[] = new String[OracleConnection.END_TO_END_STATE_INDEX_MAX]; metrics[OracleConnection.END_TO_END_CLIENTID_INDEX] = “my_new_username”; oracleConnection.setEndToEndMetrics(metrics, (short) 0); java.util.Properties props = new java.util.Properties(); props.put(“osuser”, “newValue”); […]

Apache Avro:map使用CharSequence作为密钥

我正在使用Apache Avro 。 我的架构有地图类型: {“name”: “MyData”, “type” : {“type”: “map”, “values”:{ “type”: “record”, “name”: “Person”, “fields”:[ {“name”: “name”, “type”: “string”}, {“name”: “age”, “type”: “int”}, ] } } } 在编译模式之后,生成的Java类使用CharSequence作为Map MyData的键 。 在Map使用CharSequence作为键是非常不方便的,有没有办法在Apache Avro中为Map生成String类型键? PS 问题是,例如dataMap.containsKey(“SOME_KEY”)将返回false即使有那样的键,只是因为它是CharSequence 。 此外,使用现有密钥放置映射条目不会重新使用旧密钥。 这就是为什么我说使用CharSequence作为关键是不方便的。

如何在Java中创建圆角图像

我想制作一个圆角的图像。 图像将来自输入,我将使其圆角然后保存。 我使用纯java。 我怎样才能做到这一点? 我需要一个像这样的function public void makeRoundedCorner(Image image, File outputFile){ ….. } 编辑 :添加了图像以供参考。

Java:Object类的基本原理未被声明为abstract

为什么java.lang.Object类声明为抽象? 当然,对于一个有用的Object,它需要添加状态或行为,Object类是一个抽象,因此它应该被声明为abstract … 为什么他们选择不这样做?

arrays的好处

正如我所看到的,列表相对于数组的优势非常明显: generics提供更精确的输入: List, List, List List, List, List List, List, List 。 List接口有一堆有用的方法: addAll , remove等。对于数组,除了get / set之外的所有标准操作必须通过将它传递给静态方法以过程方式执行。 集合提供不同的实现,如ArrayList , LinkedList ,unmodifieable和synchronized列表,可以隐藏在公共List接口下。 OOB长度控制。 作为缺点,我只能提到没有语法糖和运行时类型检查。 同时支持两种结构需要频繁使用asList和toArray方法,这使得代码的可读性降低。 所以我很好奇使用我想念的数组有什么重要的好处。

如何使用log4j写入文本文件?

我想知道如何转换以下代码将这些行输出到文本文件,而不是标准输出: import org.apache.log4j.Logger; import org.apache.log4j.PropertyConfigurator; public class HelloWorld { static final Logger logger = Logger.getLogger(HelloWorld.class); public static void main(String[] args) { PropertyConfigurator.configure(“log4j.properties”); logger.debug(“Sample debug message”); logger.info(“Sample info message”); logger.warn(“Sample warn message”); logger.error(“Sample error message”); logger.fatal(“Sample fatal message”); } } 属性文件是: log4j.rootLogger=DEBUG, CA log4j.appender.CA=org.apache.log4j.ConsoleAppender log4j.appender.CA.layout=org.apache.log4j.PatternLayout log4j.appender.FA.layout.ConversionPattern=%m%n 谢谢。