在hibernate实体上处理数据库视图的优雅方法?

我使用Hibernate的一个主要原因是它提供了切换到另一个数据库的灵活性,而无需重写任何代码。 但到目前为止,我还没有想出一个很好的方法来定义我的hibernate实体匹配的表的其他视图; 我仍在使用简单的SQL脚本。 有没有更优雅的方法来定义由hibernate管理的表的视图? 理想情况下,我想使用HQL或其他通用方法来完成这项工作,这样我就不必担心我的SQL脚本与其他类型的数据库不兼容。 如果有办法实现这一点,那么第二个问题就是从这些视图中获取“合成”只读实例,这样可以更容易地将聚合数据提供给UI。 编辑: 好像我没有把问题弄清楚,所以这就是我想要做的事情:我想编写独立于使用过的数据库的代码。 由于我使用hibernate,我只需要更改方言配置文件,然后可以使用另一个DBMS。 问题:如何在不依赖特定SQL方言(保持一切可移植性)甚至是HQL的情况下在我的hibernate实体上创建视图 ? 如果可能的话,我可以使用HQL查询这些视图,即创建只读聚合实体吗? 是否有任何额外的hibernate插件来帮助我? 到目前为止还没找到任何东西…: – /

为什么tab小部件位于android中的内容之上?

目前我在tabhost布局上工作。 在大多数Android应用程序中,布局是: tab1 | tab 2 ____________ Tab 1 content (if I press on tab1) 但是,我想要实现的目标是 Tab 1 content (if I press on tab1) ____________ tab1 | tab 2 这是主要的xml(app的主干): 选项卡内容布局 主要课程: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ctx = this; gs = (MyApp) getApplication(); tabHost = (FragmentTabHost)findViewById(android.R.id.tabhost); tabHost.setup(this, getSupportFragmentManager(), R.id.realtabcontent); tabHost.addTab(tabHost.newTabSpec(“main”).setIndicator(“”),Home.class, null); […]

如何搜索子文件夹并使用Java中的新数据重新绘制jTable?

