hibernate 和jdbc
来源:互联网 发布:淘宝风筝 编辑:程序博客网 时间:2024/06/05 14:18
软件 项目文档 src 结构 分析
Action 包 存放 所有的控制器
控制页面跳转
DAO 实现数据访问层 对数据增加 修改删除 查询 分页 等 功能
Hibernate 系统 类 主要作用 产生session
Po 实体类 与配置 文件 myeclipse db工具 自动 生存 数据库 表结构确定
Service 服务层调用 dao数据访问层 代码
Util 存放 分页 工具辅助类
Hibernate 程序
Dao 层 代码总结
公用的数据访问代码
Session session=HibernateSessionFactory.getSession();//活动session
Transaction transaction=null;// 声明 一个 事务对象
try {
transaction=session.beginTransaction();//开启事务
transaction.commit();//提交事务
} catch (Exception ex) {
// TODO: handle exception
ex.printStackTrace();
transaction.rollback();//回滚事务
}
HibernateSessionFactory.getSession();//关闭session
执行 数据库操作
查询 列表数据 返回 list列表
singers = session.createQuery(sql).list();
保存对象
session.save(singer);
分页 查询数据
Query query = session.createQuery("from Song s where s.cpuser.id ='" + cpuserId +"'order by (flag) DESC");
query.setMaxResults(page.getEveryPage());
query.setFirstResult(page.getBeginIndex());
list = query.list();
查询记录条数
Query query = session.createQuery("from Song s where s.cpuser.id ='" + cpuserId +"'");
count = query.list().size();
根据字符串查找对象
song = (Song)session.get(Song.class, songId);
删除对象
session.delete(song);
更新对象
session.update(song);
Jdbc 封装分析
第一步
public void connbestdb(){
String url =
"jdbc:sqlserver://localhost:1433;databaseName=BESTJ2EE";
try {
conn = DriverManager.getConnection(Constant.URL,Constant.USERNAME,Constant.PASSWORD);
stmt =conn.createStatement();
} catch (SQLException ex) {
System.out.println("------在建立数据库连接时抛出异常,内容如下:");
ex.printStackTrace();
}
}
关闭 数据库
public void closedb() {
//先判断欲关闭对象是否为空,如果为空则跳过
if (rs !=null) {
try {
rs.close();
rs =null;
} catch (SQLException ex) {
ex.printStackTrace();
}
}
if (stmt !=null) {
try {
stmt.close();
stmt =null;
} catch (SQLException ex) {
ex.printStackTrace();
}
}
if (conn !=null) {
try {
conn.close();
conn =null;
} catch (SQLException ex) {
ex.printStackTrace();
}
}
}
数据库操作
public boolean executeSQL(String sqlString) {
boolean executeFlag;
try {
stmt.execute(sqlString);
executeFlag =true;
} catch (Exception e) {
executeFlag =false;
System.out.println("sql exception:" + e.getMessage());
}
return executeFlag;
}
//插入记录
public void insert(String sql) {
try {
stmt.executeUpdate(sql);
}catch(SQLException ex) {
System.out.println("------在插入记录时抛出异常,内容如下:");
ex.printStackTrace();
}
}
//修改记录
public void update(String sql) {
try {
stmt.executeUpdate(sql);
}catch(SQLException ex) {
System.out.println("------在修改记录时抛出异常,内容如下:");
ex.printStackTrace();
}
}
//删除记录
public void delete(String sql) {
try {
stmt.executeUpdate(sql);
} catch (SQLException ex) {
System.out.println("------在删除记录时抛出异常,内容如下:");
ex.printStackTrace();
}
}
//查询记录,返回结果集
public ResultSet select(String sql) {
try {
System.out.println(sql);
rs =stmt.executeQuery(sql);
} catch (SQLException ex) {
System.out.println("------在查询记录时抛出异常,内容如下:");
ex.printStackTrace();
}
return rs;
}
public int GetSqlRecount(String sql){
int recount=0;
try{
System.out.println(sql);
rs =stmt.executeQuery(sql);
while(rs.next()) {
recount=recount + 1;
}
return recount;
}catch(SQLException ex){
System.out.println("------在查询记录时抛出异常,内容如下:");
ex.printStackTrace();
return -1;
}
}
- hibernate.jdbc.fetch_size 和 hibernate.jdbc.batch_size
- hibernate.jdbc.fetch_size 和 hibernate.jdbc.batch_size
- hibernate.jdbc.fetch_size 和 hibernate.jdbc.batch_size
- hibernate.jdbc.batch_size和hibernate.jdbc.Fetch_Size
- hibernate.jdbc.fetch_size 和 hibernate.jdbc.batch_size
- hibernate.jdbc.fetch_size 和 hibernate.jdbc.batch_size
- hibernate.jdbc.fetch_size 和 hibernate.jdbc.batch_size
- hibernate.jdbc.fetch_size 和 hibernate.jdbc.batch_size
- hibernate 和jdbc
- hibernate和JDBC
- hibernate和jdbc区别
- hibernate之hibernate.jdbc.fetch_size和hibernate.jdbc.batch_size
- Hibernate和JDBC、EJB比较
- JDBC和Hibernate的区别
- Hibernate和jdbc的区别
- Hibernate和jdbc事务原理
- jdbc和hibernate的对比
- hibernate查询和jdbc查询
- AngularJs directive指令详解
- 用 Scrapy+Mariadb 实现汉典数据爬虫(二)——Scrapy简单介绍
- 最小生成树(一)....Prme算法
- Maven 版本对应的 JDK 版本
- 51nod 1770 数数字
- hibernate 和jdbc
- 经典手眼标定算法之Tsai-Lenz的OpenCV实现
- 染纱厂ERP系统截图(2)
- php小总结
- ubuntu 12.04 LTS 如何使用更快的更新源
- 创建,删除,显示数据库
- hdu 3836 Equivalent Sets【强连通Kosaraju+缩点染色】
- [Matlab] MxArray 与 MwArray 使用区别
- TCP/IP详解