- 浏览: 143802 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (101)
- J2EE_Struts (0)
- J2EE_IBatis (3)
- J2EE_Maven (2)
- J2EE_Hibernate (5)
- J2EE_Spring (8)
- J2EE_SpringSecurity (2)
- J2EE_Shiro (1)
- J2EE_SpringMVC (3)
- J2EE_Sitemesh (3)
- JAVA_Basic (10)
- JAVA_WEB (11)
- JAVA_Thread (12)
- Server_Tomcat (0)
- Server_Apache (1)
- Server_JBOSS (1)
- Server_Nginx (0)
- JS (6)
- JS_JQuery (5)
- JS_ExtJS (5)
- JS_JqGrid (2)
- DB (4)
- DB_Mysql (0)
- DB_Oracle (0)
- DB_MongoDB (0)
- DB_SQLServer (1)
- DB_Redis (1)
- PHP (1)
- PHP_ThinkPHP (2)
- OS_Linux (7)
- OS_Linux_Centos (1)
- APP_Android (2)
- VMWare (0)
- SEO (0)
- Design Patterns (2)
- FLEX (1)
- 随语 (1)
最新评论
项目使用Hibernate作为数据持久层
1、添加Hibernate的依赖,在pom.xml中添加
此项不仅添加了Hibernate还添中对JPA的支持
2、配置Spring对Hibernate的支持,添加的配置文件要在web.xml中能够引用到
添加jdbc.properties,用于保存数据库连接以及Hibernate各项参数
添加applicationContext-resources.xml,注册datasource对象
添加applicationContext-common.xml
3、创建表
4、创建实体类
5、创建Dao
创建系统基础DAO类AbstractHibernateDao
创建基础DAO接口,只提供了部分方法
创建基础DAO接口实现类
创建UserDao,UserDaoImpl,UserService,UserServiceImpl各种类
5、测试一下
1、添加Hibernate的依赖,在pom.xml中添加
<dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-entitymanager</artifactId> <exclusions> <exclusion> <artifactId>cglib</artifactId> <groupId>cglib</groupId> </exclusion> <exclusion> <artifactId>dom4j</artifactId> <groupId>dom4j</groupId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.hibernate.javax.persistence</groupId> <artifactId>hibernate-jpa-2.0-api</artifactId> </dependency>
此项不仅添加了Hibernate还添中对JPA的支持
2、配置Spring对Hibernate的支持,添加的配置文件要在web.xml中能够引用到
添加jdbc.properties,用于保存数据库连接以及Hibernate各项参数
#dataSource for oracle oracle.driverClass=oracle.jdbc.driver.OracleDriver oracle.url=jdbc:oracle:thin:@localhost:1521:TRAIN oracle.username=train oracle.password=train oracle.maxIdle=1 oracle.maxActive=10 oracle.dialect=pine.core.hibernate.dialect.Oracle10gDialect oracle.show_sql=true oracle.generateDdl=false oracle.hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider oracle.hibernate.cache.use_second_level_cache=false oracle.hibernate.max_fetch_depth=2
添加applicationContext-resources.xml,注册datasource对象
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:jee="http://www.springframework.org/schema/jee" xmlns:context="http://www.springframework.org/schema/context" xmlns:lang="http://www.springframework.org/schema/lang" xmlns:security="http://www.springframework.org/schema/security" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-3.0.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.0.xsd"> <!-- PropertyConfigurer for the dataSource --> <context:property-placeholder location="classpath:jdbc.properties" /> <bean id="OracleDS" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="${oracle.driverClass}" /> <property name="url" value="${oracle.url}" /> <property name="username" value="${oracle.username}" /> <property name="password" value="${oracle.password}" /> <property name="maxIdle" value="${oracle.maxIdle}" /> <property name="maxActive" value="${oracle.maxActive}" /> </bean> </beans>
添加applicationContext-common.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" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:jee="http://www.springframework.org/schema/jee" xmlns:context="http://www.springframework.org/schema/context" xmlns:lang="http://www.springframework.org/schema/lang" xmlns:security="http://www.springframework.org/schema/security" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-3.0.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.0.xsd"> <!-- PropertyConfigurer for the dataSource --> <context:property-placeholder location="classpath:jdbc.properties" /> <context:annotation-config /> <aop:aspectj-autoproxy /> <tx:annotation-driven transaction-manager="transactionManager" /> <tx:advice id="txAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name="list*" read-only="true" /> <tx:method name="*" read-only="false" rollback-for="RollBackAppException"/> </tx:attributes> </tx:advice> <aop:config> <aop:advisor id="managerTx" advice-ref="txAdvice" pointcut="execution(* *..service.*Service.*(..))" order="2"/> </aop:config> <context:component-scan base-package="pine.web.dao"/> <context:component-scan base-package="pine.web.service"/> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> <property name="dataSource" ref="OracleDS" /> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">${oracle.dialect}</prop> <prop key="hibernate.cache.use_second_level_cache">${oracle.hibernate.cache.use_second_level_cache}</prop> <prop key="hibernate.cache.provider_class">${oracle.hibernate.cache.provider_class}</prop> <prop key="hibernate.max_fetch_depth">${oracle.hibernate.max_fetch_depth}</prop> <prop key="hibernate.show_sql">${oracle.show_sql}</prop> </props> </property> <property name="packagesToScan"> <list> <value>pine.web.model</value> </list> </property> </bean> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory"/> </bean> </beans>
3、创建表
create table SYS_USER ( ID NUMBER not null primary key, USERNAME VARCHAR2(50), PASSWORD VARCHAR2(50), FULLNAME VARCHAR2(100), DEPARTMENT_ID NUMBER )
4、创建实体类
@Entity @Table(name="SYS_USER") public class User implements Serializable { private static final long serialVersionUID = 1L; @Id @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="SEQ_USER") @SequenceGenerator(name="SEQ_USER", sequenceName="SEQ_USER") private Long id; private String username; private String password; private String fullname; ......(各种get,set方法) }
5、创建Dao
创建系统基础DAO类AbstractHibernateDao
public abstract class AbstractHibernateDao extends HibernateDaoSupport { @Resource(name="sessionFactory") public void setSuperSessionFactory(SessionFactory sessionFactory){ super.setSessionFactory(sessionFactory); } }
创建基础DAO接口,只提供了部分方法
public interface BaseDao<T> { public void save(T t); public T get(Serializable id); public T load(Serializable id); public void delete(Serializable id); public void delete(T t); public void delete(T t, LockMode lockMode); public void deleteAll(Collection<T> entities); }
创建基础DAO接口实现类
public abstract class BaseDaoImpl<T> extends AbstractHibernateDao implements BaseDao<T> { private Logger log = Logger.getLogger(BaseDaoImpl.class); protected abstract Class<T> getEntityClass(); public void save(T t) { getHibernateTemplate().save(t); }; @Override public T get(Serializable id) { return getHibernateTemplate().get(getEntityClass(), id); } @Override public T load(Serializable id) { T ob = null; try { ob = getHibernateTemplate().load(getEntityClass(), id); } catch (RuntimeException e) { if(log.isDebugEnabled()) log.debug("can't load entity by primary key", e); } if (ob == null) return get(id); return null; } @Override public void delete(Serializable id) { T ob = load(id); if (ob == null) { if(log.isDebugEnabled()) log.debug("can't delete entity by primary key:"+getEntityClass().getName()+"."+id+",object is not exist!"); return; } getHibernateTemplate().delete(ob); } @Override public void delete(T t) { getHibernateTemplate().delete(t); } @Override public void delete(T t, org.hibernate.LockMode lockMode) { getHibernateTemplate().delete(t, lockMode); } @Override public void deleteAll(Collection<T> entities) { getHibernateTemplate().deleteAll(entities); } }
创建UserDao,UserDaoImpl,UserService,UserServiceImpl各种类
@Service("UserService") public class UserServiceImpl implements UserService { @Autowired private UserDao userDao; @Override public void save(User user) { this.userDao.save(user); } @Override public void test() { User user = new User(); user.setId(1L); user.setUsername("gmm"); user.setPassword("admin"); user.setFullname("龚敏"); save(user); } }
5、测试一下
发表评论
-
web中的listener应用
2012-06-28 11:22 1151在使用web.xml配置文件的 ... -
web.xml 中的listener、 filter、servlet 加载顺序及其详解
2012-06-20 16:16 1017在项目中总会遇到一些关于加载的优先级问题,近期 ... -
maven搭建WEB项目6 - 添加系统自定义用户
2012-05-24 18:47 1375之前添加了SS3作为作为系统的权限验证框架,但用户却是 ... -
maven搭建WEB项目4 - 添加springmvc
2012-05-23 14:34 25021、添加springmvc的依赖,在pom.xml中添 ... -
maven搭建WEB项目3 - 添加springSecurity
2012-05-22 18:20 2025添加SpringSecurity支持 1、在p ... -
maven搭建WEB项目2 - 添加spring
2012-05-22 15:56 7728为web项目添加spring支持 1、在web ... -
maven搭建WEB项目1
2012-05-17 11:43 1603知识总是学过就忘,以前熟练的东西经久不用也就渐渐遗忘。 ... -
HTTP协议详解(真的很经典)
2012-02-15 15:54 738引言 ... -
web.xml文件的作用及基本配置
2011-05-11 00:04 1075一个web中完全可以没有w ... -
appfuse theme的实现原理
2010-10-28 09:35 985appfuse当中提供了多套css可以实现动态切换,达到改变外 ...
相关推荐
Maven搭建spring_struts2_Hibernate项目源码,包括数据库,博客地址:http://blog.csdn.net/fengshizty/article/details/43794911
本篇文章将深入探讨如何使用Maven作为构建工具,在Eclipse环境中搭建一个整合了Spring、Spring MVC和Hibernate的项目。 首先,让我们了解Maven。Maven是Apache开发的一款项目管理和综合工具,它通过一个项目对象...
总结,通过Maven搭建Spring MVC+Hibernate项目,我们需要配置Maven的POM文件,设置项目结构,配置Web应用的XML文件,编写实体类、Service、Controller等。这个过程涉及了多个技术栈,包括Maven的依赖管理、Spring ...
本示例将详细介绍如何使用Maven搭建一个基础的Web项目,并解决创建过程中可能出现的报错问题。 ### 一、Maven环境配置 首先,确保你已经安装了Java Development Kit (JDK),因为Maven是基于Java的。接着,下载Maven...
1. 创建 Maven 项目,添加 SpringMVC 和 Hibernate 相关的依赖。 2. 配置 SpringMVC:包括 DispatcherServlet、HandlerMapping、HandlerAdapter 等。 3. 配置 Hibernate:设置数据库连接、实体类映射等。 4. 编写 ...
在现代Java Web开发中,"Maven整合Spring+SpringMVC+Hibernate+SpringDataJPA"是一个常见的架构组合,被广泛应用于构建企业级应用程序。这个组合通常被称为"SSM",其中"M"代表Maven,"S"代表Spring,包括Spring核心...
【标题】"基于SpringMVC Hibernate Maven搭建的项目框架"是一个经典的Java企业级应用开发架构,它整合了三个强大的开源框架,旨在简化开发流程、提高代码质量和可维护性。SpringMVC作为控制层,负责处理HTTP请求并...
"Maven搭建SSH项目"是一个基础的Java Web开发模板,通过Maven管理项目构建,结合Struts2处理请求,Spring管理依赖和事务,Hibernate进行数据操作。这样的组合可以快速构建出功能完备的应用,并易于维护和扩展。理解...
SSH(Struts2、Hibernate、Spring)是一个经典的Java Web开发框架组合,用于构建高效、可维护的Web应用程序。在这个Maven项目中,这三个框架与Maven构建工具一起使用,以实现更好的依赖管理和项目构建流程。下面将详细...
通过以上步骤,我们就成功地使用Maven搭建了一个基本的SSM框架项目。当然,实际项目中还需要考虑异常处理、安全控制、国际化、日志管理等多个方面,这些都可以通过引入相应的Spring或第三方库来实现。总的来说,SSM...
第5课 使用Maven创建web项目 第6课 使用Maven构建多模块项目(一) 第7课 使用Maven构建多模块项目(二) 第8课 使用Nexus搭建Maven私服 第9课 使用Maven管理新闻系统开发-项目简介 第10课 使用Maven管理新闻系统...
在"Spring+SpringMVC+Hibernate+Maven框架搭建及配置文件源码"这个项目中,开发者可能已经包含了这些框架的配置文件,例如Spring的applicationContext.xml、SpringMVC的servlet-context.xml、Hibernate的hibernate....
<artifactId>hibernate-core <version>5.x.x.Final <groupId>org.apache.struts <artifactId>struts2-core <version>2.x.x <!-- 其他相关依赖 --> ``` 确保选择合适的版本,以确保各组件之间的兼容性。...
Jboss7上+maven搭建struts2+spring3+hibernate3完整能运行工程源码,在tomcat7上运行也成功测试了,注意:我工程文件是用myeclipse2013开发的,你需要导入自己ide的时候,会有兼容性问题:最好阁下是自己新建一个maven...
标题中的"idea工具创建的Spring+SpringMVC+Hibernate+maven项目"指的是使用IntelliJ IDEA这个集成开发环境(IDE)构建的一个Java Web项目,该项目整合了四个关键的技术框架:Spring、SpringMVC、Hibernate以及Maven...
总之,通过Maven搭建SSH框架项目,关键在于正确配置pom.xml文件中的依赖,编写合理的配置文件,以及理解各框架之间的协作机制。这个过程有助于提升开发者对Java Web开发的理解和实践能力。希望提供的源码能对学习者...
在IT行业中,构建Java...通过以上步骤,你将了解如何使用Maven搭建一个整合了Spring和Spring MVC的项目,并能够深入源码进行学习和分析。这个过程有助于提高你的Java Web开发技能,使你更好地掌握这两个强大的框架。
总之,Spring MVC、Hibernate 和 Maven 的整合提供了高效、灵活的开发环境,简化了项目的构建和维护,使得开发人员可以更专注于业务逻辑的实现,而不是基础架构的搭建。通过熟练掌握这三个框架的整合,可以极大地...
- `<dependencies>`标签用于添加项目依赖,如Servlet API、Spring、Hibernate等。 - `<dependencyManagement>`标签可以统一管理多个模块间的依赖版本。 5. **插件 (Plugins)** - Maven允许扩展其功能,通过使用...
<artifactId>hibernate-entitymanager <version>5.x.x.Final <groupId>javax.persistence <artifactId>persistence-api <version>1.0.2 <!-- 添加对应的数据库驱动,例如MySQL --> <groupId>mysql ...