我正在使用Hibernate / JPA来执行原生的PostGIS查询。 这些查询的问题是他们需要的参数不是经典的X ='value'forms。 例如,以下行会崩溃 String queryString = "select * from Cell c where ST_DWithin(c.shape, SetSRID(ST_GeomFromEWKT('POINT(:lon :lat)'),4326), 0.1)"; Query query = Cell.em().createNativeQuery(queryString, Cell.class); query.setParameter("lon", longitude); query.setParameter("lat", latitude); play.exceptions.JavaExecutionException: org.hibernate.QueryParameterException: could not locate named parameter [lon] at play.mvc.ActionInvoker.invoke(ActionInvoker.java:259) at Invocation.HTTP Request(Play!) Caused by: java.lang.IllegalArgumentException: org.hibernate.QueryParameterException: could not locate named parameter [lon] at org.hibernate.ejb.QueryImpl.setParameter(QueryImpl.java:358) 以下查询适用于: String […]
有没有内置的Java代码将parsing给定的文件夹,并search.txt文件?
我听说有人说他们创build了一个胖JAR并部署它。 他们究竟是什么意思?
所以对于布尔型的二元运算符,Java有& , | , ^ , &&和|| 。 让我们总结一下他们在这里做的简要介绍: JLS 15.22.2布尔逻辑运算符&,^和| JLS 15.23有条件的和操作符&& JLS 15.24条件或运算符|| 对于& ,如果两个操作数值都为true ,则结果值为true ; 否则,结果是false 。 为| ,如果两个操作数的值均为false ,则结果值为false ; 否则,结果是true 。 对于^ ,如果操作数值不同,结果值为true ; 否则,结果是false 。 &&操作符就像&但是只有当其左侧操作数的值为true才会计算右侧的操作数。 || 运算符就像| 但是只有在其左手操作数的值为false时才计算其右手操作数。 现在,其中有5个有复合赋值版本,即|= , &=和^= 。 所以我的问题很明显:为什么Java不提供&&=和||=呢? 我发现我需要比我需要的&=和|= 。 我不认为“因为太长”是一个很好的答案,因为Java有>>>= 。 这个遗漏肯定有更好的理由。 从15.26分配操作员 : 有12个分配操作员; […] = *= /= %= += […]
我有一个对象,其中包含我想序列化一些不可序列化的字段。 他们来自一个单独的API,我不能改变,所以使他们可序列化是不是一个选项。 主要的问题是Location类。 它包含四个我可以序列化的东西,所有的整数。 我如何使用read / writeObject来创build一个自定义的序列化方法,可以这样做: // writeObject: List<Integer> loc = new ArrayList<Integer>(); loc.add(location.x); loc.add(location.y); loc.add(location.z); loc.add(location.uid); // … serialization code // readObject: List<Integer> loc = deserialize(); // Replace with real deserialization location = new Location(loc.get(0), loc.get(1), loc.get(2), loc.get(3)); // … more code 我该怎么做?
我想避免(大部分)Netbeans 6.9.1的警告,我有一个'Leaking this in constructor'警告”的问题。 我明白这个问题,在构造函数中调用方法并传递“ this ”是危险的,因为“ this ”可能没有被完全初始化。 在单例类中修改警告很容易,因为构造函数是私有的,只能从同一个类中调用。 旧代码(简体): private Singleton() { … addWindowFocusListener(this); } public static Singleton getInstance() { … instance = new Singleton(); … } 新代码(简体): private Singleton() { … } public static Singleton getInstance() { … instance = new Singleton(); addWindowFocusListener( instance ); … } 如果构造函数是公共的,并且可以从其他类调用此修复程序不起作用。 如何修复下面的代码: public class […]
有任何人通过Hibernate成功地将PostgreSQL中的数值数组映射到java中的数值数组? SQL: CREATE TABLE sal_emp (name text, pay_by_quarter integer[]); INSERT INTO sal_emp VALUES ('one', '{1,2,3}'); INSERT INTO sal_emp VALUES ('two', '{4,5,6}'); INSERT INTO sal_emp VALUES ('three', '{2,4,6}'); 制图: <hibernate-mapping> <class name="SalEmp" table="sal_emp"> <id name="name" /> <property name="payByQuarter" column="pay_by_quarter" /> </class> </hibernate-mapping> 类: public class SalEmp implements Serializable{ private String name; private Integer[] payByQuarter; …// getters […]
在做了关于TableView的Oracle教程之后,我想知道是否有一种方法可以以编程方式将不同的CSS样式应用于选定的TableView行。 例如,用户select一个特定的行,单击“突出显示”button,选定的行获得棕色背景,白色文本填充等。我已经阅读了JavaFX tableview颜色 ,在JavaFX中 更新TableView行外观和2种颜色的背景? ,但无济于事= / 这是来源: import javafx.application.Application; import javafx.beans.property.SimpleStringProperty; import javafx.collections.FXCollections; import javafx.collections.ObservableList; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.geometry.Insets; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.Label; import javafx.scene.control.TableColumn; import javafx.scene.control.TableView; import javafx.scene.control.cell.PropertyValueFactory; import javafx.scene.layout.VBox; import javafx.scene.text.Font; import javafx.stage.Stage; public class TableViewSample extends Application { private TableView<Person> table = new TableView<Person>(); private […]
我想知道如果有人能告诉我如何使用Javastring的格式化方法。 例如,如果我想所有我的输出的宽度是相同的 例如,假设我总是希望我的输出是相同的 Name = Bob Age = 27 Occupation = Student Status = Single 在这个例子中,所有的输出整齐地格式化在一起, 我将如何完成这与格式方法。
使用Java,当试图连接到一个mysql数据库时,我得到这个错误: java.sql.SQLException: No suitable driver found for 'jdbc:mysql://localhost:3306/mysql at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at MyTest1.main(MyTest1.java:28) 我正在使用mysql-connector-java-5.1.18-bin.jar驱动程序。 这是在我的build设path。 我已经重新启动MySQL。 我也从根目录没有密码的命令行login,它连接正常。 我目前不在netstat中看到一个端口3306。 以前我得到了一个不同的错误(我没有改变代码)。 错误是“jdbc mysql拒绝用户root'@'localhost password NO” try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { String url = "'jdbc:mysql://localhost:3306/mysql"; Connection con = DriverManager.getConnection(url, "root", ""); } catch […]