当前位置: 代码迷 >> Java Web开发 >> SSH 调整出错 求大神进来帮忙分析一下
  详细解决方案

SSH 调整出错 求大神进来帮忙分析一下

热度:735   发布时间:2016-04-16 21:56:45.0
SSH 整合出错 求大神进来帮忙分析一下!
本人初学ssh,现在尝试使用eclipse写一个基于ssh的工程,就想实现简单的增删改查功能。但是访问的时候错误,请大神帮忙分析一下。
一、 准备工作
导包(此处省略)
二、建立数据库 (一张用户表)
  CREATE TABLE `user` (
  `userId` int(20) NOT NULL AUTO_INCREMENT,
  `userName` varchar(255) DEFAULT NULL,
  `age` mediumint(20) DEFAULT NULL,
  PRIMARY KEY (`userId`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;

INSERT INTO `user` VALUES ('1', '张三', '20');
INSERT INTO `user` VALUES ('2', '李四', '21');
INSERT INTO `user` VALUES ('3', '王五', '22');
INSERT INTO `user` VALUES ('4', '刘六', '23');
   
三、建立数据化持久层
1、建立实体类
 package com.niit.app.entity;

public class User {

private Integer userId;
private String userName;
private Integer age;

public User() {

}
public User(Integer userId, String userName, Integer age) {
this.userId = userId;
this.userName = userName;
this.age = age;
}
public Integer getUserId() {
return userId;
}

public void setUserId(Integer userId) {
this.userId = userId;
}

public String getUserName() {
return userName;
}

public void setUserName(String userName) {
this.userName = userName;
}

public Integer getAge() {
return age;
}

public void setAge(Integer age) {
this.age = age;
}

}

2、把实体类User的属性映射到User表,生成下面的User.hbm.xml文件
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 2014-9-3 21:30:52 by Hibernate Tools 3.4.0.CR1 -->
<hibernate-mapping>
    <class name="com.niit.app.entity.User" table="USER">
        <id name="userId" type="java.lang.Integer">
            <column name="USERID" />
            <generator class="identity" />
        </id>
        <property name="userName" type="java.lang.String">
            <column name="USERNAME" />
        </property>
        <property name="age" type="java.lang.Integer">
            <column name="AGE" />
        </property>
    </class>
</hibernate-mapping>

四、建立DAO层 
1、建立DAO的接口类:UserDAO
package com.niit.app.dao;

import java.util.List;

import com.niit.app.entity.User;

public interface UserDAO {

List<User> findAllUsers();
}

2、实现此接口的类文件,UserDAOImpl
package com.niit.app.dao.impl;

import java.util.List;
import org.springframework.orm.hibernate3.HibernateTemplate;
import com.niit.app.dao.UserDAO;
import com.niit.app.entity.User;
public class UserDAOImpl implements UserDAO{
    
private HibernateTemplate hibernateTemplate;

public HibernateTemplate getHibernateTemplate()
{
return hibernateTemplate;
}
public void setHibernateTemplate(HibernateTemplate hibernateTemplate)
{
this.hibernateTemplate = hibernateTemplate;
}
@Override
public List<User> findAllUsers() {
System.out.println("dao");
String hql = "select * from user";
@SuppressWarnings("unchecked")
List<User> uList = (List<User>) hibernateTemplate.find(hql);
return uList;
}
}

五、 建立业务逻辑层
1、创建服务接口类UserService
package com.niit.app.service;

public interface UserService {

boolean findAllUsers();
}
2、实现该接口的类UserServiceImpl
package com.niit.app.service.impl;
import java.util.List;
import com.niit.app.dao.UserDAO;
import com.niit.app.entity.User;
import com.niit.app.service.UserService;
import com.opensymphony.xwork2.ActionContext;

public class UserServiceImpl implements UserService{
    
private UserDAO userDAO;
public UserDAO getUserDAO() {
return userDAO;
}
public void setUserDAO(UserDAO userDAO) {
this.userDAO = userDAO;
}
@Override
public boolean findAllUsers() {
  相关解决方案