我的程序遇到了一些问题。 我想让一个jTable显示添加到其TableModel的各种数据点,但我似乎无法使用新数据更新表。 此外,似乎我在目录中搜索png图像实际上没有完全搜索所有png图像的目录,只停在第一个文件夹的内容。 我已将所有数据点放入适当的ArrayLists中以获取其数据类型,并将它们转换为Object数组,然后将它们放入我的jTable的TableModel中。 它没有用,我没有用自己的知识解决这些问题。 一些代码: private void btnPatchSelActionPerformed(java.awt.event.ActionEvent evt) { fchsFolderChooser.showOpenDialog(null); File selFile = fchsFolderChooser.getSelectedFile(); fldPatchSel.setText(selFile.getPath()); File pngs[] = selFile.listFiles(IMAGE_FILTER); for (File png : pngs) { try {BufferedImage img = ImageIO.read(png); patchWs.add(img.getWidth()); patchHs.add(img.getHeight()); patchDims.add(img.getWidth() + “x” + img.getHeight()); patchImgs.add(img); patchImgPaths.add(png.getPath()); sels.add(false); System.out.println(“Found ” + png.getPath()); } catch (IOException e) { System.out.println(“Bad image: ” + […]

JFreeChart的放大和缩小function的exception行为?

我观察到“放大”和“缩小”的function实现与预期完全不同。例如,当我执行“缩小”一步时,然后在“缩放”后退一步后再次在”。 我再也看不到原始图表了。 我没有看到JFreechart的“放大”和“缩小”function处于同步状态。 public class ChartPanelDemo { private static final String title = “Historical Data Graph”; private ChartPanel chartPanel = createChart(); private JButton ZoomX; private JButton ZoomY; private JButton Zoom; private JButton ZoomXOut; private JButton ZoomYOut; private JButton ZoomOut; private JButton originalGraph; private JButton xscaleInc; private JButton xscaleDec; private NumberAxis domainAxis; private NumberAxis rangeAxis; private […]

如何阻止Java运行整个代码而不等待来自用户的Gui输入

我是Java的新手,我只是寻求一些帮助 我试图创建一个程序,允许用户输入gui的名称和>>百货商店的位置。 它允许这样但是程序不等待输入>细节它只是初始化Gui类并继续处理>处理将输入Gui的细节添加到数组列表中。 但尚未输入>详细信息,因此它创建了一个空值,因为它已经超前了。 那么我怎样才能让它停下来等到输入值然后提交? 这是代码的Gui组件: import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.util.*; public class guiDepartment extends JFrame { private String depName; private String depLocation; private static Department newDepartment; private JTextField departmentDetails1; private JTextField departmentDetails2; private JTextField departmentDetails3; private Employee worksInInTheDepartment; public guiDepartment() { System.out.println(“bob the builder “); JButton submit; JButton b1; JFrame frame […]

如何延迟处理项目?

嗨我使用java,但我试图做一个延迟不停止程序,但停止代码块的类型,例如,如果我有一个方法,添加1到一个变量,我希望它添加1然后等待一个然后再添加1,但delay()停止整个程序,thread.sleep在处理项目中不起作用。

什么是按位操作?

我正在研究名为Beginning Android Games的书。 我注意到的一件事是: int action = event.getAction() & MotionEvent.ACTION_MASK; int pointerIndex = (event.getAction() & MotionEvent.ACTION_POINTER_ID_MASK) >> MotionEvent.ACTION_POINTER_ID_SHIFT; 这是我见过类似变量的第一次,所以我不知道它是做什么的。 我在java中运行代码并创建了一些示例。 如果我运行此代码: int i = 10 >> 500; System.out.print(“Answer ” + i); 答案是0? 这是为什么? 如果我运行此代码: int i = 10 & 500; System.out.print(“Answer ” + i); 起初我认为这是价值的连接所以我会假设我= 10500但事实并非如此。 答案是一样的。 还是0? 谁知道这里发生了什么?

java在运行时动态增加xmx

我的机器中有一个jvm服务器,现在我想让我的两个服务器坐在同一台机器上,但是我希望备用服务器有一个非常少的内存分配xmx因为它是被动的,一个是主服务器(活动的)下来我想为我的被动服务器分配更多的内存,这个服务器已经启动而没有重新启动它(我已经让它们都有太多的xmx – 注意它们会在启动时消耗内存而我不能允许outOfMemory)。 所以我想要被动 – 低xmx一旦主动下降,我希望我的被动接收更多的xmx。 有没有办法让我实现这一目标。 谢谢

使用JDBC迭代大表的最快方法

我正在尝试创建一个java程序来清理和合并我的表中的行。 该表很大,大约500k行,我目前的解决方案运行速度非常慢。 我想要做的第一件事就是获取一个表示我表中所有行的对象的内存数组。 这是我正在做的事情: 一次选择1000行的增量 使用JDBC在以下SQL查询上获取结果集SELECT * FROM TABLE WHERE ID> 0 AND ID <1000 将结果数据添加到内存数组中 继续查询最多500,000,增量为1000,每次添加结果。 这已经很久了。 实际上它甚至没有超过从1000到2000的第二个增量。查询需要永远完成(尽管当我直接通过MySQL浏览器运行相同的东西时它速度相当快)。 我已经有一段时间了,因为我直接使用了JDBC。 有更快的替代方案吗?

摆动计时器不能正常工作

嗨,我正在研究一个项目(Java记忆游戏),首先我想了解摇摆计时器是如何工作的。 首先,我的主类实现了ActionListener和ItemListener 。 并且我在actionPerformed(ActionEvent e)使用计时器,如果用户选择不同图片的两张卡然后我使用timer.start()给他几秒钟看图片,然后他们将再次关闭。 但如果用户选择两张不同的图片,他们会突然关闭,所以我看不到第二张图片。 我读了一些关于摇摆计时器的教程,但我想我错误地理解了。通过我创建我的SSCCE的方式,如果你能帮助我,我将不胜感激。 谢谢anwyway … import java.awt.BorderLayout; import java.awt.Color; import java.awt.GridLayout; import java.awt.Image; import java.awt.Menu; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.util.Random; import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem; import javax.swing.JPanel; import javax.swing.JToggleButton; import javax.swing.Timer; import javax.swing.UIManager; import javax.swing.border.*; public class […]