小编Mar*_*rvo的帖子

Oracle JDBC ojdbc6 Jar作为Maven依赖项

我似乎无法让Maven将ojdbc6.jar文件捆绑到我的项目的war文件中.在直接为Hibernate工具指定依赖项时,我在POM文件中工作.但它不会与项目的war文件捆绑在一起,因此我的项目不会在Tomcat上运行.

我已经尝试了我可以在网上找到的每个解决方案,包括这里为此问题指定的解决方案:

在Maven存储库中查找Oracle JDBC驱动程序

最近,我做了以下事情:

  1. 将jar文件下载到我的机器上

  2. 运行以下命令将jar安装到我的本地存储库中:

    mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=ojdbc6.jar -DgeneratePom=true
    
    Run Code Online (Sandbox Code Playgroud)

    (我也尝试过该命令的各种变体.)

  3. 最后,我将依赖项放入我的pom文件中:

    <dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0.3</version>
    </dependency>
    
    Run Code Online (Sandbox Code Playgroud)
  4. 我运行一个干净的构建,但它失败了:

    mvn -U clean package
    
    [INFO] Scanning for projects...
    [INFO]                                                                         
    [INFO] ------------------------------------------------------------------------
    [INFO] Building jazztwo 0.0.1
    [INFO] ------------------------------------------------------------------------
    Downloading: http://repo1.maven.org/maven2/com/oracle/ojdbc6/11.2.0.3/ojdbc6-11.2.0.3.jar
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD FAILURE
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 0.700s
    [INFO] Finished at: Tue Mar 27 15:06:14 PDT 2012
    [INFO] Final Memory: 3M/81M
    [INFO] ------------------------------------------------------------------------
    [ERROR] Failed to execute goal on project jazztwo: Could not resolve dependencies …
    Run Code Online (Sandbox Code Playgroud)

oracle jdbc war maven

95
推荐指数
5
解决办法
27万
查看次数

视图中的Hibernate Open会话:每个请求的事务?

我在Tomcat上使用Hibernate和Spring.我一直在阅读并重新阅读关于该主题的指向JBoss wiki页面的内容,这很有帮助.但它给我留下了一些问题.

  1. 为每个请求启动交易的想法让我很烦恼.我想我可以将过滤器限制在某些控制器 - 可能将我需要交易的所有控制器放在伪"tx"路径下.但如果您不知道是否需要交易,那么使用交易不是一个坏主意吗?如果我只是在某些请求中读取 - 很可能来自缓存的读取 - 在没有事务的情况下我不是更好吗?

  2. 我读过帖子,提到他们如何处理服务层的事务,我想用Spring做这件事.但那么过滤器代码是什么样的呢?我仍然希望在我的视图中可以使用会话进行一些延迟加载.

  3. 如果我所要做的就是调用sessionFactory.getCurrentSession()我的过滤器,它如何被"释放"回会话工厂重新使用?(session.close()即使在使用事务时,我也希望看到一个或者什么.)谁在告诉会话工厂该会话可以重用?

  4. 也许beginTransaction()是在请求期间将给定数据库连接绑定到给定会话的调用?否则,会话根据需要从池中提取数据库连接,对吧?

感谢您对我的所有问题的耐心等待.

(如果你的答案将成为Spring文档的链接,那么你只会让我哭泣.你不想要那个,是吗?如果人们不再回答Spring相关的问题,我会付真钱吗办法.)

spring hibernate sessionfactory open-session-in-view

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

Eclipse Maven使用一个按钮构建和测试

我在Eclipse中做的最常见的构建活动(除了允许自动构建做它的事情之外)是使用clean和package参数执行"Maven Build ...".这会运行我的所有测试.m2eclipse做得很好,我喜欢输出.如果测试中断,我会跳转到使用JUnit插件,调试器等.

我在Run(和Debug)按钮的下拉菜单下使用了"Organize favorites ..."来使这种构建"永久"并且在某种程度上易于访问和使用.

但不够容易.

我现在拥有的是一个按钮,根据我上次的活动,我打开的文件或项目窗​​口中选择的项目,随时变形.是的,我可以单击运行按钮旁边的向下箭头,选择"clean-and-package"的最爱,但是对于我每天做数百次的事情来说,这太难了.

我想要一个按钮.工具栏上的一个大按钮,我只需点击它,就可以使用炸药.我也会接受一种为我的构建最爱分配热键的方法,所以我可以按ctrl + r或其他东西来运行我最喜欢的项目.

什么对我有用?

eclipse integration-testing unit-testing build maven

8
推荐指数
2
解决办法
4492
查看次数

登录信息以纯文本格式显示 - 如何使其无法读取

