Spring2.5.5+Struts2.0.11.2+JPA+Hibernate3.3实战

原帖:http://www.blogjava.net/javaroom/archive/2008/08/27/225037.html

 

 

我这次和大家交流的是spring2.5.5+struts2.0.11.2+jpa+hibernate3.3。在做这个项目之前,我看了很多网上的例子,但是没有一个能运行成功的,有的是本身的配置和代码有问题,有的则是缺包,我会尽量详细一些,让大家有一个清楚的认识。

首选下载开发包,具体网址和步骤省略,网上遍地都是。

第一步:建工程,结构图如下:

我这次和大家交流的是spring2.5.5+struts2.0.11.2+jpa+hibernate3.3。在做这个项目之前,我看了很多网上的例子,但是没有一个能运行成功的,有的是本身的配置和代码有问题,有的则是缺包,我会尽量详细一些,让大家有一个清楚的认识。

首选下载开发包,具体网址和步骤省略,网上遍地都是。

第一步:建工程,结构图如下:

读者朋友可以一目了然,需要什么包,文件的路径如何摆放就不用我长篇大论地赘述了。
 

读者朋友可以一目了然,需要什么包,文件的路径如何摆放就不用我长篇大论地赘述了。
 

第二步:将要用到的包导入到WEB-INF/lib目录下并加到项目中。

第三步:建表,我用的是mysql,因为占用的资源比较小,建立一个数据库:struts,再在其中建一张表:user,有三个字段:姓名,性别,年龄。 
下面是各个文件的代码,边粘边说吧:

UserDAO.java:数据访问的接口

 

 1 package  com.jpa.dao;
 2
 3 import  java.util.List;
 4
 5 import  com.jpa.po.User;
 6
 7 /** */ /**
 8 * @author javaroom
 9 *
10 */

11 public   interface  UserDAO  {
12    
13    public List<User> queryAll();
14
15}

16

UserDAOImpl.java:数据访问的实现类

 1 package  com.jpa.dao.impl;
 2
 3 import  java.util.List;
 4
 5 import  javax.persistence.EntityManager;
 6 import  javax.persistence.PersistenceException;
 7
 8 import  org.springframework.orm.jpa.JpaCallback;
 9 import  org.springframework.orm.jpa.support.JpaDaoSupport;
10
11 import  com.jpa.dao.UserDAO;
12 import  com.jpa.po.User;
13
14 /** */ /**
15 * @author javaroom
16 * 
17 */

18 public   class  UserDAOImpl  extends  JpaDaoSupport  implements  UserDAO  {
19
20    /**//*
21     * (non-Javadoc)
22     * 
23     * @see com.jpa.dao.UserDAO#queryAll()
24     */

25    @SuppressWarnings("unchecked")
26    @Override
27    public List<User> queryAll() {
28        // TODO Auto-generated method stub
29        return (List<User>this.getJpaTemplate().execute(new JpaCallback() {
30            public Object doInJpa(EntityManager em) throws PersistenceException {
31                return em.createQuery(
32                        "FROM User")
33                        .getResultList();
34            }

35        }
);
36    }

37
38}

39
 
UserService.java:服务的接口

 1 package  com.spring.service;
 2
 3 import  java.util.List;
 4
 5 import  com.jpa.po.User;
 6
 7 /** */ /**
 8 * @author javaroom
 9 *
10 */

11 public   interface  UserService  {
12    
13    public List<User> queryAll();
14
15}
 
UserServiceImpl.java:服务的实现类
 1 package  com.spring.service.impl;
 2
 3 import  java.util.List;
 4
 5 import  com.jpa.dao.UserDAO;
 6 import  com.jpa.po.User;
 7 import  com.spring.service.UserService;
 8
 9 /** */ /**
10 * @author javaroom
11 * 
12 */

13 public   class  UserServiceImpl  implements  UserService  {
14
15    private UserDAO userDAO;
16
17    public void setUserDAO(UserDAO userDAO) {
18        this.userDAO = userDAO;
19    }

20
21    /**//*
22     * (non-Javadoc)
23     * 
24     * @see com.spring.service.UserService#queryAll()
25     */

26    @Override
27    public List<User> queryAll() {
28
29        return userDAO.queryAll();
30    }

31
32}

33
 
UserAction.java:Struts的action类

 1 package  com.struts.action;
 2
 3 import  java.util.List;
 4
 5 import  com.jpa.po.User;
 6 import  com.opensymphony.xwork2.ActionSupport;
 7 import  com.spring.service.UserService;
 8
 9 /** */ /**
10 * @author javaroom
11 * 
12 */

13 public   class  UserAction  extends  ActionSupport  {
14
15    private static final long serialVersionUID = 6096623410113055655L;
16
17    private UserService userService;
18    private List<User> userList;
19    private User user;
20
21    public UserAction(UserService userService) {
22        this.userService = userService;
23    }

24
25    public List<User> getUserList() {
26        return userList;
27    }

28
29    public void setUserList(List<User> userList) {
30        this.userList = userList;
31    }

32
33    public User getUser() {
34        return user;
35    }

36
37    public void setUser(User user) {
38        this.user = user;
39html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值