我正在使用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) 我正在使用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) 我是SVN的新手。我发现将分支A合并到分支B时,SVN将分支A中的所有内容移至B,而不是复制。当您将分支A复制到分支C并再次执行相同的操作时,它给您一个错误,分支C已经存在。
我要完成的是:
branch/dev–用于发展branch/dev到branch/test–进行功能测试branch/test到trunk–供舞台使用由于无法覆盖现有分支,因此当我要branch/dev再次复制时,需要先删除测试,这很不方便。
有办法吗?
我是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文件: …
我正在尝试将md5哈希转换为long在python中可以的形式,
Run Code Online (Sandbox Code Playgroud)>>> int(hashlib.md5("abc").hexdigest(),16) 191415658344158766168031473277922803570L
当我消化“ 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)