- 浏览: 16476 次
- 性别:
- 来自: 广州
最新评论
-
lyuno:
Cross_Lee 写道System.out.println( ...
内存地址、运算符号优先级、 -
Cross_Lee:
System.out.println("====&g ...
内存地址、运算符号优先级、 -
lyuno:
macrotea 写道是啊这个是必须的!正因为这个问题我发了一 ...
关于BaseDAO要注意的问题 -
macrotea:
是啊这个是必须的!正因为这个问题我发了一个帖子问网上的人,如何 ...
关于BaseDAO要注意的问题
文章列表
内存地址、运算符号优先级、
- 博客分类:
- 要注意的问题
package com.juno.test;
public class test1 {
public static void main(String[] args) {
String a = "abc";
String b = "abc";
System.out.println("====>" + a == b);
}
}
这样输出的是:false
没错!只是”false“没有任何其它特殊符号、
如果代码改成
System.out.println( a == b);
那么就是tru ...
第一种:
Image组件的源地址是中文的,比如resources/数学/高等数学/math.jpg;
tomcat中的server.xml中配置端口的那段加上 URIEncoding="utf-8";
直接访问资源地址如:http://localhost:8080/WebTest/reso ...
页头:header 如:#header{属性:属性值;}或.header{属性:属性值;},也许你需要了解class与id区别及用法
登录条:loginBar
标志:logo
侧栏:sideBar
广告:banner
导航:nav
子导航:subNav
菜单:menu
子菜单:subMenu
搜索:search
滚动:scroll
页面主体:main
内容:content
标签页:tab
文章列表:list
提示信息:msg
小技巧:tips
栏目标题:title
加入:joinus
指南:guild
服务:service
热点:hot
新闻:news
下载:download
注册:regsi ...
第一次查询一个数据的时候!1、2级都没有!肯定去数据库找!这时候找出来、会放到1、2级里面!
这时候session关闭了、再去找同一个数据!因为session缓存(也就一级)已经关闭了、所以这时候回去二级找、又由于、第一次查询的时候、已经放到二级里面去了、所以它会到二级里面找到!
如果找出来的这些数据修改了的话!二级缓存里面的数据会失效、下一次找、就会去数据库里面找、
最后!保存一个对象的时候、是不会保存到缓存的!是查询的时候才会保存到缓存!!
虽然用hibernate来帮助建表、这种做法有点非主流、但是还是懂多点好!
让hibernate自动建表有两种方法、第一种:直接配置hibernate.cfg.xml配置文件、
第二种、就是像下面这样、写个建表类!我个人觉得、还是写个建表类好!
因为表是创建一次就可以的了!如果用了配置文件的话、配置属性:
<property name="hibernate.hbm2ddl.auto">create</property>
这样的话!你运行一次之后、你不改成update、或者none的话、它就会在每运行一次、就创建一次表!
所以、以下方法比较为优
p ...
用到struts2-jquery-plugin插件的时候、
记住!什么时候、最强大的还是api!
http://code.google.com/p/struts2-jquery/wiki/HeadTag
<sj:head loadAtOnce="true" jquerytheme="%{#session.ui_theme}" jqueryui="true" />
此处省略N个字~!~最后总结一句:加上 loadAtOnce="true"、可以省很多心!
。
首先要说明一下Open Session in View的作用,就是允许在每次的整个request的过程中使用同一个hibernate session,可以在这个request任
何时期lazy loading数据。
如果是singleSession=false的话,就不会在每次的整个request的过程中使用同一个hibernate session,而是每个数据访问都会产生各自的seesion,等于没有Open Session in View.
OpenSessionInViewFilter默认是不会对session 进行flush的,并且flush mode 是 never
代码:
...
、引用茶叶写的一个baseDAO
package com.juno.dao.service;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import org.hibernate.SessionFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.orm.hibernate3.support.HibernateDaoSup ...
直接代码、不解析!
package test;
import java.util.HashSet;
import java.util.Set;
public class Test {
public static void main(String[] args) {
Set<Integer> result = new HashSet<Integer>();
Set<Integer> set1 = new HashSet<Integer>(){{
add(1);
add(3);
add(5); ...
get()和load()
试图从数据库加载一个实体对象时,Session先判断对象是否存在,如果存在就不到数据库中检索。返回的对象都位于Session缓存中,接下来修改了持久化对象的属性后,当Session清理缓存时,会根据持久化对象的属性变化来同步更新数据库。
区别:
(1)当数据库中不存在与OID对应的记录时,load()方法抛出ObjectNotFoundException异常,而get()方法返回null.
(2)两者采用不同的检索策略。
默认情况下,load()方法采用延迟检索策略(Hibernate不会执行 ...
Hibernate的缓存管理
一级缓存的管理:
evit(Object obj) 将指定的持久化对象从一级缓存中清除,释放对象所占用的内存资源,指定对象从持久化状态变为脱管状态,从而成为游离对象.
clear() 将一级缓存中的所有持久化对象清除,释放其占用的内存资源
contains(Object obj) 判断指定的对象是否存在于一级缓存中.
flush() 刷新一级缓存区的内容,使之与数据库数据保持同步.
二级缓存的管理:
evict(Class arg0, Serializable arg1) 将某个类的指定ID的持久化对象从二级缓存中清除,释 ...
在向大家详细介绍Hibernate二级缓存之前,首先让大家了解下一级缓存,然后全面介绍Hibernate二级缓存。
Hibernate中提供了两级Cache,第一级别的缓存是Session级别的缓存,它是属于事务范围的缓存。这一级别的缓存由hibernate管理的 ...
UrlRewriteFilter是一个用于改写URL的Web过滤器,类似于Apache的mod_rewrite。适用于任何Web应用服务器(如Resin,Orion,Tomcat等)。其典型应用就把动态URL静态化,便于搜索引擎爬虫抓取你的动态网页。
UrlRewriteFilter is a Java Web Filter for any J2EE compliant web application server (such as Resin, Orion or Tomcat), which allows you to rewrite URLs before they get to yo ...
Catalina下的文件
是tomcat编译你的项目后,产生的文件,
也就是你的项目的class文件(如果不是java文件,则直接复制,比如jsp等)
也就是说,你把项目的原文件放入webapps,当tomcat启动的时候,就会把
这个文件夹下的项目,进行编译,然后存放到Catalina目录下,
当别人访问的时候,就是访问这里的文件
弄个例题,直观一点。两个表:
--表stu
id name
1, Jack
2, Tom
3, Kity
4, nono
--表exam
id grade
1, 56
2, 76
11, 89
内连接 (显示两表id匹配的)
select stu.id,exam.id,stu.name, exam.grade from stu inner join exam on stu.id=exam.id
stu.id exam.id name grade
--------------------------------
1 1 Jack 56
2 2 Tom ...