Maven + Spring + Hibernate + Struts2 整合第一部分

近来没有什么事,感觉SSH2在整合的时候经常会出问题,鉴于现在Maven管理比较流行,就把那他们写一块,来个整合吧。

首先在Mysql中建立一个test数据库,运行下面sql语句生成users表:

drop table if exists users;
create table users(
id int(10) not null auto_increment,
name varchar(45) not null,
password varchar(20) not null,
primary key(id)
)engine=InnoDB;

利用maven生成一个web工程的框架, 代码如下:

mvn archetype:create ^
-DgroupId=localhost.login ^
-DartifactId=CommonLogin ^
-DarchetypeArtifactId=maven-archetype-webapp
//注意如果是linux环境,在需要吧^换成\

当然了现在你就可以把这个工程导入IDE中了,也可以运行下面命令生成eclipse工程
首先进入CommonLogin目录,运行

mvn eclipse:eclipse

导入到eclipse以后,加入一下依赖说明:

<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<version>3.2.6.ga</version>
</dependency>

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.0.5</version>
</dependency>

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.5.6</version>
</dependency>

<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.0.6</version>
</dependency>

<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-tlds</artifactId>
<version>2.0.6</version>
<type>tld</type>
</dependency>
</dependencies>

点击run as Maven package, 就会去网上下载这些依赖包,这个过程可能比较慢。
现在我们建立两个目录,分别是存放源文件和测试源文件的:

src/main/java
src/test/java

现在我们建立POJO User,比较简单:

package localhost.login;

public class User {
private int id;

private String name;

private String password;

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}


}


建立UserDAO接口,代码如下:

package localhost.login.dao;

import java.util.List;

import localhost.login.domain.User;

public interface UserDAO {
public String addUser(User user);
public List<User> findUserByName(String name);
public List<User> listAll();
}

接着进行实现UserDAO,建立UserDAOImpl类

package localhost.login.dao;

import java.util.List;

import localhost.login.domain.User;

import org.springframework.dao.DataAccessException;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

public class UserDAOImpl extends HibernateDaoSupport implements UserDAO{
@Override
public String addUser(User user) {
String success = "";
String name = user.getName();
if(findUserByName(name).size() == 0){
try {
getHibernateTemplate().save(user);
success = "User saved ok!";
} catch (DataAccessException e) {
success = "Sorry, user can't be added.";
}
} else {
success = "The username has been existed!";
}
return success;
}

@SuppressWarnings("unchecked")
@Override
public List<User> findUserByName(String name) {
return getHibernateTemplate().find("from User users where users.name = ?",name);
}

@SuppressWarnings("unchecked")
@Override
public List<User> listAll() {
return getHibernateTemplate().find("from User");
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值