在Java Graphics2D中绘制透明图像

我想在另一个上面绘制一个部分透明的图像(在物体上制作阴影)。 我目前正在使用java的Graphics2D类进行渲染,我被告知将复合设置为AlphaComposite,但这只是将它设置为完全透明。 我可以使用当前设置执行此操作吗? 我该怎么做才能解决这个问题? 这是我被告知的代码将使其部分透明: AlphaComposite ac = java.awt.AlphaComposite.getInstance(AlphaComposite.CLEAR, 0.5F); g.setComposite(ac); (我顺便使用png图像) inheritance你的sscce(这些都是在不同的类,但我把它们放在一起以简化)(我在本地文件夹“Images”中使用一个名为“Test”的图像,你可以使用任何东西,只要它是一个png图像命名一样 import java.awt.AlphaComposite; import java.awt.Color; import java.awt.DisplayMode; import java.awt.Font; import java.awt.Graphics2D; import java.awt.Window; import javax.swing.ImageIcon; import com.blazingkin.atrox.ScreenManager; public class AtroxAdventrum{ public static void main(String[] args) { new AtroxAdventrum().run(); } private static DisplayMode modes[] = { //new DisplayMode(1080,720,32,0), //new DisplayMode(1080,720,24,0), //new DisplayMode(1080,720,16,0), //new DisplayMode(1440,900,32,0), […]

从Java调用Powershell脚本

我想从java调用我的powershell脚本。 能做到吗? 我尝试使用以下代码,但流未关闭。 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; public class TestPowershell { public static void main(String[] args) throws IOException { Runtime runtime = Runtime.getRuntime(); Process proc = runtime.exec(“powershell C:\\testscript.ps1”); InputStream is = proc.getInputStream(); InputStreamReader isr = new InputStreamReader(is); BufferedReader reader = new BufferedReader(isr); String line; while ((line = reader.readLine()) != null) { […]

Java Generics:在运行时访问Generic Type

我想在运行时访问声明字段的generics类型。 我之前的印象是,由于Java类型擦除,这是不可能的。 但是,情况并非如此,因为一些众所周知的框架在运行时通过reflection来利用generics类型。 例如,Guice将根据您提供的generics类型实现Provider: public class Injectable{ @Inject private Provider someTypeProvider; } 如何通过reflectionAPI访问字段的“SomeType”generics属性或任何此类类型/方法/等? 此外,了解如何通过Java 6 Annotation Processor API访问这些generics类型属性也很有帮助。 谢谢。 编辑: 谢谢大家的指示。 我找到了一种方法,使用haylem的链接,特别是Prenkov的文章Java Reflection:Generics 。 这是我正在寻找的答案: /** * @author John Ericksen */ public class TypeReflectionExample { public class SomeType{} public class Injectable{ @Inject private Provider someTypeProvider; } public static void main(String[] args){ try { Field providerField […]

JCIFS:文件检索太慢而无法使用

我只是测试JCIFS来访问Windows共享。 完全无法使用它是非常缓慢的。 import jcifs.smb.*; class First { public static void main(String[] args) throws Exception { try { //jcifs.Config.setProperty( “jcifs.netbios.wins”, “192.168.1.220” ); NtlmPasswordAuthentication auth = new NtlmPasswordAuthentication(“domain.com”, “Administrator”, “password”); SmbFile f = new SmbFile(“smb://10.17.15.12/Share/xml/file.xml”, auth); SmbFileInputStream in = new SmbFileInputStream(f); byte[] b = new byte[8192]; int n; while(( n = in.read( b )) > 0 ) […]

Hibernate在更新集合时删除孤立

我发现从Hibernate中的集合中删除时不会删除孤立记录。 我必须做一些简单的错误,(这是Hibernate-101!),但我找不到它.. 鉴于以下内容: public class Book { @ManyToOne @NotNull Author author; } public class Author { @OneToMany(cascade={CascadeType.ALL}) List books; } 以下更新代码: Author author = authorDAO.get(1); Book book = author.getBooks().get(0); author.getBooks().remove(0); authorDAO.update(author); AuthorDAO代码段: @Override public void update(T entity) { getSession().update(entity); } 以下测试失败: Author author = author.get(1); assertEquals(0,author.getBooks().size()); // Passes Book dbBook = bookDAO.get(book.getId()) assertNull(dbBook); // Fail! […]

如何制作ArrayList的分离副本?

可能重复: Java:如何克隆ArrayList但是也克隆了它的项目? 我有一个示例程序,如下所示: ArrayList orginalInvoice = new ArrayList(); //add some items into it here ArrayList copiedInvoice = new ArrayList(); copiedInvoice.addAll(orginalInvoice); 我以为我可以修改copiedInvoice项目,它不会影响originalInoice这些项目。 但是我错了。 如何对ArrayList进行单独的复制/克隆? 谢谢

Google App Engine:Memcache还是Static变量?

好吧,我想我在这里有一个非常基本的疑问: 我正在开发一个关于GAE(Java)的应用程序,并对返回大量实体的数据存储执行查询,因此我需要对其进行缓存。 我使用的是memcache并且工作得很好,但如果我将实体列表保存在静态变量中,整个请求的速度是使用memcache的两倍。 我认为这是因为我不是一直在反序列化实体。 在memcache上使用静态变量会有什么缺点? 我不知道我的应用程序在云中是否有多个实例,因此我的静态变量的几个实例? 我正在尝试缓存的实体列表是上周的最佳(更高分)post。 我拿这个列表并选择5个随机post并在几页中显示它们。 谢谢您的帮助!

JDBC:简单的MSSql连接示例不起作用

我正在学习Java,需要运行一些简单的东西,通过JDBC从MSSQL中检索一些数据。 我书中的例子不起作用(但它已经有好几年了)以下MS的这个例子对我来说也不起作用: http://msdn.microsoft.com/en-us/library/ms378956(v=sql.90).aspx 这是我的代码: package javasql; import java.sql.*; import java.util.*; public class Program { private static String url = “jdbc:sqlserver://localhost\\SQLExpress;database=Northwind;integratedSecurity=true;”; //private static String userName = “sa”; //private static String password = “myPassword”; /** * @param args the command line arguments */ public static void main(String[] args) { RunDemo(); } public static void RunDemo() { try […]

如何为RESTful端点禁用基于spring form的登录?

我根据auto-config=’true’使用基本和基于表单的身份validation配置了spring-security。 我希望/api/**下的端点不使用基于表单的安全性。 /api/**之外的其他端点应使用基于表单的登录。 我希望401响应发送给这些没有在/api/**下提供凭据的端点。 更新 :感谢Luke Taylor在下面的评论,我提出了以下解决方案。 注意 :此技术仅适用于弹簧安全3.1。 首先我/api/** 。 我们从不创建会话,但如果可用,则使用一个会话,这由create-session=”never”和的使用来 。

Java SWIFT库

我正在寻找一个用于SWIFT消息的Java库。 我要 将SWIFT消息解析为对象模型 validationSWIFT消息(包括SWIFT网络validation规则) 使用对象模型构建/更改SWIFT消息 从理论上讲,我需要支持所有SWIFT消息类型。 但目前我需要MT103 +,MT199,MT502,MT509,MT515和MT535。 到目前为止,我已经看了两个库 AnaSys消息对象( 链接文本 ) Datamation SWIFT消息套件( 链接文字 ) 两个库都可以完成上面提到的任务,但在这两种情况下我都不是很开心。 AnaSys对所有SWIFT消息使用内部XML表示,您需要知道这些消息才能访问消息的字段。 而且你需要操作XML表示的DOM,没有办法说“获取SWIFT消息的字段’50K’的内容”。 Datamation库似乎有更好的API,但没有发现所有错误。 那么有谁知道其他SWIFT库可以使用?