小编sse*_*sse的帖子

hibernate oracle序列产生很大的差距

我正在使用hibernate 3,oracle 10g.我有一张桌子:主题.定义在这里

CREATE TABLE SUBJECT
    ( 
     SUBJECT_ID NUMBER (10), 
     FNAME VARCHAR2(30)  not null, 
     LNAME VARCHAR2(30)  not null, 
     EMAILADR VARCHAR2 (40),
     BIRTHDT  DATE       not null,
     constraint pk_sub primary key(subject_id) USING INDEX TABLESPACE data_index
    ) 
;
Run Code Online (Sandbox Code Playgroud)

当插入新主题时,sub_seq用于创建主题id,定义在这里

create sequence sub_seq
       MINVALUE 1 
       MAXVALUE 999999999999999999999999999 
       START WITH 1
       INCREMENT BY 1 
       CACHE 100 
       NOCYCLE ;
Run Code Online (Sandbox Code Playgroud)

Subject类是这样的:

@Entity
@Table(name="ktbs.syn_subject")
public class Subject {

    @Id 
    @Column(name="subject_id")
    @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="SUB_SEQ")
    @SequenceGenerator(name="SUB_SEQ", sequenceName = "SUB_SEQ")
    private long subjectId;
    private String fname;
    private String lname;
    private String emailadr; …
Run Code Online (Sandbox Code Playgroud)

oracle hibernate sequence gaps-in-data

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

将java messagedigest在不同的jdk版本上生成不同的MD5哈希?

我正在使用java消息摘要来创建MD5哈希,用于身份验证.MD5哈希作为varchar2存储在数据库中.我做了一个测试,在我的本地笔记本电脑上的tomcat服务器上创建用户.当我将战争部署到linux redhat上的测试tomcat服务器时,由于哈希不匹配,身份验证失败.我检查了用户名和密码:它们都是正确的.两个Web服务器都指向同一个数据库.

我怀疑在我的本地笔记本电脑上生成的哈希值与测试服务器生成的哈希值不同.我对吗?

下面是我生成哈希的代码.

public static String getMD5Hash(String str) throws Exception
{
    MessageDigest md = MessageDigest.getInstance("MD5");

    md.update(str.getBytes());
    return new String(md.digest());
}
Run Code Online (Sandbox Code Playgroud)

返回的String将保存在数据库表中,该表定义如下

create table authen(
   passport varchar2(50),
   constraint pk_au primary key (passport) USING INDEX TABLESPACE xxxxxxx
);
Run Code Online (Sandbox Code Playgroud)

这是我笔记本电脑上的java版本输出

C:\Users\XXXX>java -version
java version "1.6.0_25"
Java(TM) SE Runtime Environment (build 1.6.0_25-b06)
Java HotSpot(TM) Client VM (build 20.0-b11, mixed mode, sharing)
Run Code Online (Sandbox Code Playgroud)

这是redhat服务器上的java版本输出

[xxxxxx@xxxxxxxxx ~]$ java -version
java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) Client VM (build 16.3-b01, mixed mode, …
Run Code Online (Sandbox Code Playgroud)

java md5 message-digest

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

SVN可以复制并覆盖目标分支,还是可以合并并保留源分支?

我是SVN的新手。我发现将分支A合并到分支B时,SVN将分支A中的所有内容移至B,而不是复制。当您将分支A复制到分支C并再次执行相同的操作时,它给您一个错误,分支C已经存在。

我要完成的是:

  • 首先,我有一个branch/dev–用于发展
  • 然后复制branch/devbranch/test–进行功能测试
  • 然后复制branch/testtrunk–供舞台使用
  • 然后标记到生产。

由于无法覆盖现有分支,因此当我要branch/dev再次复制时,需要先删除测试,这很不方便。

有办法吗?

svn tags merge

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

jsp中的Spring MVC模型访问失败

我是Spring的新手.我在eclipse中创建了一个maven项目,通过类似Spring示例SVN存储库中的mvc-basic示例来测试Spring MVC.当我试图在jsp中检索模型值时,jsp只显示$ {模型属性名称},而不是模型属性值.

我是否会错过任何使Spring无法检索模型值的内容?

以下是详细信息:

代码:控制器:

@Controller
public class TestAction {

@RequestMapping(value="/test" , method=RequestMethod.GET)
public String returnHelloWorld(Model model)
{
    ObjectTest objectTest=new ObjectTest();
    objectTest.setName("heng");
    model.addAttribute(objectTest);
    return "/test/start";
}
 }
Run Code Online (Sandbox Code Playgroud)

代码JSP:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<%@ taglib prefix="s" uri="http://www.springframework.org/tags" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"      "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
     hello ${objectTest.name}  
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

在服务器(tomcat 6)上运行时,显示的页面就像

你好$ {objectTest.name}

但应该是

你好

POM.XML文件: …

model-view-controller spring model maven

3
推荐指数
1
解决办法
6587
查看次数

如何在Java中将md5哈希转换为整数类型?

我正在尝试将md5哈希转换为long在python中可以的形式,

>>> int(hashlib.md5("abc").hexdigest(),16) 
191415658344158766168031473277922803570L 
Run Code Online (Sandbox Code Playgroud)

当我消化“ abc”时,我得到(十六进制):“ 0X900150983CD24FB0D6963F7D28E17F72”

用Java执行此哈希转换的正确方法是什么?

public static void main(String[] args) {
    byte[] md5hex = DigestUtils.md5("abc");
    String hex = new String(Hex.encodeHex(md5hex));
    System.out.println(hex);
    long lv = Long.parseLong("0X" + hex.toUpperCase(), 16);
    System.out.println(lv);
    int hext = Integer.parseInt("12346789", 16);
    System.out.println(hext);
}
Run Code Online (Sandbox Code Playgroud)

java hash integer md5

0
推荐指数
1
解决办法
1685
查看次数