二、配置数据源、SessionFactory、domain对象

1.在applicationContext.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:tx="http://www.springframework.org/schema/tx"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsdhttp://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd"><!-- 配置数据源 --><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"><property name="driverClassName" value="com.mysql.jdbc.Driver"></property><property name="url" value="jdbc:mysql://localhost:3306/ssh?characterEncoding=utf-8"></property><property name="username" value="root"></property><property name="password" value="123456"></property><!-- 连接池启动时的初始值 --><property name="initialSize" value="3"></property><!-- 连接池的最大值 --><property name="maxActive" value="500"></property><!-- 最大空闲值,当经过一个高峰时间后,连接池可以慢慢讲已经不用的一些链接慢慢释放一部分,抑制减少到最小空闲值 --><property name="maxIdle" value="2"></property><!-- 最小空闲值 ,当空闲的连接数少于阀值,连接池就会预申请一些连接,以免洪峰来时来不及申请--><property name="minIdle" value="1"></property>    </bean></beans>

2.在applicationContext.xml中配置会话工厂

    <!-- 配置会话工厂 --><bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"><!-- 设置数据源 --><property name="dataSource" ref="dataSource"></property><!-- 接管hibernate对象映射文件 --><property name="mappingResources"><list><value></value></list></property><property name="hibernateProperties"><value>hibernate.dialect=org.hibernate.dialect.MySQLDialecthibernate.hbm2ddl.auto=updatehibernate.show_sql=truehibernate.format_sql=true</value></property></bean>

 3.在src目录下新建包com.myz.domain,搞定domain对象

  3.1在domain包下新建Employee类

package com.myz.domain;import java.util.Date;public class Employee {private Integer id;//编号private String name;//名字private String email;//邮件private Date hiredate;//雇用日期private Float salary;//工资private String password;//密码private Integer grade;//等级public Employee() {}public Employee(Integer id, String name, String email, Date hiredate,Float salary, String password, Integer grade) {super();this.id = id;this.name = name;this.email = email;this.hiredate = hiredate;this.salary = salary;this.setPassword(password);this.setGrade(grade);}public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getEmail() {return email;}public void setEmail(String email) {this.email = email;}public Date getHiredate() {return hiredate;}public void setHiredate(Date hiredate) {this.hiredate = hiredate;}public Float getSalary() {return salary;}public void setSalary(Float salary) {this.salary = salary;}public void setGrade(Integer grade) {this.grade = grade;}public Integer getGrade() {return grade;}public void setPassword(String password) {this.password = password;}public String getPassword() {return password;}
}

  3.2新建Employee.hbm.xml

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.myz.domain"><class name="Employee" table="employee"><id name="id" type="java.lang.Integer"><generator class="assigned"></generator></id><property name="name" type="java.lang.String"><column name="name"></column></property><property name="email" type="java.lang.String"><column name="email" length="64"></column></property><property name="hiredate"><column name="hiredate"></column></property><property name="salary" type="java.lang.Float"><column name="salary"></column></property><property name="password" type="java.lang.String"><column name="password"></column></property><property name="grade" type="java.lang.Integer"><column name="grade"></column></property></class>
</hibernate-mapping>

  3.3在applicationContext.xml中,让sessionFactory管理Employee.hbm.xml

<!-- 配置会话工厂 --><bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"><!-- 设置数据源 --><property name="dataSource" ref="dataSource"></property><!-- 接管hibernate对象映射文件 --><property name="mappingResources"><list><value>com/myz/domain/Employee.hbm.xml</value></list></property><property name="hibernateProperties"><value>hibernate.dialect=org.hibernate.dialect.MySQLDialecthibernate.hbm2ddl.auto=updatehibernate.show_sql=truehibernate.format_sql=true</value></property></bean>

 

 

4.在com.myz.test中测试如下代码

