搭建ssh框架项目(二)
一、创建dao层
(1)创建接口ICommonDao.java
package com.cppdy.ssh.dao;
public interface ICommonDao<T> {
public void save(T entity);
}
ICommonDao.java
(2)创建实现类CommonDaoImpl.java,实现ICommonDao.java接口、继承HibernateDaoSupport类(spring集成hibernate对数据库的增删改查)
package com.cppdy.ssh.dao.impl;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.cppdy.ssh.dao.ICommonDao;
public class CommonDaoImpl<T> extends HibernateDaoSupport implements ICommonDao<T> {
/**
* @Name: save
* @Description: 保存对象的方法
* @Parameters: T entity 对象
* @Return: 无
*/
public void save(T entity) {
this.getHibernateTemplate().save(entity);
}
}
CommonDaoImpl.java
(3)创建接口IElecTextDao.java
package com.cppdy.ssh.dao;
import com.cppdy.ssh.domain.ElecText;
public interface IElecTextDao extends ICommonDao<ElecText> {
}
IElecTextDao.java
(4)创建实现类ElecTextDaoImpl.java,实现IElecTextDao.java接口、继承实现类CommonDaoImpl.java
package com.cppdy.ssh.dao.impl; import com.cppdy.ssh.dao.IElecTextDao;
import com.cppdy.ssh.domain.ElecText; public class ElecTextDaoImpl extends CommonDaoImpl<ElecText> implements IElecTextDao { }
ElecTextDaoImpl.java
二、配置spring的beans.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <!-- 创建sessionFactory,这是spring整合hibernate的入口 -->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation">
<value>
classpath:hibernate.cfg.xml
</value>
</property>
</bean> <bean id="elecTextDao" class="com.cppdy.ssh.dao.impl.ElecTextDaoImpl">
<property name="sessionFactory" ref="sessionFactory"/>
</bean> </beans>
beans.xml
三、配置事物自动提交(在hibernate.cfg.xml加入<property name="hibernate.connection.autocommit">true</property>)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- 数据库用户名 -->
<property name="hibernate.connection.username">root</property>
<!-- 数据库密码 -->
<property name="hibernate.connection.password">root</property>
<!-- 数据库驱动 -->
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<!-- 数据库连接地址 -->
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/ssh</property>
<!-- 事物自动提交 -->
<property name="hibernate.connection.autocommit">true</property>
<!-- 配置方言 -->
<property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property>
<!-- 无表自动创建,有表自动追加数据 -->
<property name="hibernate.hbm2ddl.auto">update</property>
<!-- 显示sql语句 -->
<property name="hibernate.show_sql">true</property>
<!-- 映射文件 -->
<mapping resource="com/cppdy/ssh/domain/ElecText.hbm.xml"/>
</session-factory>
</hibernate-configuration>
hibernate.cfg.xml
四、创建测试类TestDao.java
package junit; import java.util.Date;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext; import com.cppdy.ssh.dao.IElecTextDao;
import com.cppdy.ssh.domain.ElecText; public class TestDao {
@Test
public void saveElecText(){
ApplicationContext ac = new ClassPathXmlApplicationContext("beans.xml");
IElecTextDao elecTextDao = (IElecTextDao)ac.getBean("elecTextDao");
//实例化PO对象,赋值,执行保存
ElecText elecText = new ElecText();
elecText.setTextName("测试DAO名称");
elecText.setTextDate(new Date());
elecText.setTextRemark("测试DAO备注");
elecTextDao.save(elecText);
}
}
TestDao.java
五、查看数据库

六、项目结构

