----------------------Maven----------------------
<dependency>
<groupId>org.jinq</groupId>
<artifactId>jinq-hibernate-legacy</artifactId>
<version>1.8.24</version>
</dependency>
----------------------applicationContext.xml----------------------
<bean id="jinqHibernateStreamProvider" class="org.jinq.hibernate.JinqHibernateStreamProvider">
<constructor-arg>
<ref bean="sessionFactory"/>
</constructor-arg>
</bean>
----------------------实际使用----------------------
import java.util.List;
import org.hibernate.SessionFactory;
import org.jinq.hibernate.JinqHibernateStreamProvider;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.annotation.Rollback;
import org.springframework.transaction.annotation.Transactional;import com.chisalsoft.aed.database.po.Admin;
@Rollback(value=false)
@Transactional(transactionManager="transactionManager")
public class TestJinq extends BaseJunitTest
{
@Autowired
private SessionFactory sessionFactory;
@Autowired
private JinqHibernateStreamProvider jinqHibernateStreamProvider;@Test
@Override
public void execute() throws Exception
{
long now = System.currentTimeMillis();
List<Admin> customers = jinqHibernateStreamProvider
.streamAll(sessionFactory.getCurrentSession(), Admin.class)
.where( c -> c.getAdminId().equals(1L) )
.toList();
for(Admin admin:customers)
{
System.out.println(admin.getRealName());
}
System.out.println("用时:"+(System.currentTimeMillis()-now));
}
}