欢迎投稿

今日深度:

Hibernte配置以及junit测试笔记,hiberntejunit笔记

Hibernte配置以及junit测试笔记,hiberntejunit笔记


Hibernate配置
junit测试
import static org.junit.Assert.*;


public class HibernateTest{
SessionFactory  factory=null;
Session session=null;
//测试之前初始化数据
@Before
public void setUp() throws Eception{
System.out.println("初始化");
Configuration config=new Configuration


().configure();

ServiceRegistry sr=new 


ServiceRegistryBuilder.applySetting(config.getProperties());
factory=config.buildSessionFactory(sr);
session=factory.openSession();



}
@After
//测试之后释放数据
public void tearDown() throws Exception{
System.out.println("结束,释放资源");
if(session.isOpen()){
session.close();
}
}

}
@Test测试方法
public void tearDown() throws Exception{
System.out.println("初始化");



} @Test
public void testAdd(){
Transaction tx=session.beginTransaction();
Person p=new Person("admin",123456,new Date


());
session.persist(p);//新增需要事务
tx.commit();


}
}
//Hibernate深入配置
access
<hibernate-mapping default-access="property">
//field(可以不需要getter/setter方法操作对象属性)
(尽量不要这样设置)
Person p=(Person)session.get(Person.class,id);//根据反射创建


对象
System.out.println(p);
<!--
1.default-access="field"对象属性状态方式设置
property:表示这个属性需要通过getter/settter方法搓澡
默认使用
2.package:指定本持久化配置文件的class的包名
auto-import:指定引入包
default-lazy:指定本持久化配置文件中的class延迟加载策略
default-cascade:指定本持久化配置文件中的class级联操作策略
<class name="Person" table="t_person">
dynamic-insert:没有赋值的属性不会参与新增操作
若为true:没有赋值的属性不会参与操作
mutable:表明该类是否允许更新
false:不允许更新,但是可以新增删除
select-before-update:true(执行更新之前先发起一条sql查询,


看看数据是否与表不一致,不一致就更新,否则不更新)
where="t_name=test2":在查询之前附带一个where查询条件
<property name="count" formula="(select (*)from 


t_Person) "/>
指定一个属性的数据来源formula对应的查询语句


public void testAdd(){


Person p=new Person();
p.setName("Xxx");
System.out.println(p);
session.beginTransaction();
session.persist(p);
tx.commit();
}
public void testUpdate(){


Person p=new Person();
p.setId(1);
p.setName("Xxx");
System.out.println(p);
session.beginTransaction();
session.Update(p);//更新需要Id
tx.commit();

}


-->
<!--property其他属性映射配置
name:指定持久化类中需要映射的属性名
column:指定表的列名(不写表示使用默认属性名)
length:指定列存储数据长度
type:指定列字段类型


-->



怎在Eclipse SDK中实现Ant构建技术与编写Junit测试样例

eclipse 早已集成junit 直接创建测试用例即可
ant同样集成着呢
详情请自行翻阅 eclipse 自带文档
 

整合ssh2遇到一个问题,好心人解答

用servlet/jsp的时候,你写的是web.xml文件,这个是特殊的,会自动reload的

但是spring的,hibernate的,struts的配置
是不会reload的

做SSH开发,要会用测试单元进行测试!
(我用的是JUnit4,你可以用Spring自带的测试工具,可以直接测试SSH整合的!)

Spring和hibernte还有Struts2.x
都是不依赖web环境的!(struts2.x Action部分)
也就是说,你开发,测试的时候,都可以不部署到Tomcat上!,而改用main或者测试工具进行编码的测试!

这个是SSH的开发方式,也是螺旋递增式开发的一部分!
 

www.htsjk.Com true http://www.htsjk.com/shujukunews/4236.html NewsArticle Hibernte配置以及junit测试笔记,hiberntejunit笔记 Hibernate配置 junit测试 import static org.junit.Assert.*; public class HibernateTest{ SessionFactory factory=null; Session session=null; //测试之前初始化数据 @Before...
相关文章
    暂无相关文章
评论暂时关闭