SQL——Hibernate SQL增删改查
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增删改查的更多相关文章
- 使用java对sql server进行增删改查
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import ...
- 四种简单的sql语句(增删改查语句)
四种简单的sql语句(增删改查语句) 一.插入语句 insert into [table] ([column],[column],[column]) values(?,?,?) 二.删除语句 dele ...
- dml语句就是你常写的sql语句,增删改查
dml语句就是你常写的sql语句,增删改查
- SQL总结之增删改查
SQL语句增删改查(总结) 一.增:有2种方法 1.使用insert插入单行数据: 语法:insert [into] <表名> [列名] values <列值> 例:ins ...
- 常见 SQL语句使用 增删改查
一.常见的增删改查(一).查:1.SELECT 列名称 FROM 表名称,其中列名可以是多个,中间用豆号分开,如SELECT LastName,FirstName FROM Persons: 2.SE ...
- python连接MySQL pymysql模块,游标,SQL注入问题,增删改查操作
pymysql模块 pymysql是用python控制终端对MySQL数据库进行操作的第三方模块 import pymysql # 1.连接数据库 client = pymysql.connect( ...
- SQL -------- 简单的增删改查
sql 结构化查询语言,一种ansi 的标准计算机语言,为了访问数据库 可以做什么:可以对数据库 和表进行创建于删除, 对表里面的数据进行增删改查. 也可以创建存储过程和视图,对表设置权限 RDBM ...
- SQL语句简单增删改查
常用数据类型 Int:整数,长度没有作用 Varchar:字符串,varchar(3)表示最多存放3个字符,1个中文或英文或符合都占1个字符 Decimal:小数,decimal(5,2)表示共存5位 ...
- SQL学习(二)SQL基础的增删改查
在测试时使用数据库时,用的比较多的就是增删改查SQL了. 一.增加(insert into ...values) 用于向表中插入新记录 1.不指定列(表示:依次插入所有列的值) insert into ...
- java对sql server的增删改查
package Database; import java.sql.*; public class DBUtil { //这里可以设置数据库名称 private final static String ...
随机推荐
- 自定义git忽略规则
输入命令 >a.o git status 此时我想让git忽略这个文件的更新 输入命令 > .gitignore echo "a.o" >> .gitign ...
- Java -- JDBC 学习--处理Blob
Oracle LOB LOB,即Large Objects(大对象),是用来存储大量的二进制和文本数据的一种数据类型(一个LOB字段可存储可多达4GB的数据).LOB 分为两种类型:内部LOB和外部L ...
- android + eclipse + 后台静默安装(一看就会)
首先要说到三个类. import android.content.pm.IPackageInstallObserver; import android.content.pm.IPackageIns ...
- pacman安装软件包出现损坏
状况 File .pkg.tar.xz is corrupted (invalid or corrupted package (PGP signature)).Do you want to delet ...
- 序列自动机—— [FJOI2016]所有公共子序列问题
序列自动机: 是一个处理子序列的自动机.就这样. 建造:(By猫老师:immoralCO猫) s[] next[][] memset(next[n], -, <<); for(int i ...
- 初探angular2
Angular2 是一款开源JavaScript库,由Google维护,用来协助单一页面应用程序运行. Angular2 是 Angular 1.x 的升级版本,性能上得到显著的提高,能很好的支持 W ...
- quartz 关闭不断输出的batch acquisition of 0 triggers ?
转: spring整合quartz定时器的项目中,如何关闭不断输出的batch acquisition of 0 triggers ? 不断输出的batch acquisition of 0 trig ...
- 【题解】亚瑟王 HNOI 2015 BZOJ 4008 概率 期望 动态规划
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=4008 一道不简单的概率和期望dp题 根据期望的线性性质,容易想到,可以算出每张卡的期望伤害, ...
- 使用K-S检验一个数列是否服从正态分布、两个数列是否服从相同的分布
假设检验的基本思想: 若对总体的某个假设是真实的,那么不利于或者不能支持这一假设的事件A在一次试验中是几乎不可能发生的.如果事件A真的发生了,则有理由怀疑这一假设的真实性,从而拒绝该假设. 实质分析: ...
- P2885 [USACO07NOV]电话线Telephone Wire
P2885 [USACO07NOV]电话线Telephone Wire 最近,Farmer John的奶牛们越来越不满于牛棚里一塌糊涂的电话服务于是,她们要求FJ把那些老旧的电话线换成性能更好的新电话 ...