我正在做一个使用jquery将数据从表单传递到脚本并返回的登录表单.我注意到电子邮件和密码是以简单可读的文本形式发送的.我也注意到在其他网站中,例如这个,gmail或其他网站,登录信息不像我的那样可读.我怎样才能做到这一点?不知何故,以纯文本形式发送此信息看起来不太专业.

屏幕捕获FireBug

html php jquery

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

没有索引!=?

考虑以下两个EXPLAIN:

EXPLAIN SELECT * FROM sales WHERE title != 'The'

id  select_type table   type    possible_keys   key key_len ref rows    Extra
1   SIMPLE      sales   ALL      title        NULL  NULL    NULL    41707   Using where
Run Code Online (Sandbox Code Playgroud)

而且 -

EXPLAIN SELECT * FROM sales WHERE title = 'The'
id  select_type table   type    possible_keys   key key_len ref rows    Extra
1   SIMPLE      sales   ref      title         title    767 const   1   Using where 
Run Code Online (Sandbox Code Playgroud)

为什么!=查询有NULL密钥?它为什么不用title?是什么导致=语句能够利用索引而不是!=

mysql sql performance database-performance

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

为什么不能在java中的一个文件中定义两个公共类?

为什么B级不能公开?我如何在其他课程中使用课程?在Cons内部定义它更好吗?!

   //    public class B { why not?

   class B {
        int x;  
        B (int n) {
            x=n;
            System.out.println("constructor 'B (int n)' called!");
        }
    }

    public class Cons { 
        public static void main(String[] args) {B b = new B();}
    }
Run Code Online (Sandbox Code Playgroud)

java class

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

同步集合

由于c已经是同步集合,因此它是线程安全的.但为什么我们必须synchronized(c)再次使用迭代?真的很困惑.谢谢.

"当迭代它时,用户必须手动同步返回的集合:

Collection c = Collections.synchronizedCollection(myCollection);
 ...
 synchronized(c) {
     Iterator i = c.iterator(); // Must be in the synchronized block
     while (i.hasNext()) {
         foo(i.next());
     }
}
Run Code Online (Sandbox Code Playgroud)

不遵循此建议可能会导致非确定性行为." http://docs.oracle.com/javase/6/docs/api/java/util/Collections.

java loops synchronized

7
推荐指数
2
解决办法
4804
查看次数

如何使用EasyMock预期任何参数的void方法调用

作为单元测试的一部分,我需要使用任何参数模拟void函数(接受任何非原始参数,例如MAP)调用.

mockObj.myMethod(<anyObject>)
Run Code Online (Sandbox Code Playgroud)

是否可以使用EasyMock执行此操作?

junit unit-testing easymock

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

Hibernate的createCriteria()清理输入吗?

今天遇到了一些使用Hibernate执行查询的代码.该查询使用从表单提交的值.这让我很好奇这种代码是否"消毒"了它的输入.

public List<School> search(String query) {
    Session session = this.getCurrentSession();
    query = "%" + query + "%";
    Criteria criteria = session.createCriteria(getPersistentClass());
    criteria.createAlias("country", "a");
    Criterion nameCriterion = Restrictions.ilike("name", query);
    Criterion cityCriterion = Restrictions.ilike("city", query);
    Criterion countryCriterion = Restrictions.ilike("a.name", query);
    Criterion criterion = Restrictions.or(Restrictions.or(nameCriterion, cityCriterion), countryCriterion);
    criteria.add(criterion);
    return criteria.list();
}
Run Code Online (Sandbox Code Playgroud)

这样安全吗?

java hibernate sql-injection

6
推荐指数
2
解决办法
2798
查看次数

Java滑动JPanels

我有一个显示各种按钮的菜单,我可以让按钮在点击时调用各自的JPanels.事情是我想让Jpanel在调用时滑入而不是瞬间弹出.我尝试使用补间引擎和Java初学者,我发现它真的很难,所以我决定使用定时动画.我能够让Jpanel在顶部滑到一边,但由于某种原因,下一个面板不想显示,我真的很累,有人可以帮忙!代码如下:

public class Listener implements ActionListener {
    @Override
    public void actionPerformed(ActionEvent e) {

        new Timer(0, new ActionListener() {
           public void actionPerformed(ActionEvent e) {                

              mainpane.setLocation(mainpane.getX() - 10, 0);
              if (mainpane.getX() + mainpane.getWidth() == 0) 
              {
                 ((Timer) e.getSource()).stop();
                   System.out.println("Timer stopped");
              } 
           }
        }).start();   
   } 
}
Run Code Online (Sandbox Code Playgroud)

java animation effects slide

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