package com.myz.test;import java.util.Date;import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;import com.myz.domain.Employee;public class Test {public static void main(String[] args) {ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml");SessionFactory sf=(SessionFactory) ac.getBean("sessionFactory");Session openSession = sf.openSession();Employee employee=new Employee(5, "jack", "241@qq.com", new Date(), 3000f,"123456",1);Transaction ts=openSession.beginTransaction();openSession.save(employee);ts.commit();}
}

发现控制台输出sql语句,并且数据库中增加了表employee,表中有添加的一条数据,测试成功!

转载于:https://www.cnblogs.com/myz666/p/8434115.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/571187.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IDEA建立Spring MVC Hello World 详细入门教程

引子&#xff0c;其实从.NET转Java已经有几个月时间了&#xff0c;项目也做了不少&#xff0c;但是很多配置都是根据公司模板或者网上教程比忽略画瓢&#xff0c;对其中最简单的配置和设置并不完全理解&#xff0c;依旧是小白用户。最近项目不忙&#xff0c;重新梳理了一下Spri…

java offsetdatetime_Java OffsetDateTime withHour()用法及代码示例

Java中OffsetDateTime类的withHour()方法返回此OffsetDateTime的副本&#xff0c;其中一天中的小时数按照参数中的指定进行了更改。用法:public OffsetDateTime withHour(int hour)参数&#xff1a;此方法接受单个参数hour&#xff0c;该参数指定要在结果中设置的一天中的小时&…

2048小游戏代码解析 C语言版

2048小游戏&#xff0c;也算是风靡一时的益智游戏。其背后实现的逻辑比较简单&#xff0c;代码量不算多&#xff0c;而且趣味性强&#xff0c;适合作为有语言基础的童鞋来加强编程训练。本篇分析2048小游戏的C语言实现代码。 前言 游戏截图&#xff1a; 游戏实现原理&#xff1…

java中Decimaformat_Java中 DecimalFormat 用法详解

对Java中 DecimalFormat 的所有基础用法进行了一个汇总。DecimalFormat 类主要靠 # 和 0 两种占位符号来指定数字长度。0 表示如果位数不足则以 0 填充&#xff0c;# 表示只要有可能就把数字拉上这个位置。下面的例子包含了差不多所有的基本用法。import java.text.DecimalForm…

java的栈堆的理解_理解堆与栈 - 一步一个脚印 - BlogJava

一、引言&#xff1a;一直不太明白堆与栈到底是什么&#xff0c;是指一块内存区呢&#xff0c;还是指一种数据结构&#xff1f;编写程序中总提到内存分配的栈与堆的区别&#xff0c;静态与动态分配等&#xff0c;总也弄不明白&#xff0c;隐约知道一点&#xff0c;但总分不清堆…

【递归与递推】青蛙过河

题目描述 有一条河&#xff0c;左边一个石墩(A区)上有编号为1&#xff0c;2&#xff0c;3&#xff0c;4&#xff0c;…&#xff0c;n的n只青蛙&#xff0c;河中有k个荷叶(C区)&#xff0c;还有h个石墩(D区)&#xff0c;右边有一个石墩(B区)&#xff0c;如下图2—5所示。n只青蛙…

人民币读法的java程序_Java浮点数转人民币读法

packagetheTest;public classNumToRmb {private String[] hanArr{"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};private String[] unitArr{"仟",&quo…

python arp欺骗

使用python构造一个arp欺骗脚本 import os import sys from scapy.all import * import optparse def main():usage"usage:[-i interface] [-t IP to attack] [-g Gateway IP]"parseroptparse.OptionParser(usage)parser.add_option(-i,destinterface,helpselect int…

java 如何使用dylib,如何在应用程序中使用dylib文件?

I have created lib.dylib dynamic library. I want to use that library in my application.What are the Build setting and build phase settings are required?Steps to use the library in objective-c.解决方案so there are 2 ways...1) if the Dyld is available at li…

python中的基本数据结构

要点概论&#xff1a; 1.了解序列 2.掌握列表 3.掌握元组 4.掌握字符串 5.掌握字典 6.掌握json 1.序列 在python中&#xff0c;最基本的数据结构是序列。 python提供了列表&#xff0c;元组&#xff0c;字符串等序列类型&#xff0c;可以进行某些特定的操作&#xff0c;这些操作…

java对字符串归一化_搜索引擎中的字符串归一化 | 学步园

搜索引擎中对于Q查询&#xff0c;都会涉及到字符串归一化这个步骤&#xff0c;以提高结果召回率。字符串的归一化包括三个方面&#xff1a;繁体转简体&#xff1b;全角字符转半角&#xff1b;大写字母转小写。建倒排时&#xff0c;会先对字符串做归一化处理&#xff0c;然后再分…

java对外sdk提供接口_Android SDK封装,对外提供接口

项目中需要把连接服务器的部分做成一个service并生成一个jar模块。其他产品就可通过这个包来快速的开发连接服务器的应用软件。做成一个service的优点是&#xff1a;1&#xff0e; 在后台运行&#xff0c;可以一直保持与服务器的连接2&#xff0e; 服务可以只对外提供接口&…

hdu3265一种错误的做法

题目链接 这是求面积并的题目&#xff0c;刚开始我的思路是将挖去的矩形的入边和出边覆盖效果颠倒&#xff0c; 即入边-1&#xff0c;出边1&#xff0c;后来调试到爆炸&#xff0c;发现这是错误的做法。。原因就是对最简单 的面积并问题没有搞清楚。刚开始接触扫描线的时候我就…

java综合案例_综合实例 - Java House - BlogJava

packagebedeck;publicclassBedeckDome {/** 实例变量* *///类中不能实例化对象publicStringstr1;//无初始值&#xff0c;可以被任何类访问protectedStringstr2;//无初始化值&#xff0c;可以被同一包中的所有类访问&#xff0c;可以被所有子类访问privateStringstr3;//无初始化…

53-C++ CH08 01

http://lx.lanqiao.cn/problem.page?gpidT407 算法训练 C CH08 01 时间限制&#xff1a;1.0s 内存限制&#xff1a;256.0MB问题描述已知一个有理数类Zrf_Ratio&#xff0c;实现如下的操作符重载形式&#xff1a;friend std::ostream& operator<<(std::ostream&am…

Linux文件系统选择

自己想做的&#xff0c;刘爱贵在2010年就做完了(⊙ω⊙) http://blog.csdn.net/liuaigui/article/details/5521024 通过综合使用多种标准文件系统Benchmarks对Ext3, Ext4, Reiserfs, XFS, JFS, Reiser4的性能测试对比&#xff0c;对不同应用选择合适的文件系统给出以下方案&…

java里shake是什么意思_shake是什么意思_shake在线翻译_英语_读音_用法_例句_海词词典...

使振作起来 shock sb into activityshake sth ⇔ upShake up the salad-dressing before you put it on.加色拉调料之前先把它摇匀。shake sth ⇔ upMother ran round the room shaking up all the cushions when the door-bell rang.母亲正在屋里跑来跑去忙着抖松所有的坐垫,这…

php截断上传,截断在文件包含和上传中的利用

截断大概可以在以下情况适用include(require)file_get_contentsfile_exists所有url中参数可以用%00控制0x01. 本地文件包含1.1 截断类型&#xff1a;php %00截断截断条件&#xff1a;php版本小于5.3.4 详情关注CVE-2006-7243php的magic_quotes_gpc为OFF状态漏洞文件lfi.php要in…

解决虚拟机安装64位系统“此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态”的问题...

环境说明&#xff1a;系统&#xff1a;Windows 8.1 简体中文专业版 虚拟机&#xff1a;VMware Workstation 11.0.0 报错&#xff1a;此主机支持 Intel VT-x&#xff0c;但 Intel VT-x 处于禁用状态。如图&#xff1a; 图片原文如下&#xff1a; 已将该…

php checkbox 保存,PHP中在数据库中保存Checkbox数据

PHP中在数据库中保存Checkbox数据/* if we passed in an array of the checkboxes we wantto be displayed as checked */foreach ($arr as $ele) {$str . "< td >< input type"checkbox" name"$name" value"$ele- >id"";…