这篇文章主要讲解了“如何使用Hibernate,MyBatis,Bee框架”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何使用Hibernate,MyBatis,Bee框架”吧!

贡觉网站建设公司创新互联建站,贡觉网站设计制作,有大型网站制作公司丰富经验。已为贡觉上千提供企业网站建设服务。企业网站搭建\外贸营销网站建设要多少钱,请找那个售后服务好的贡觉做网站的公司定做!
一、Hibernate入门实例
1.1 代码例子
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
public class Client {
public static void main(String[] args) {
SessionFactory sf = new Configuration().configure().buildSessionFactory(); //为什么要有这种类似模板的语句
Session s = null;
Transaction t = null;
try{
//准备数据
UserModel um = new UserModel();
um.setUuid("1");
um.setUserId("id1");
um.setName("name1");
s = sf.openSession(); //为什么要有这种类似模板的语句
t = s.beginTransaction(); //为什么就一个语句s.save(um),也需要显示声明事务
s.save(um);
t.commit(); //为什么就一个语句s.save(um),也需要显示提交事务
}catch(Exception err){
t.rollback();
err.printStackTrace();
}finally{
s.close();
}
}
}1.2 配置xxx.hbm.xml
1:与被描述的类同名 ,如:UserModel.hbm.xml
2:存放位置与所描述类存放在同一文件夹下
3:主要有如下四部分配置 :
(1)类和表的映射
(2)主键的映射
(3)类的属性和DB中字段的映射
(4)关系的映射
1.3 日志不够人性化, 看不懂
测试:直接在Elipse里面运行Client文件即可,运行结束,你将会看到在console输出:“Hibernate: insert into tbl_user (userId, name, age, uuid) values (?, ?, ?, ?)”,打开数据库的数据表,你会看到一条值已经加入了。
参考:https://www.jb51.net/article/123469.htm
二、MyBatis入门实例
2.1 代码例子
9 import org.apache.ibatis.session.SqlSession;
10 import org.apache.ibatis.session.SqlSessionFactory;
11 import org.apache.ibatis.session.SqlSessionFactoryBuilder;
//插入用户
55 public void testInsertUser(){
56 SqlSessionFactory sqlSessionFactory = SqlSessionFactoryUtils.getSqlSessionFactory();//1 这种代码,可以不用程序员写吗
57 SqlSession sqlSession = sqlSessionFactory.openSession();//2 这种代码,可以不用程序员写吗
58
59 User user = new User();
60 user.setUsername("貂蝉");
61 user.setSex("0");
62 user.setBirthday(new Date());
63 user.setAddress("吕布");
64
65 //执行插入语句
66 sqlSession.insert("user.insertUser",user);
67 //提交事务
68 sqlSession.commit(); //3 这种代码,可以不用程序员写吗
69 //释放资源
70 sqlSession.close(); //4 这种代码,可以不用程序员写吗
71 }public class SqlSessionFactoryUtils {
2 private SqlSessionFactoryUtils(){}
3
4 private static class SqlSessionFactoryInstance{
5
6 public static SqlSessionFactory sqlSessionFactory;
7
8 static {
9 try {
10 sqlSessionFactory = new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream("SqlMapConfig.xml"));
11 } catch (IOException e) {
12 e.printStackTrace();
13 }
14 }
15 }
16
17 public static SqlSessionFactory getSqlSessionFactory(){
18 return SqlSessionFactoryInstance.sqlSessionFactory;
19 }
20
21 }2.2 写mapper配置文件
创建UserMapper.xml映射文件
那么简单, 还要写SQL语句??!!
3738 INSERT INTO USER (`username`,`birthday`,`sex`,`address`)39 VALUES (#{username},#{birthday},#{sex},#{address})40
2.3 日志,也是占位符, 虽然多了显示参数类型. 但还是与Hibernate一样:日志不够人性化, 看不懂
#{} 和${} 有区别,其中一个有注入风险。
参考:https://www.cnblogs.com/gdwkong/p/8734020.html
三、Bee入门实例
3.1 例子代码
两行Bee相关代码,就可以将数据插入DB。
import org.teasoft.bee.osql.Suid;
import org.teasoft.exam.bee.osql.entity.Orders;
import org.teasoft.honey.osql.core.BeeFactoryHelper;
public class SimpleExam {
public static void main(String[] args) {
Suid suid=BeeFactoryHelper.getSuid(); //1
Orders orders1=new Orders();
orders1.setId(100001L);
orders1.setName("Bee(ORM Framework)");
suid.insert(orders1); //2
}
}3.2 Bee无需要xml配置文件
3.3 日志友好,方便开发调试
3.3.1
[INFO] [Bee] insert SQL: insert into orders(id,name) values (?,?) [values]: 100001,Bee(ORM Framework)
[INFO] [Bee] | <-- Affected rows: 1
3.3.2
[INFO] [Bee] insert SQL: insert into orders(id,name) values (?,?) [values]: 100001,Bee(ORM Framework)
[INFO] [Bee] insert SQL: ( ExecutableSql )
insert into orders(id,name) values (100001,'Bee(ORM Framework)')
[INFO] [Bee] | <-- Affected rows: 1
多了一个:
insert into orders(id,name) values (100001,'Bee(ORM Framework)') -- 这个是可以直接运行的语句,方便开发人员调试
只需要添加配置:
bee.osql.showSql.showExecutableSql=true
3.3.3
[INFO] [Bee] insert SQL: insert into orders(id,name) values (?,?) [values]: 100001(Long),Bee(ORM Framework)(String) [INFO] [Bee] insert SQL: ( ExecutableSql ) insert into orders(id,name) values (100001,'Bee(ORM Framework)') [INFO] [Bee] | <-- Affected rows: 1
100001(Long),Bee(ORM Framework)(String)
只需要添加配置:
bee.osql.showSql.showType=true
bee.osql.showSql.showExecutableSql=true
感谢各位的阅读,以上就是“如何使用Hibernate,MyBatis,Bee框架”的内容了,经过本文的学习后,相信大家对如何使用Hibernate,MyBatis,Bee框架这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!
网站题目:如何使用Hibernate,MyBatis,Bee框架
文章链接:http://www.jxjierui.cn/article/pssoje.html


咨询
建站咨询
