日期:2014-05-20 浏览次数:20818 次
ORM映射框架:
?对象到关系型数据库的映射
?
O/R Mapping
?
Hibernate的二级缓存
只缓存实体对象
二级缓存也称进程级缓存也称sessionFactory级的缓存,二级缓存可以被所有的session所共享(与一级缓存区别),二级缓存的生命周期和SessionFactory的生命周期一致,SessionFactory可以管理二级缓存
?
巴巴运动网
Oscash支持页面局部缓存,页面缓存
Hibernate的二级缓存
?
?
得到缓存后还得执行return? mapping.findForward(“product”);? 执行这句话比较耗时
Oscache的缓存
?
?
?
?jsp中得到url
?
String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
?
1、? Jsp的内置对象,以及各自的作用
1、? request表示HttpServletRequest对象。它包含了有关浏览器传送过来的请求的信息,并且提供了几个用于获取cookie, header,和session数据的有用的方法。
2、? response表示HttpServletResponse对象,并提供了几个用于 设置送回 浏览器的响应的方法(如cookies,头信息等)
3、? out对象是javax.servlet.jsp.JspWriter的一个实例,并提供了几个方法使你能用于向浏览器回送输出结果。
4、? pageContext表示一个javax.servlet.jsp.PageContext对象。它是用于方便存取各种范围的名字空间、servlet相关的对象的API,并且包装了通用的servlet相关功能的方法。
5、? session表示一个请求的javax.servlet.http.HttpSession对象。Session可以存贮用户的状态信息
6、? applicaton 表示一个javax.servle.ServletContext对象。这有助于查找有关servlet引擎和servlet环境的信息
7、? config表示一个javax.servlet.ServletConfig对象。该对象用于存取servlet实例的初始化参数。
8、? page表示这个Jsp本身,通过它可以对Jsp本身进行访问,只有在Jsp页面的范围之内才是合法的
9、? exception, 当某个Jsp页面产生了异常时,会转到某个error页面,这个exception就是上个页面中产生的异常。再,exception只可以用在isErrorPage=”true”的那个页面中,否则将不能编译这个Jsp文件
2、? 四种会话跟踪技术
1、? page代表与一个页面相关的对象和属性。一个页面由一个编译好的 Java Servlet 类表示(可以带有任何的 include 指令,但是没有 include 动作)。这既包括 Servlet 又包括被编译成 Servlet 的 JSP 页面
2、? request代表由Web 客户机发出的一个请求相关的对象和属性。一个请求可能跨越多个页面,涉及多个web组件(由于 forward 指令和 include 动作的关系)
3、? session代表与用于某个web客户机的一个用户体验相关的对象和属性。一个web会话可以也经常会跨越多个客户机请求request
application代表与整个web应用程序相关的对象和属性。这实质上是跨越整个web应用程序,包括多个页面、请求和会话的一个全局作用域
?
application:ServletContext config:ServletConfig out:JspWriter page:object pageContext:PageContext request:HttpServletRequest response:HttpServletResponse session:HttpSession
?
1、? 四种会话跟踪技术
1、? page代表与一个页面相关的对象和属性。一个页面由一个编译好的 Java Servlet 类表示(可以带有任何的 include 指令,但是没有 include 动作)。这既包括 Servlet 又包括被编译成 Servlet 的 JSP 页面
2、? request代表由Web 客户机发出的一个请求相关的对象和属性。一个请求可能跨越多个页面,涉及多个web组件(由于 forward 指令和 include 动作的关系)
3、? session代表与用于某个web客户机的一个用户体验相关的对象和属性。一个web会话可以也经常会跨越多个客户机请求request
4、? application代表与整个web应用程序相关的对象和属性。这实质上是跨越整个web应用程序,包括多个页面、请求和会话的一个全局作用域
?
?
3、jsp中的动作,作用?
1、jsp:include,在页面被请求的时候,引入一个文件
2、jsp:useBean,寻找或实例化一个JavaBean
3、jsp:setProperty,设置JavaBean的属性
4、jsp:getProperty,输出某个JavaBean的属性
5、jsp:forward,把请求转到一个新的页面
6、jsp:plugin,根据Brower类型,为Java插件生成OBJECT或EMBED标记
?
4、forward [U1]?和redirect的区别
1、forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。
?
Oscache缓存可以把内容通过一个map缓存到内存中,取的时候直接从内存读取数据,速度比从硬盘中读取静态页面还快。
专业的缓存工具Oscache站在整个应用的角度上考虑缓存问题,hibernate二级缓存只能缓存业务层中的实体对象,不能缓存其他内容,Oscache不仅可以缓存实体对象,还可以缓存页面其他内容
Velocity模板
Web应用中最影响性能的地方是数据库瓶颈,解决了数据库瓶颈,软件的性能就可以提升上百倍。解决问题的方法是要减少和数据库的交互,为了减少和数据库的交互,几乎各大门户网站都使用了页面静态化和缓存技术,对于一些不经常修改的页面应该实现静态化,如新闻页面/产品展示页面,对于一些经常修改,但在短时间内又不会发生变化的内容,我们应该采用页面静态化。
8、如何实现Servlet的单线程模式 isThreadSafe = “true | false”.如果值为“true”(缺省)表示:将进行普通的servlet处理,多个请求将被一个servlet实例并行处理,在这种情况下,编程人员同步访问多个实例变量。值为“false”时表示:servlet将实现单线程模式(SingleThreadModel),不管请求是顺序提交还是并发出现,都将提供不同的分离的servlet实例。 9、页面间传递对象的方法 request,session,application,cookie等 ?
?
?
?