1.查询list数据

  实例:user login

public String userLogin(){
Session session = HibernateSessionFactory.getSession();
Transaction tran = session.beginTransaction();
String sqlString = "select * from userinfo where username='"+user.getUsername()+"' and password='"+user.getPassword()+"'";
ulist = session.createSQLQuery(sqlString).addEntity(UserInfo.class).list();//通过sql语句查询列表
session.close();
//使用迭代器遍历每个用户
Iterator it = ulist.iterator();
while(it.hasNext()){
user = (UserInfo) it.next();
}
//控制台输出
System.out.println(ulist.size()+"--"+user.getUsername()+user.getPassword()+"-- id:"+user.getUserid());
if(ulist.size()==0){
return "ERROR";
}
return "SUCCESS";
}

  实例:查询所有数据

/**
* persons list 显示person列表信息
*/
@SuppressWarnings("unchecked")
public String personList(){
Session session = HibernateSessionFactory.getSession();
Transaction tran = session.beginTransaction();
String hqlString = "select * from person";
plist = session.createSQLQuery(hqlString).addEntity(Person.class).list();
//获取session,存储list列表
ActionContext actionContext = ActionContext.getContext();
Map<String, Object> s = actionContext.getSession();
s.put("personList", plist);
session.close();
return "SUCCESS";
}

2.通过sql添加数据

public String addPerson(){
Session session = HibernateSessionFactory.getSession();
Transaction tran = session.beginTransaction();
String sql = "INSERT INTO person (SELECT MAX(personid+1)," +//找出最大的id+1 赋给新的id
"'"+person.getPersonname()+"'," +
"'"+person.getMobilephone1()+"'," +
"'"+person.getMobilephone2()+"'," +
"'"+person.getSex()+"'," +
"'"+person.getBirthday()+"'," +
"'"+person.getPnative()+"'," +
"'"+person.getAddress()+"'," +
"'"+person.getEmail()+"'," +
"'"+person.getDescribe()+"'," +
+person.getGroupid()+
" FROM person)";
session.createSQLQuery(sql).executeUpdate();//执行更新操作
tran.commit();
System.out.println(person.getPersonid()+"--"+person.getPersonname());
session.close();
return "SUCCESS";
}

3.根据id查找数据

/**
* 根据id找到person
* @param id
* @return
*/
public String findPersonById(){
int personid = Integer.parseInt(ServletActionContext.getRequest().getParameter("id"));
Session session = HibernateSessionFactory.getSession();
session.load(person, personid);//根据id查询一条记录
//获取session,存储list列表
ActionContext actionContext = ActionContext.getContext();
Map<String, Object> s = actionContext.getSession();
s.put("person", person);
session.close();
return "SUCCESS";
}

4.删除一条记录

/**
* 根据id删除person
* @return
*/
public String deletePerson(){
int personid = Integer.parseInt(ServletActionContext.getRequest().getParameter("id"));
person.setPersonid(personid); Session session = HibernateSessionFactory.getSession();
Transaction tran = session.beginTransaction();
session.delete(person);
tran.commit();
return "SUCCESS";
}

5.更新一条记录

/**
* 根据id更新person
* @return
*/
public String updatePerson(){
Session session = HibernateSessionFactory.getSession();
Transaction tran = session.beginTransaction();
String sql = "UPDATE person SET " +
"personname='"+person.getPersonname()+"'," +
"mobilephone1='"+person.getMobilephone1()+"'," +
"mobilephone2='"+person.getMobilephone2()+"'," +
"sex='"+person.getSex()+"'," +
"birthday='"+person.getBirthday()+"'," +
"native='"+person.getPnative()+"'," +
"address='"+person.getAddress()+"'," +
"email='"+person.getEmail()+"'," +
"pdescribe='"+person.getDescribe()+"',"+
"groupid="+person.getGroupid()+
" WHERE personid=" +person.getPersonid();
session.createSQLQuery(sql).executeUpdate();
tran.commit();
session.close();
return "SUCCESS";
}

