12 2012 档案

摘要:1. 组件映射概述 组件类是值类型的,它没有对象标识符属性,在数据库中没有对应的表,它只隶属于另一个持久化类的实例。 把组件类作为持久化类的单个属性来使用 把组件类作为持久化类的集合属性来使用2.组件映射(User-Name)关联的属性是个复杂类型的持久化类,但不是实体即:数据库中没有表与该属性对应,但该类的属性要永久保存的。<component name=”name” class=”com.test.hibernate.domain.Name”> <property name=”initial”/> <property name=”first”/> ... 阅读全文
posted @ 2012-12-25 20:11 流-星-追-月 阅读(111) 评论(0) 推荐(0)
摘要:集合映射一、Set<set name=”employees” > <key column=”depart_id”/> <one-to-many class=”Employee”/> <!-- <element type="string" column="name"/> --> <!-- <composite-element class=”YourClass”> <property name=”prop1”/> <property name=”prop2”/&g 阅读全文
posted @ 2012-12-25 09:07 流-星-追-月 阅读(139) 评论(0) 推荐(0)
摘要:[html] view plaincopyprint? 这里与多对多不同的是借用了一个中间类StudentCourse来达到把多对多的问题转换为多对一的问题,下面来举例具体介绍: 先看看三个最重要的xxx.hbm.xml文件内部信息 Student.hbm.xml <?xml version="1.0"?> Course.hbm.xml <?xml version="1.0"?> StudentCourse.hbm.xml <?xml version="1.0"?> 再看看测试文件TestApp.j 阅读全文
posted @ 2012-12-24 19:39 流-星-追-月 阅读(173) 评论(0) 推荐(0)
摘要:在做持久化类的时候的规定:1).有一个默认的构造方法;2).所有的属性都有setter和getter方法3).有一个对象标识符Oid;4).如果有集合属性,则必须定义成接口类型:List、Set、Map。不能定义成类类型HashSet、hashMap、ArrayList等1.Hibernate 高级映射<set>元素:可以映射java.util.Set接口的属性,元素没有顺序且不允许重复。<list>元素:可以映射java.util.List接口的属性,有顺序,需要在集合属性对应的表中用一个额外的索引保存每个元素的位置。<bag> <idbag> 阅读全文
posted @ 2012-12-24 19:37 流-星-追-月 阅读(139) 评论(0) 推荐(0)
摘要:1.主要类与接口Hibernate。Hibernate通过Configuration的实例加载配置文件信息,然后读取指定对象关系映射文件的内容并创建SessionFactory实例。SessionFactory接口负责初始化Hibernate。一个SessionFactory实例对应一个数据库。应用程序从SessionFactory中获得Session实例。Session接口Session被称为持久化管理器,负责管理与持久化相关的操作:存储、更新、删除和加载对象。Transaction接口是Hibernate框架的事务接口。它对底层的事务接口做了封装。包括:JDBC API和JTA。2. Se 阅读全文
posted @ 2012-12-18 19:27 流-星-追-月 阅读(148) 评论(0) 推荐(0)
摘要:JDBC的优点直接底层操作,提供了很简单、便捷的访问数据库的方法,跨平台性比较强。灵活性比较强,可以写很复杂的SQL语句。JDBC的缺点1).因为JAVA是面向对象的,JDBC没有做到使数据能够面向对象的编程,使程序员的思考仍停留在SQL语句上。2).操作比较繁琐,很多代码需要重复写很多次。3).如果遇到批量操作,频繁与数据库进行交互,容易造成效率的下降。Jdbc是一个比较底层的东西,灵活写SQL语句1)、注册驱动2)、获得连接3)、产生一个Statement4)、进行操作返回数据ResultSet 1)、new List对象2)、把ResultSet数据放入List过程中A a = new 阅读全文
posted @ 2012-12-18 19:22 流-星-追-月 阅读(140) 评论(0) 推荐(0)
摘要:本文包含两部分内容。第一部分是在eclipse下配置项目自身的连接池,这块有问题的比较多主要解决两个异常。第二部分是在Tomcat下配置全局连接池,这块有官方文档问题较少,简单过一下。本文的样例老规律,您可以在文尾下载到他。其中,测试获取连接写法如下:Java代码 // 获取Content对象 javax.naming.Context ctx = new javax.naming.InitialContext();javax.sql.DataSource ds = (javax.sql.DataSource)ctx.lookup("java:/comp/env/jdbc/webdb& 阅读全文
posted @ 2012-12-14 16:19 流-星-追-月 阅读(570) 评论(1) 推荐(0)
摘要:本文向大家介绍Hibernate C3P0连接池,可能好多人还不了解Hibernate C3P0连接池,没有关系,看完本文你肯定有不少收获,希望本文能教会你更多东西。Hibernate自带的连接池算法相当不成熟。 它只是为了让你快些上手,并不适合用于产品系统或性能测试中。 出于最佳性能和稳定性考虑你应该使用第三方的连接池。只需要用特定连接池的设置替换 hibernate.connection.pool_size即可。这将关闭Hibernate自带的连接池。 例如, 你可能会想用C3P0.Hibernate C3P0连接池是一个随Hibernate一同分发的开源的JDBC连接池, 它位于lib目 阅读全文
posted @ 2012-12-14 16:16 流-星-追-月 阅读(235) 评论(0) 推荐(0)
摘要:JSP和Servlet的中文乱码处理前几天学习了JSP和Servlet中有关中文乱码的一些问题,写成了博客,今天进行更新一下。应该是可以解决日常的乱码问题了。现在作以下总结希望对需要的人有所帮助。我也是刚学,所以有不足之处希望谅解。一、表单提交时出现乱码:在进行表单提交的时候,经常提交一些中文,自然就避免不了出现中文乱码的情况,对于表单来说有两种提交方式:get和post提交方式。所以请求的时候便有get请求和post请求。以前我一直以为get请求和post请求方式出现的乱码的解决方式是一样的,但是今天才知道两种请求方式所产生的乱码的解决方式是不同的。每种方式都有着不同的解决方法,之所以出现乱 阅读全文
posted @ 2012-12-14 16:13 流-星-追-月 阅读(129) 评论(0) 推荐(0)
摘要:1.可以在servlet的init方法里String path = getServletContext().getRealPath("/");这将获取web项目的全路径例如 :E:\eclipseM9\workspace\tree\tree是我web项目的根目录2.你也可以随时在任意的class里调用this.getClass().getClassLoader().getResource("/").getPath();这将获取 到classes目录的全路径例如 : E:\eclipseM9/workspace/tree/WEB-INF/classes/这 阅读全文
posted @ 2012-12-14 16:10 流-星-追-月 阅读(261) 评论(0) 推荐(0)
摘要:Servlet事件监听器、监听servletContext域对象创建和销毁、监听三个域对象属性变化监听器监听器就是一个实现特定接口的普通java程序,这个程序专门用于监听另一个java对象的方法调用或属性改变,当被监听对象发生上述事件后,监听器某个方法将立即被执行。Servle监听器在Servlet规范中定义了多种类型的监听器,它们用于监听的事件源分别为ServletContext, HttpSession 和 ServletRequest这三个域对象。Servlet规范针对这三个对象上的操作,又把这多种类型的监听器划分为三种类型。监听三个域对象创建和销毁的事件监听器监听域对象中属性的增加和删 阅读全文
posted @ 2012-12-11 21:31 流-星-追-月 阅读(1249) 评论(0) 推荐(0)
摘要:为什么要学习CVS•项目开发靠的是一个团队的能力,很少有大中型项目是由个人完成的。对于团队开发来讲---能控制每个人的分工和权限,可以让多个人同时编辑同一份代码,并由程序来提醒两次修改中存在的冲突,可以查看某一处改动是谁做的---类似这样的需求就显得尤为重要。这也是学习CVS的缘由,它可以很好的解决上述问题。 知识要点 –CVS概述 –CVS下载与配置 –CVS使用示例 现今的大多数应用程序是由多人组成的团队开发的。即使只涉及几个开发人员的小项目,也需要对源代码的更改进行严格控制。这就是源代码管理软件的任务。源代码版本控制软件必须支持两个核心功能: •提供一种方法,能够协调对团队开发者对源代码 阅读全文
posted @ 2012-12-06 18:52 流-星-追-月 阅读(520) 评论(0) 推荐(0)
摘要:1、禁止浏览器缓存所有动态页面的过滤器:(1)有 3个 HTTP 响应头字段都可以禁止浏览器缓存当前页面,它们在 Servlet中的示例代码如下:①response.setDateHeader("Expires",-1);Expires数据头:值为GMT时间值,为-1指浏览器不要缓存页面②response.setHeader("Cache-Control","no-cache");Cache-Control响应头有两个常用值:no-cache指浏览器不要缓存当前页面。max-age:xxx指浏览器缓存页面xxx秒。③response. 阅读全文
posted @ 2012-12-05 15:24 流-星-追-月 阅读(126) 评论(0) 推荐(0)
摘要:ServletFilter(过滤器)二一、Filter常见的应用(二)------不缓存页面1、禁止浏览器缓存所有动态页面的过滤器:(1)有3个HTTP响应头字段都可以禁止浏览器缓存当前页面,它们在Servlet中的实例代码如下:response.setDateHeader("Expires",-1);response.setHeader("Cache-Control","no-cache");response.setHeader("Pragma","no-cache");(2)、并不是所有的浏 阅读全文
posted @ 2012-12-04 16:45 流-星-追-月 阅读(186) 评论(0) 推荐(0)
摘要:一、Filter简介1、Filter也称之为过滤器,它是Servlet技术中最激动人心的技术,WEB开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp,Servlet,静态图片文件或静态html文件等进行拦截,从而实现一些特殊的功能。例如实现URL级别的权限访问控制、过滤敏感词汇、压缩响应信息等一些高级功能。2、ServletAPI中提供了一个Filter接口,开发web应用时,如果编写的java类实现了这个接口,则把这个java类称之为过滤器Filer。通过Filter技术,开发人员可以实现用户在访问某个目标资源之前,对,访问的请求和响应进行拦截。如下所示:二、Fi 阅读全文
posted @ 2012-12-04 16:44 流-星-追-月 阅读(206) 评论(0) 推荐(0)