首先hibernate.cfg.xml构造,在该文件src文件夹

<!DOCTYPE hibernate-configuration PUBLIC  

            "-//Hibernate/Hibernate Configuration DTD 3.0//EN"  

            "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">  

    <hibernate-configuration>

    <session-factory>

        <!-- Database connection settings -->

        <property name="connection.driver.class">com.mysql.jdbc.Driver</property>

        <property name="connection.url">jdbc:mysql://192.168.1.81:3306/test</property>

        <property name="connection.username">root</property>

        <property name="connection.password">123456</property>



        <!-- JDBC connection pool (use the built-in) -->

        <property name="connection.pool_size">1</property>



        <!-- SQL dialect -->

        <property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>



        <!-- Enable Hibernate's automatic session conttext management -->

        <property name="current_session_context_class">thread</property>



        <!-- Disable the second-level cache -->

        <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>



        <!-- Echo all executed SQL to show -->

        <property name="show_sql">true</property>



        <!-- Format SQL -->

        <property name="format_sql">true</property>



        <!-- Drop and re-create the database schema on startup -->

        <property name="hbm2ddl.auto">update</property>



        <mapping resource="com/bjsxt/hibernate/Student.hbm.xml"/>

    </session-factory>

</hibernate-configuration>

Student.java 文件

package com.bjsxt.hibernate;



public class Student {

    private String uname;

    private int age;

    private String sex;



    public String getUname() {

        return uname;

    }



    public void setUname(String uname) {

        this.uname = uname;

    }



    public int getAge() {

        return age;

    }



    public void setAge(int age) {

        this.age = age;

    }



    public String getSex() {

        return sex;

    }



    public void setSex(String sex) {

        this.sex = sex;

    }



}

Student.hbm.xml的配置

<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >  

    <hibernate-mapping>  

        <class name="com.bjsxt.hibernate.Student" table="userinfo">  

            <id name="uname"></id>  

            <property name="age"/>  

            <property name="sex"/>  

        </class>  

    </hibernate-mapping>

測试的Test文件

package com.bjsxt.hibernate;



import java.util.List;



import org.hibernate.Query;

import org.hibernate.Session;

import org.hibernate.SessionFactory;

import org.hibernate.cfg.AnnotationConfiguration;



public class Test {

    public static void main(String args[]) {

        query();

    }



    // 插入数据

    public static void insert() {

        Student s = new Student();

        s.setUname("xiaoming");

        s.setSex("女");

        s.setAge(13);

        SessionFactory sessionFactory = new AnnotationConfiguration()

                .configure().buildSessionFactory();

        Session session = sessionFactory.getCurrentSession();

        session.beginTransaction();

        session.save(s);

        session.getTransaction().commit();



    }



    // 删除数据

    public static void delete() {

        Student s = new Student();

        s.setUname("xiaoming");

        SessionFactory sessionFactory = new AnnotationConfiguration()

                .configure().buildSessionFactory();

        Session session = sessionFactory.getCurrentSession();

        session.beginTransaction();

        session.delete(s);

        ;

        session.getTransaction().commit();



    }



    // 改动数据

    public static void updata() {

        SessionFactory sessionFactory = new AnnotationConfiguration()

                .configure().buildSessionFactory();

        Session session = sessionFactory.getCurrentSession();

        session.beginTransaction();

        Student s = (Student) session.get(Student.class, "xiaoming");

        if (s != null) {

            s.setSex("女");

            s.setAge(100);

            session.update(s);

            ;

            session.getTransaction().commit();

        }

    }



    // 查询数据

    public static void query() {

        SessionFactory sessionFactory = new AnnotationConfiguration()

                .configure().buildSessionFactory();

        Session session = sessionFactory.getCurrentSession();

        session.beginTransaction();

        Query query = session

                .createQuery("from Student where uname='小明' ");

        List<Student> list = query.list();

        for(Student s:list){

            System.out.println(s.getAge()+"\n");

        }

    }



}

版权声明:本文博主原创文章,博客,未经同意不得转载。

