SpringMVC+Spring4+hibernate4实例
来源:互联网 发布:犀牛之星数据库 编辑:程序博客网 时间:2024/04/29 20:34
1、配置applicationContext.xml
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xmlns:tx="http://www.springframework.org/schema/tx"xmlns:aop="http://www.springframework.org/schema/aop"xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsdhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd"> <!--扫描类包,将标注Spring注解的类自动转化Bean,同时完成Bean的注入--><context:component-scan base-package="project.userinfo.*"></context:component-scan> <!-- 导入外部的properties文件 , 数据库配置 --> <context:property-placeholder location="classpath:db.properties" /><!-- 配置数据源 --><bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"><property name="username" value="${jdbc.user}"></property><property name="password" value="${jdbc.password}"></property><property name="driverClassName" value="${jdbc.driverClassName}"></property><property name="url" value="${jdbc.url}"></property></bean><!-- 配置SessionFactory --><bean id="sessionFactory"class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"><!-- 配置数据源属性 --><property name="dataSource" ref="dataSource"></property><property name="packagesToScan"> <list> <!-- 可以加多个包 --> <value>project.userinfo.domain</value> </list> </property><!-- 配置Hibernate方言、SQL显示 --><property name="hibernateProperties"><props> <prop key="hibernate.current_session_context_class">org.springframework.orm.hibernate4.SpringSessionContext </prop> <!-- 数据库的方言 --><!-- MySql方言--><prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop><!-- Oracle方言 --><!-- <prop key="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</prop> --><prop key="hibernate.hbm2ddl.auto">update</prop><prop key="hibernate.show_sql">true</prop><prop key="hibernate.format_sql">true</prop></props></property> <!-- 配置实体类 --> <property name="annotatedClasses"> <list> <value>project.userinfo.domain.User</value> </list> </property></bean><!-- 配置Hibernate 的事物管理器 --><bean id="transactionManager"class="org.springframework.orm.hibernate4.HibernateTransactionManager"><property name="sessionFactory" ref="sessionFactory"></property></bean><!-- 开启事务 --><!-- <tx:annotation-driven transaction-manager="transactionManager"/> --><!-- 配置事务属性 --> <tx:advice id="txAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name="get*" propagation="REQUIRED"/> <tx:method name="save*" propagation="REQUIRED"/> <tx:method name="add*" propagation="REQUIRED"/> <tx:method name="create*" propagation="REQUIRED"/> <tx:method name="insert*" propagation="REQUIRED"/> <tx:method name="*" read-only="true" /> </tx:attributes> </tx:advice> <!-- 配置事务的的切点AOP,并把事务属性与切点关联起来 --> <aop:config proxy-target-class="true"> <aop:pointcut expression="execution(* com.ytx.service.impl.*.*(..))" id="pointcut"/> <aop:advisor advice-ref="txAdvice" pointcut-ref="pointcut"/> </aop:config></beans>
2、spring-mvc.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:context="http://www.springframework.org/schema/context"xmlns:mvc="http://www.springframework.org/schema/mvc"xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsdhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd"><!-- 包下所有类扫描,以完成Bean创建和自动依赖注入的功能 --><context:component-scan base-package="project.*"/><!-- 在实际开发中通常都需要配置 mvc:annotation-driven 标签 --><mvc:annotation-driven/><mvc:resources location="/js/" mapping="/js/**"/><mvc:resources location="/css/" mapping="/css/**"/><mvc:resources location="/images/" mapping="/images/**"/><mvc:resources location="/" mapping="/**"></mvc:resources> <!-- 定义视图解析器 --> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <!-- 对模型视图名称的解析,即在模型视图名称添加前后缀 --> <property name="prefix" value="/jsp/"></property> <property name="suffix" value=".jsp"></property> </bean> </beans>
3、register.jsp 页面 使用了 bootstrap 样式插件
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" type="text/css" href="<%=basePath%>css/register.css" /> <!-- Bootstrap --><link href="<%=basePath%>bootstrap/css/bootstrap.min.css" rel="stylesheet" media="screen"><title>所有网注册</title></head><body><div class="layout"><div class="header">头部</div><div class="content"><div class="regForm"><div class="regTips"><h4 class="style-code">账号注册</h4></div><div class="regInput-name"><div class="controls input-prepend"><span class="height-ico add-on"><i class="user-ico user-icon-login"></i></span><input type="text" class="all-input-name" name="loginName" id="loginName" placeholder="请输入用户名"></div></div><div class="regInput-pass"><div class="controls input-prepend"><span class="add-on"><i class="user-ico user-icon-pass"></i></span><input type="text" class="all-input-name" name="loginPass" id="loginPass" placeholder="请输入密码"></div></div><div class="regInput-confirm"><div class="controls input-prepend"><span class="add-on"><i class="user-ico user-icon-pass2"></i></span><input type="text" class="all-input-name" name="loginconfirm" id="loginconfirm" placeholder="请再次输入密码"></div></div><div class="regInput-email"><div class="controls input-prepend"><span class="add-on"><i class="user-ico user-icon-email"></i></span><input type="text" class="all-input-name" name="loginemail" id="loginemail" placeholder="请输入邮箱"></div></div><div class="regInput-Verifcode"><div class="controls-verfcode input-prepend"><span class="add-on"><i class="user-ico user-icon-verify"></i></span><input type="text" class="all-input-Verifcode" name="loginVerifcode" id="loginVerifcode" placeholder="请输入验证码"></div></div><div class="regInput-submit"><a href="JavaScript:;" class="all-input-submit" id="subbtn" onclick="submit();">注册</a></div></div></div><div class="foot"></div></div></body></html>
4、register.css 样式
@CHARSET "UTF-8";*{margin:0 auto;padding:0 auto;}body{width:800px;height:600px;background:#139A6C;}.layout{width:780px;background:#F8F8F8;position: relative;margin:0 300px;}.header{height:120px;background:#888;}.content{width:480px;height:500px;padding: 10px; background: #fff; border-radius: 10px;position:relative;z-index:2;}.regForm{height:500px;}.regTips{height:60px;}.style-code{margin-left:30px;line-height:60px;}.regInput-name{height:60px;text-align:center;}.regInput-pass{height:60px;text-align:center;}.regInput-confirm{height:60px;text-align:center;}.regInput-email{height:60px;text-align:center;}.regInput-Verifcode{height:60px;}.regInput-submit{height:60px;}.all-input-name{padding: 8px; width: 275px; border-radius: 10px; z-index:2;position:relative; font-family: "Microsoft YaHei", "微软雅黑", verdana, sans-serif;}.all-input-Verifcode{padding: 8px; width: 155px; border-radius: 3px; border:#ccc 1px solid;position:relative; z-index:2; font-family: "Microsoft YaHei", "微软雅黑", verdana, sans-serif;}.all-input-submit{display: block; background-color: #8BCF7B; color: #fff; text-align: center; padding: 10px 0; border-radius: 4px; font-size: 18px; position:relative; top:14%;width:68%; text-align:center; height:auto; text-decoration:none; }.user-ico{background-image: url(../img/sf-icon.png); background-repeat: no-repeat; display: block; margin-top:-5px;}.user-icon-login {width: 30px; height: 30px; background-position: -50px -160px;}.user-icon-pass {width: 30px; height: 30px; background-position: -80px -160px;}.user-icon-pass2{width: 30px; height: 30px; background-position: -170px -160px;}.user-icon-email{width: 30px; height: 30px; background-position: -140px -160px;}.user-icon-verify{width: 30px; height: 30px; background-position: -110px -160px;}.controls{*display:inline-block;margin-top:16px;}.controls-verfcode{*display:inline-block;margin-top:16px;margin-left:75px;}.foot{height:34px;background-color:#888;}
5、UserController.java
/** * *//** * @author 89003422 * */package project.userinfo.controller;import java.util.List;import org.hibernate.cfg.Configuration;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.servlet.ModelAndView;import project.userinfo.domain.User;import project.userinfo.service.UserService;@Controllerpublic class UserController{ @Autowired private UserService userService; @RequestMapping("/userList") public ModelAndView userList(Model model){ System.out.println("--->开始执行control userList方法"); List<User> userList = userService.getUserList(); model.addAttribute("userList",userList); System.out.println("开始返回查询结果-->start"); return new ModelAndView("list","model",model); }}
6、UserDaoImpl.java
/** * *//** * @author 89003422 * */package project.userinfo.dao.impl;import java.util.Iterator;import java.util.List;import org.hibernate.Query;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg.Configuration;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Repository;import project.userinfo.dao.UserDao;import project.userinfo.domain.User;@Repository("userDao")public class UserDaoImpl implements UserDao{ @Autowired private SessionFactory sessionFactory; @Override public List<User> getUserList() { System.out.println("--->查询数据"); Session session = sessionFactory.openSession(); Transaction ts = session.beginTransaction(); Query query = session.createSQLQuery("select * from t_user").addEntity(User.class); //返回对象 ts.commit(); List list = query.list(); /* String hql = "from T_USER"; sessionFactory.toString(); Query query = sessionFactory.getCurrentSession().createQuery(hql);*/ System.out.println("List 结果集: "+list.toString()); Iterator itor=list.iterator(); while(itor.hasNext()){ User user=(User)itor.next(); System.out.println(user.getId()+"\t "+user.getUserName()+"\t "+user.getAge()); } session.close(); return list; }}
7、其他省略了。
0 0
- SpringMVC+Spring4+hibernate4实例
- Spring4+SpringMVC+Hibernate4整合入门与实例
- Spring4+Springmvc+Hibernate4
- spring4+springmvc+hibernate4 demo
- Spring4+Hibernate4+SpringMvc Demo
- springMVC+hibernate4.3+spring4整合
- maven+springmvc+spring4+hibernate4整合
- Spring4+Hibernate4+SpringMVC的整合
- SpringMVC+Spring4+Hibernate4框架整合
- Spring4+Hibernate4+SpringMVC整合配置
- Spring4 SpringMVC Hibernate4 Freemaker 整合例子
- springMvc+Spring4+hibernate4整合常见错误
- springMvc+spring4+hibernate4快速搭建项目
- Spring4+SpringMVC+Hibernate4+MySQL5项目搭建
- Spring4+Hibernate4
- SpringMVC+Spring4+Mybatis3整合实例
- 使用spring4和hibernate4搭建一个springmvc的框架
- spring4+springmvc+springdataJPA+hibernate4+Junit4整合懒加载问题
- 设计模式(一):创建性模式之工厂方法
- 一个数组实现两个栈
- 论敏捷开发重要性
- Hrbust 2061消息队列(优先队列应用)
- S5PV210的时钟系统(上)
- SpringMVC+Spring4+hibernate4实例
- php+中文分词scws+sphinx+mysql打造千万级数据全文搜索
- Html总结(二)
- Java集合学习之HashMap 一(JDK1.8)
- Ubuntu 14.04下安装eclipse搭建C++开发环境
- Android SharedPreference工具类
- Coreseek、Sphinx-for-chinaese、Sphinx+Scws区别
- 外部可屏蔽中断服务程序
- caffe中的normalization_layer