/**
* 根据主模块ID查询所有子模块
* @param id
* @return
*/
public List<SubModules> query(int id);
/**
* 增加一个子模块
* @param subModule
* @return
*/
public boolean add(SubModules subModule);
/**
* 根据id删除子模块
* @param id
* @return
*/
public boolean delete(int id);
/**
* 修改一个子模块
* @param subModule
* @return
*/
public boolean update(SubModules subModule);create table submodules (
"subModuleID" int identity primary key, -----子模块ID
"mainModuleid" int not null, -----所属主模块ID fk主模块 id
"subModuleName" varchar(20) not null, -----模块名
"subModuleImage" varchar(30), ------模块头像
foreign key(mainModuleid) references mainModule("mainModuleID")
)
这个dao接口怎么实现啊????
解决方案 »
- 高分求struts2整合spring和hibernate的视频教程
- log4j 可否在程序不出错的时候不生成 error.log
- 急:请帮忙解决org.apache.struts.action.RequestProcessor.processException Unhandled Exception thrown
- JBoss集群为什么性能还下降了?
- 急!!!javascript中批量删除选中项,部分代码有的,需要补充。求大神指点啊!!!
- struts 中的标签问题 <s:a></s:a>
- JavaMail中发邮件需要SMTP验证,是使用session.getInstance(properties,Authenticator)方法还是用Transport.connect(smtpHost,user,passw
- 哪里可以下到J2EE?SUN的速度太慢了!
- 100分提问javamail问题!
- 怎么用JUnit测试Socket?
- mysql中显示乱码
- 下载文件不用response 还可以用什么做?
你首先写的就不一定对, 我稍微改了一下, 一般ID我们用long型, 我这个主要是用了spring封装了事务, 也是基于hibernate的.import java.util.List;import org.hibernate.Session;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
public class CsdnDao extends HibernateDaoSupport{ /**
* �����ģ��ID��ѯ������ģ��
* @param id
* @return
*/
public List<SubModules> query(long id){
String sql = "from SubModules subModuleID = ? ";
Session session = this.getSession();
return session.createQuery(sql).setLong(0, id).list();
}
/**
* ����һ����ģ��
* @param subModule
* @return
*/
public long add(SubModules subModule){
Session session = this.getSession();
return (Long) session.save(subModule); }
/**
* ���idɾ����ģ��
* @param id
* @return
*/
public boolean delete(long id){
Session session = this.getSession();
SubModules sm = (SubModules) session.load(SubModules.class, id);
session.delete(sm);
return true;
}
/**
* ��һ����ģ��
* @param subModule
* @return
*/
public boolean update(SubModules subModule){
Session session = this.getSession();
session.update(subModule);
return true;
}
}class SubModules{
private int subModuleID; // -----子模块ID
private int mainModuleid; //----所属主模块ID fk主模块 id
private String subModuleName; //-----模块名
private String subModuleImage;
/**
* @return the subModuleID
*/
public int getSubModuleID() {
return subModuleID;
}
/**
* @param subModuleID the subModuleID to set
*/
public void setSubModuleID(int subModuleID) {
this.subModuleID = subModuleID;
}
/**
* @return the mainModuleid
*/
public int getMainModuleid() {
return mainModuleid;
}
/**
* @param mainModuleid the mainModuleid to set
*/
public void setMainModuleid(int mainModuleid) {
this.mainModuleid = mainModuleid;
}
/**
* @return the subModuleName
*/
public String getSubModuleName() {
return subModuleName;
}
/**
* @param subModuleName the subModuleName to set
*/
public void setSubModuleName(String subModuleName) {
this.subModuleName = subModuleName;
}
/**
* @return the subModuleImage
*/
public String getSubModuleImage() {
return subModuleImage;
}
/**
* @param subModuleImage the subModuleImage to set
*/
public void setSubModuleImage(String subModuleImage) {
this.subModuleImage = subModuleImage;
}
}
public List<SubModules> query(long id){
String sql = "from SubModules sm where sm.subModuleID = ? ";
Session session = this.getSession();
return session.createQuery(sql).setLong(0, id).list();
}
我还没学啊。。我只需要把那几个抽象方法实现就行啦。。
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;import com.dreams.dao.interfaces.SubModulesDao;
import com.dreams.dao.util.DBUtil;
import com.dreams.dao.vo.SubModules;
public class SubModulesDaoImpl implements SubModulesDao {
Connection conn = null;//连接对象初始化
SubModules subModules = null;//子模块对象初始化
ResultSet rs =null;//结果集对象初始化
PreparedStatement pstmt = null;//预编译对象初始化
/**
* 增加一个子模块
* @param subModule
* @return
*/
public boolean add(SubModules subModule) {
conn = DBUtil.getConnection();
try {
pstmt = conn.prepareStatement("insert into submodules values(?,?,?)");
pstmt.setString(1, String.valueOf(subModule.getSubModuleID()));
pstmt.setString(2, String.valueOf(subModule.getMainModuleid()));
pstmt.setString(3, subModule.getSubModuleName());
int count = pstmt.executeUpdate();
if(count > 1) {
return true;
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
DBUtil.close(rs, pstmt, conn);
}
return false;
} /**
* 根据id删除子模块
* @param id
* @return
*/
public boolean delete(int subModulesID) {
conn = DBUtil.getConnection();
try {
pstmt = conn.prepareStatement("delete from submodules where subModulesID=?");
pstmt.setString(1, String.valueOf(subModulesID));
int count = pstmt.executeUpdate();
if(count >1) {
return true;
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
DBUtil.close(rs, pstmt, conn);
}
return false;
}
/**
* 根据主模块ID查询所有子模块
* @param id
* @return
*/
public List<SubModules> query(int mainModuleid) {
conn = DBUtil.getConnection();
List<SubModules> list = new ArrayList<SubModules>();
try {
pstmt = conn.prepareStatement("seclet * from submodules where mainModuleid=?");
pstmt.setString(1, String.valueOf(mainModuleid));
rs = pstmt.executeQuery();
while(rs.next()) {
subModules = new SubModules();
subModules.setMainModuleid(mainModuleid);
subModules.setSubModuleName("subModuleName");
list.add(subModules);
}
} catch (SQLException e) {
e.printStackTrace();
}finally {
DBUtil.close(rs, pstmt, conn);
}
return list;
}可能会有错不过大概就是那样子咯。。大家看看哪里需要修改的。。
修改的那个方法还没写(突然想睡午觉了)!