hibernate 基本和简单易用的更多相关文章

  1. FineBI:一个简单易用的自助BI工具

    过去,有关企业数据分析的重担都压在IT部门,传统BI分析更多面向的是具有IT背景的人员.但随着业务分析需求的增加,很多公司都希望为业务用户提供自助分析服务,将分析工作落实到业务人员手中.但同时,分析工 ...

  2. DataAccess通用数据库访问类,简单易用,功能强悍

    以下是我编写的DataAccess通用数据库访问类,简单易用,支持:内联式创建多个参数.支持多事务提交.支持参数复用.支持更换数据库类型,希望能帮到大家,若需支持查出来后转换成实体,可以自行扩展dat ...

  3. 快速上手seajs——简单易用Seajs

    快速上手seajs——简单易用Seajs   原文  http://www.cnblogs.com/xjchenhao/p/4021775.html 主题 SeaJS 简易手册 http://yslo ...

  4. [.net 面向对象程序设计进阶] (22) 团队开发利器(一)简单易用的代码管理工具VSS

    [.net 面向对象程序设计进阶] (22) 团队开发利器(一)简单易用的代码管理工具VSS 本篇要点:在进阶篇快要结束的时候说说源代码管理器,我们的开发,不是一个人可以完成的事,团队协作很重要,而且 ...

  5. 设计与开发一款简单易用的Web报表工具(支持常用关系数据及hadoop、hbase等)

    EasyReport是一个简单易用的Web报表工具(支持Hadoop,HBase及各种关系型数据库),它的主要功能是把SQL语句查询出的行列结构转换成HTML表格(Table),并支持表格的跨行(Ro ...

  6. 分享一个简单易用的RPC开源项目—Tatala

    http://zijan.iteye.com/blog/2041894 这个项目最早(2008年)是用于一个网络游戏的Cache Server,以及一个电子商务的Web Session服务.后来不断增 ...

  7. ZOOM - 简单易用的 jQuery 照片相册插件

    jQuery 最令人印象深刻的应用之一就是对图片的处理,它可以让帮助你在你的项目中加入一些让人惊叹的图片切换效果.ZOOM 是一款全屏效果的 jQuery 图片切换展示插件,支持键盘前后按键切换,支持 ...

  8. BasicModal - 简单易用的现代 Web App 弹窗

    BasicModal 是为现代 Web 应用程序打造的弹窗系统.它包括所有你需要显示的信息,问题或接收用户的输入.这里的弹窗还可以链接起来,所以你可以很容易地建立一个预定义顺序的安装帮助或显示对话框. ...

  9. PNotify – 简单易用的 JS 通知,消息提示插件

    PNotify 是一个 JavaScript 通知插件,前身为 Pines Notify.它旨在提供无与伦比的灵活性,同时很容易使用.它可以提供无阻塞的通知,允许用户无需关闭通知或者提示信息就可以点击 ...

随机推荐

  1. CentOS上解压ZIP乱码的解决办法

    今天在学校做实验需要解压缩一些范例程序,我准备在我的电脑上把这个实验做完,所以就把文件copy到我的CentOS里面去了. 但是万万没想到``````解压缩的时候悲剧了,用unzip解压出来一大堆乱码 ...

  2. hdu1151+poj2594(最小路径覆盖)

    传送门:hdu1151 Air Raid 题意:在一个城镇,有m个路口,和n条路,这些路都是单向的,而且路不会形成环,现在要弄一些伞兵去巡查这个城镇,伞兵只能沿着路的方向走,问最少需要多少伞兵才能把所 ...

  3. javascript它【蛇系列】第一弹:简单的蛇实现

    参考博客:http://blog.csdn.net/sunxing007/article/details/4187038 上面的博客是一个参考,竟第一次做.真让自己盲人摸象做不出来. 只是我在其上做了 ...

  4. linux+nginx+mysql+php

    LNMP(linux+nginx+mysql+php)服务器环境配置   一.简介 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为 “engine X”, 是一个高性能的 ...

  5. C/S与B/S谁与争锋之我见

    看到网上有些人在讨论C/S架构和B/S架构以及它们的发展趋势,后起之秀B/S是否真将取代C/S而存在?在发表我的观点之前,我们先来一起来回顾下C/S以及B/S. 一C/S 1.C/S概念 C/S是Cl ...

  6. 安卓---项目中插入百度地图sdk

    百度地图 应用里面 自带地图 搜房网 下载百度地图的sdk 熟悉api 注冊百度开发人员的账号 2.12 仅仅要有一个ak就能够 高版本号须要提供应用程序的包名和签名返回开发人员的序列号 使用百度地图 ...

  7. 算法学习 - 图的广度优先遍历(BFS) (C++)

    广度优先遍历 广度优先遍历是非经常见和普遍的一种图的遍历方法了,除了BFS还有DFS也就是深度优先遍历方法.我在我下一篇博客里面会写. 遍历过程 相信每一个看这篇博客的人,都能看懂邻接链表存储图. 不 ...

  8. 用KnockoutJS实现ToDoMVC代码分析

    体验地址 Knockout 版todo web app在线体验 http://todomvc.com/examples/knockoutjs/ 源码地址 项目源码地址,此地址包含了各种JS框架实现的t ...

  9. Linux下多线程查看工具(pstree、ps、pstack) (转)

    1. pstree pstree以树结构显示进程$ pstree -p work | grep adsshd(22669)---bash(22670)---ad_preprocess(4551)-+- ...

  10. 训练赛 Grouping(强连通分量缩点 + DAG求最长路)

    http://acm.sdut.edu.cn:8080/vjudge/contest/view.action?cid=158#problem/F 大致题意:给出n个人和m种关系(ti,si),表示ti ...