Java绿地(~ming~)
Java 草地
导航
BlogJava
首页
新随笔
联系
聚合
管理
<
2007年9月
>
日
一
二
三
四
五
六
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
留言簿
(4)
给我留言
查看公开留言
查看私人留言
随笔分类
分布式多部门网上书城(struts+ejb+web service)
(rss)
大型企业人事薪资管理系统(struts+hibernate+spring)
(rss)
随笔档案
2007年9月 (6)
2007年8月 (6)
2007年7月 (8)
2007年6月 (7)
阅读排行榜
1. Struts标签库(4787)
2. oracle数据库常用语句(1257)
3. 网上书店(jsp+servlet+javabean)(1019)
4. jstl标签的使用(775)
5. struts流程图(673)
6. Spring的注入方式(651)
7. Hibernate关系映射和HQL(622)
8. Struts原理实例(594)
9. struts中AtionErrors和ActionMessages的区别 (592)
10. 学习ejb的总结(572)
评论排行榜
1. Struts标签库(15)
2. 网上书店(jsp+servlet+javabean)(3)
3. Hibernate关系映射和HQL(2)
4. 用Struts框架构建netstore(1)
5. 利用WSAD XDE建立数据库模型(uml)(0)
常用链接
我的随笔
我的评论
我的参与
最新评论
统计
随笔 - 27
文章 - 0
评论 - 21
引用 - 0
最新评论
1. re: 网上书店(jsp+servlet+javabean)
很好
--金秋家圆梦
2. re: Hibernate关系映射和HQL
不错,很好,非常感谢!
--超哥
3. re: 网上书店(jsp+servlet+javabean)
谢谢
--xixi
4. re: 用Struts框架构建netstore[未登录]
我现在正在学netstore,刚接触,好朦胧啊!没有头绪,相信这个对我有很大的帮助哦!
--cc
5. re: Struts标签库
感谢分享!
--SC
6. re: Struts标签库
为用心的人喝彩
--天水云翎
7. re: Struts标签库
谢谢前辈的关心和帮助!
--勿忘我
8. re: Struts标签库[未登录]
看得出 你很用功啊 是个好苗子啊
--XY
9. re: Struts标签库
谢谢..
--完美故事
10. re: Struts标签库
整理的不错嘛!
--Edgar
ssh实现的包含acegi的项目框架(注释少)
一.Hibernate持久化层
1.model:
a.User.java
package
com.witbridge.payroll.model;
import
java.io.Serializable;
import
java.util.ArrayList;
import
java.util.List;
import
org.acegisecurity.GrantedAuthority;
import
org.acegisecurity.userdetails.UserDetails;
@SuppressWarnings(
"
unchecked
"
)
public
class
User
implements
Serializable, UserDetails
{
private
static
final
long
serialVersionUID
=
2289410331437985768L
;
private
Integer id;
private
String username;
private
String password;
private
String email;
private
boolean
enabled;
private
boolean
accountExpired;
private
boolean
accountLocked;
private
boolean
credentialsExpired;
private
Integer associateId;
private
List roles
=
new
ArrayList();
//
~============================getter & settter
public
Integer getId()
{
return
id;
}
public
void
setId(Integer id)
{
this
.id
=
id;
}
public
boolean
isAccountExpired()
{
return
accountExpired;
}
public
void
setAccountExpired(
boolean
accountExpired)
{
this
.accountExpired
=
accountExpired;
}
public
boolean
isAccountLocked()
{
return
accountLocked;
}
public
void
setAccountLocked(
boolean
accountLocked)
{
this
.accountLocked
=
accountLocked;
}
public
boolean
isCredentialsExpired()
{
return
credentialsExpired;
}
public
void
setCredentialsExpired(
boolean
credentialsExpired)
{
this
.credentialsExpired
=
credentialsExpired;
}
public
void
setEnabled(
boolean
enabled)
{
this
.enabled
=
enabled;
}
public
void
setPassword(String password)
{
this
.password
=
password;
}
public
void
setUsername(String username)
{
this
.username
=
username;
}
public
String getEmail()
{
return
email;
}
public
void
setEmail(String email)
{
this
.email
=
email;
}
public
List getRoles()
{
return
roles;
}
public
void
setRoles(List roles)
{
this
.roles
=
roles;
}
public
void
addRole(Role role)
{
roles.add(role);
}
public
GrantedAuthority[] getAuthorities()
{
return
(GrantedAuthority[]) roles.toArray(
new
GrantedAuthority[
0
]);
}
public
String getPassword()
{
return
password;
}
public
String getUsername()
{
return
username;
}
public
boolean
isAccountNonExpired()
{
return
!
isAccountExpired();
}
public
boolean
isAccountNonLocked()
{
return
!
isAccountLocked();
}
public
boolean
isCredentialsNonExpired()
{
return
!
isCredentialsExpired();
}
public
boolean
isEnabled()
{
return
enabled;
}
public
Integer getAssociateId()
{
return
associateId;
}
public
void
setAssociateId(Integer associateId)
{
this
.associateId
=
associateId;
}
}
Role.java
package
com.witbridge.payroll.model;
import
java.io.Serializable;
import
org.acegisecurity.GrantedAuthority;
public
class
Role
implements
Serializable, GrantedAuthority
{
private
static
final
long
serialVersionUID
=
-
3187100981785730494L
;
private
Integer id;
private
String name;
//
~=================================Constructor
public
Role()
{
}
public
Role(Integer id, String name)
{
this
.id
=
id;
this
.name
=
name;
}
//
~=================================getter & setter
public
Integer getId()
{
return
id;
}
public
void
setId(Integer id)
{
this
.id
=
id;
}
public
String getName()
{
return
name;
}
public
void
setName(String name)
{
this
.name
=
name;
}
public
String getAuthority()
{
return
name;
}
}
UserRole:
package
com.witbridge.payroll.model;
import
java.io.Serializable;
public
class
UserRole
implements
Serializable
{
private
static
final
long
serialVersionUID
=
3627077608786533159L
;
private
Integer userId;
private
Integer roleId;
public
Integer getRoleId()
{
return
roleId;
}
public
void
setRoleId(Integer roleId)
{
this
.roleId
=
roleId;
}
public
Integer getUserId()
{
return
userId;
}
public
void
setUserId(Integer userId)
{
this
.userId
=
userId;
}
}
测试的Demo:Person.java
package
com.witbridge.payroll.model;
public
class
Person
{
private
Integer id;
private
String username;
private
String password;
public
Integer getId()
{
return
id;
}
public
void
setId(Integer id)
{
this
.id
=
id;
}
public
String getPassword()
{
return
password;
}
public
void
setPassword(String password)
{
this
.password
=
password;
}
public
String getUsername()
{
return
username;
}
public
void
setUsername(String username)
{
this
.username
=
username;
}
}
2.Hibernate映射文件
0.数据源的配置
<?
xml version
=
"
1.0
"
encoding
=
"
UTF-8
"
?>
<!
DOCTYPE beans PUBLIC
"
-//SPRING//DTD BEAN//EN
"
"
http://www.springframework.org/dtd/spring-beans.dtd
"
>
<
beans
>
<!--
DataSource definition
-->
<
bean id
=
"
dataSource
"
class
=
"
org.apache.commons.dbcp.BasicDataSource
"
destroy
-
method
=
"
close
"
>
<
property name
=
"
driverClassName
"
value
=
"
COM.ibm.db2.jdbc.net.DB2Driver
"
/>
<
property name
=
"
url
"
value
=
"
jdbc:db2:192.168.0.120:payrolla
"
/>
<
property name
=
"
username
"
value
=
"
db2admin
"
/>
<
property name
=
"
password
"
value
=
"
db2admin
"
/>
</
bean
>
<!--
<
bean id
=
"
dataSource
"
class
=
"
org.apache.commons.dbcp.BasicDataSource
"
destroy
-
method
=
"
close
"
>
<
property name
=
"
driverClassName
"
value
=
"
com.mysql.jdbc.Driver
"
/>
<
property name
=
"
url
"
value
=
"
jdbc:mysql://localhost:3306/payroll1
"
/>
<
property name
=
"
username
"
value
=
"
root
"
/>
<
property name
=
"
password
"
value
=
"
root
"
/>
</
bean
>
-->
<!--
Hibernate SessionFactory
-->
<
bean id
=
"
sessionFactory
"
class
=
"
org.springframework.orm.hibernate3.LocalSessionFactoryBean
"
>
<
property name
=
"
dataSource
"
ref
=
"
dataSource
"
/>
<
property name
=
"
mappingDirectoryLocations
"
>
<
list
>
<
value
>
classpath:
/
com
/
witbridge
/
payroll
/
hbm
</
value
>
</
list
>
</
property
>
<
property name
=
"
hibernateProperties
"
>
<
props
>
<
prop key
=
"
hibernate.dialect
"
>
org.hibernate.dialect.DB2Dialect
</
prop
>
<
prop key
=
"
hibernate.show_sql
"
>
true
</
prop
>
</
props
>
</
property
>
</
bean
>
<!--
Transaction manager
for
a single Hibernate SessionFactory
-->
<
bean id
=
"
transactionManager
"
class
=
"
org.springframework.orm.hibernate3.HibernateTransactionManager
"
>
<
property name
=
"
sessionFactory
"
ref
=
"
sessionFactory
"
/>
</
bean
>
</
beans
>
a.user.hbm
<?
xml version
=
"
1.0
"
encoding
=
"
UTF-8
"
?>
<!
DOCTYPE hibernate
-
mapping PUBLIC
"
-//Hibernate/Hibernate Mapping DTD 3.0//EN
"
"
http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd
"