SQL——Hibernate SQL增删改查的更多相关文章

  1. 使用java对sql server进行增删改查

    import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import ...

  2. 四种简单的sql语句(增删改查语句)

    四种简单的sql语句(增删改查语句) 一.插入语句 insert into [table] ([column],[column],[column]) values(?,?,?) 二.删除语句 dele ...

  3. dml语句就是你常写的sql语句,增删改查

    dml语句就是你常写的sql语句,增删改查

  4. SQL总结之增删改查

      SQL语句增删改查(总结) 一.增:有2种方法 1.使用insert插入单行数据: 语法:insert [into] <表名> [列名] values <列值> 例:ins ...

  5. 常见 SQL语句使用 增删改查

    一.常见的增删改查(一).查:1.SELECT 列名称 FROM 表名称,其中列名可以是多个,中间用豆号分开,如SELECT LastName,FirstName FROM Persons: 2.SE ...

  6. python连接MySQL pymysql模块,游标,SQL注入问题,增删改查操作

    pymysql模块 pymysql是用python控制终端对MySQL数据库进行操作的第三方模块 import pymysql # 1.连接数据库 client = pymysql.connect( ...

  7. SQL -------- 简单的增删改查

    sql  结构化查询语言,一种ansi 的标准计算机语言,为了访问数据库 可以做什么:可以对数据库 和表进行创建于删除, 对表里面的数据进行增删改查. 也可以创建存储过程和视图,对表设置权限 RDBM ...

  8. SQL语句简单增删改查

    常用数据类型 Int:整数,长度没有作用 Varchar:字符串,varchar(3)表示最多存放3个字符,1个中文或英文或符合都占1个字符 Decimal:小数,decimal(5,2)表示共存5位 ...

  9. SQL学习(二)SQL基础的增删改查

    在测试时使用数据库时,用的比较多的就是增删改查SQL了. 一.增加(insert into ...values) 用于向表中插入新记录 1.不指定列(表示:依次插入所有列的值) insert into ...

  10. java对sql server的增删改查

    package Database; import java.sql.*; public class DBUtil { //这里可以设置数据库名称 private final static String ...

随机推荐

  1. ubuntu 环境 celery配置全解

    继续尝试没有时间弄明白的技术. celery官方文档地址:http://docs.celeryproject.org/en/stable/getting-started/introduction.ht ...

  2. Java中一些jar包的作用

    axis.jar SOAP引擎包 commons-discovery-0.2.jar 用来发现.查找和实现可插入式接口,提供一些一般类实例化.单件的生命周期管理的常用方法. jaxrpc.jar Ax ...

  3. delphi7调用数据库连接属性

    背景:连接数据库用ADOQuery控件,但是程序一旦编译完成,如果想更改数据库连接设置还得重新修改ADOQuery的属性重新编译 如果可以在程序中可以随时设置ADOQuery的属性则会方便很多. 实现 ...

  4. codeforces500B

    New Year Permutation CodeForces - 500B User ainta has a permutation p1, p2, ..., pn. As the New Year ...

  5. 一本通1587【例 3】Windy 数

    1587: [例 3]Windy 数 时间限制: 1000 ms         内存限制: 524288 KB 题目描述 原题来自:SCOI 2009 Windy 定义了一种 Windy 数:不含前 ...

  6. 美国运营商推送假5G图标:用户当场蒙圈了

    面对5G大潮,大家都想“争当第一”.美国运营商AT&T想出奇招,打算玩一把“障眼法”. 据外媒报道,AT&T的用户从明年开始会在手机右上角看到“5G E”的图标.当然,这并不是他们的手 ...

  7. Gitblit 的安装使用

    1.下载gitblit,可以网上下载,也可以在下面云盘链接取 gitblit-1.8.0  下载链接:https://pan.baidu.com/s/1x7dnbyDp1FmYjMosJbGR8w 密 ...

  8. 简单易懂的博弈论讲解(巴什博弈、尼姆博弈、威佐夫博弈、斐波那契博弈、SG定理)

    博弈论入门: 巴什博弈: 两个顶尖聪明的人在玩游戏,有一堆$n$个石子,每次每个人能取$[1,m]$个石子,不能拿的人输,请问先手与后手谁必败? 我们分类讨论一下这个问题: 当$n\le m$时,这时 ...

  9. 转载:OSG::Quat(四元数)用法

    转自:http://blog.163.com/dj_zone/blog/static/4908931320098294047820/ osg::Quat To set the attitude of ...

  10. [HNOI/AHOI2018]转盘

    一个结论:一定存在一个最优解只走一圈.否则考虑从最后一个结束位置开始一定可以达到相同效果 画个图,类似是一种斜线感觉 考虑一个高度贡献的最高点 对于i开始的连续n个,答案是:max(Tj-j)+i+n ...