搭建ssh框架项目(二)的更多相关文章
- 搭建ssh框架项目(一)
一.创建web项目 二.导入jar包 三.创建数据库(MySQL) 四.建立javaBean对象(ElecText.java),属于持久层对象(PO对象) package com.cppdy.ssh. ...
- 搭建ssh框架项目(五)
一.控制层优化 (1)创建BaseAction.java类 package com.cppdy.ssh.web.action; import javax.servlet.http.HttpServle ...
- 搭建ssh框架项目(四)
一.创建控制层 (1)创建VO值对象,对应页面表单的属性值 package com.cppdy.ssh.web.form; /** * VO值对象,对应页面表单的属性值 * VO对象与PO对象的关系: ...
- 搭建ssh框架项目(三)
一.创建业务层 (1)创建业务层接口IElecTextService.java package com.cppdy.ssh.service; import com.cppdy.ssh.domain.E ...
- Java之基于Eclipse搭建SSH框架(下)
在上篇博客里,我简介了Tomcat滴配置与Struts2滴搭建,假设对这个还不会滴童鞋去看一下我滴上篇博客<Java之基于Eclipse搭建SSH框架(上)>.今天我们接着上篇博客滴内容. ...
- myeclipse搭建SSH框架
搭建SSH框架 Struts+hibernater+spring架构(myeclipse) 右击,首先加入spring,加入hibernater,再加入struts2 复制jar包(把tomcat发布 ...
- 脚手架快速搭建springMVC框架项目
apid-framework脚手架快速搭建springMVC框架项目 rapid-framework介绍: 一个类似ruby on rails的java web快速开发脚手架,本着不重复发明轮 ...
- SSH框架项目开发命名规范
SSH 框架项目开发命名规范 一.各层包及类命名规范 总体原则:包名所有字母小写,类名采用 "驼峰标识",具体如下: 1. Action 类 包命名规范:co ...
- Maven环境下搭建SSH框架
© 版权声明:本文为博主原创文章,转载请注明出处 1.搭建环境 Maven:3.3.9 Struts2:2.5.10 Spring:4.3.8.RELEASE Hibernate:5.1.7.Fina ...
随机推荐
- Shell变量的取用、删除、取代与替换
<<鸟哥的私房菜>> 注意: 通配符适用的地方:shell命令行或者shell脚本中 正则表达式适用的地方:字符串处理时,一般有一般正则和Perl正则. 在文本过滤工具里,都是 ...
- 【BLUESKY的NOIp模拟赛】解题报告
昨天晚上熬夜熬得有点严重,今天比赛的时候状态不好,成绩爆炸... 不得不说BLUESKY007 出的题还是相当不错的,也为我提醒了几个需要补的漏洞方向,这里作一下整理. \(Task 1\):探索 ...
- 九、java容器
目录 一.容器的概念 二.Cpllection接口 三.Iterator接口 四.增强的for循环 五.Set接口 六.List接口和Comparable接口 八.Map接口 九.自动打包/解包 十. ...
- git 线上回滚问题纪要
1. git revert 作用 revert 用来取消置顶的提交的内容 2. 前提说明 当讨论 revert 时,需要分两种情况,因为 commit 分为两种: 一种是常规的 commit,也就是使 ...
- 小程序Promise不支持finally解决方案
小程序Promise不支持finally解决方案 代码片段 点击链接即可在微信开发者工具中查看代码wechatide://minicode/t2eidemj7P3X git地址 基本思路 小程序的Pr ...
- android ListView 分页加载数据
1.mainActivity <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" ...
- pyqt5的使用目录
pyqt5的安装 我的第一个例子 标签控件QLabel的使用 按钮QPushButton 信号与槽 pyqt5模块介绍 pycharm活动模板 QObject 定时器 QWidget类-坐标系 ...
- OpenCV入门(2)- Java第一个程序
1.下载和安装OpenVC环境 从官方连接 https://opencv.org/releases.html 下载Windows的安装包 下载下来的就是一个压缩包,安装解压后,对Java开发有效的目录 ...
- rest framework错误笔记——AssertionError: Cannot apply DjangoModelPermissionsOrAnonReadOnly on a view that does not set `.queryset` or have a `.get_queryset()` method.
用到@api_view装饰器时,访问路由查看api数据时,报错: AssertionError: Cannot apply DjangoModelPermissionsOrAnonReadOnly o ...
- struts2在配置文件与JSP中用OGNL获取Action属性
参考:Struts与OGNL结合 struts2在配置文件中可以调用Action的属性,在JSP页面也可以取出Action的属性值(前提是属性有get,set方法). 第一个例子: 1.Action中 ...