@Test
public void query(){
Session session = HibernateUtil.openSession();
Transaction bt = session.beginTransaction();getClass();
Query query = session.createQuery("from User order by id asc",User.class);
List list = query.list();
for(User user:list){
LOG.info(user);
}
bt.commit();
session.close();
HibernateUtil.close();
}
asc:升序,desc降序
7)聚合查询
@Test
public void query(){
Session session = HibernateUtil.openSession();
Transaction bt = session.beginTransaction();getClass();
Query query = session.createQuery("select count(*) from User ",Long.class);
Long result = query.uniqueResult();
LOG.info(result);
bt.commit();
session.close();
HibernateUtil.close();
}
@Test
public void query(){
Session session = HibernateUtil.openSession();
Transaction bt = session.beginTransaction();getClass();
Query query = session.createQuery("select new com.starli.pojo.User(id,name) from User ",User.class);
List list = query.list();
for (User user : list) {
LOG.info(user);
}
bt.commit();
session.close();
HibernateUtil.close();
}
2、多表查询
1)内连接查询: inner join
@Test
public void query(){
Session session = HibernateUtil.openSession();
Transaction bt = session.beginTransaction();getClass();
Query query = session.createQuery("select u.name,r.name from User u inner join u.roles r",Object[].class);
List list = query.list();
for (Object[] o : list) {
LOG.info(Arrays.toString(o));
}
bt.commit();
session.close();
HibernateUtil.close();
}
2)左连接查询: left join
@Test
public void query(){
Session session = HibernateUtil.openSession();
Transaction bt = session.beginTransaction();getClass();
Query query = session.createQuery("select u.name,r.name from User u left join u.roles r",Object[].class);
List list = query.list();
for (Object[] o : list) {
LOG.info(Arrays.toString(o));
}
bt.commit();
session.close();
HibernateUtil.close();
}
3)右连接查询:right join
@Test
public void query(){
Session session = HibernateUtil.openSession();
Transaction bt = session.beginTransaction();getClass();
Query query = session.createQuery("select u.name,r.name from User u right join u.roles r",Object[].class);
List list = query.list();
for (Object[] o : list) {
LOG.info(Arrays.toString(o));
}
bt.commit();
session.close();
HibernateUtil.close();
}
androi中提到了布尔数组;
布尔数组默认的是false, 并且只会打印false或者是true
布尔数组的例子; 根据字符数组创建布尔数组
char[] c = {'p','u','b','l','i','c'};
//根据字符数组的长度创建布尔数组的个数
boolean[] b = new bool
文章摘自:http://blog.csdn.net/yangwawa19870921/article/details/7553181
在编写HQL时,可能会出现这种代码:
select a.name,b.age from TableA a left join TableB b on a.id=b.id
如果这是HQL,那么这段代码就是错误的,因为HQL不支持
1. 简单的for循环
public static void main(String[] args) {
for (int i = 1, y = i + 10; i < 5 && y < 12; i++, y = i * 2) {
System.err.println("i=" + i + " y="
异常信息本地化
Spring Security支持将展现给终端用户看的异常信息本地化,这些信息包括认证失败、访问被拒绝等。而对于展现给开发者看的异常信息和日志信息(如配置错误)则是不能够进行本地化的,它们是以英文硬编码在Spring Security的代码中的。在Spring-Security-core-x
近来工作中遇到这样的两个需求
1. 给个Date对象,找出该时间所在月的第一天和最后一天
2. 给个Date对象,找出该时间所在周的第一天和最后一天
需求1中的找月第一天很简单,我记得api中有setDate方法可以使用
使用setDate方法前,先看看getDate
var date = new Date();
console.log(date);
// Sat J
MyBatis的update元素的用法与insert元素基本相同,因此本篇不打算重复了。本篇仅记录批量update操作的
sql语句,懂得SQL语句,那么MyBatis部分的操作就简单了。 注意:下列批量更新语句都是作为一个事务整体执行,要不全部成功,要不全部回滚。
MSSQL的SQL语句
WITH R AS(
SELECT 'John' as name, 18 as