- 博客(0)
- 资源 (38)
- 收藏
- 关注
ssh详细整合
Spring 3.0.6
struts 2.3.3
hibernate 3.6.8
SSH 整合方案步骤
======================================================
1.加入jar文件
commons-collections-3.1.jar
commons-fileupload-1.2.2.jar
commons-io-2.0.1.jar
commons-lang3-3.1.jar
freemarker-2.3.19.jar
struts2-core-2.3.3.jar
struts2-dojo-plugin-2.3.3.jar
struts2-spring-plugin-2.3.3.jar
xwork-core-2.3.3.jar
javassist-3.12.0.GA.jar
2013-07-16
怎么创建表空间以及用户
1.创建用户kaifa(密码亦为kaifa),并分配connect,create table,resource权限。
a.创建表空间
create tablespace dm
logging
datafile 'D:\app\Administrator\oradata\dm.dbf'
size 8m
autoextend on
next 8m maxsize 32m;
b.在表空间下创建用户
create user dm identified by password
default tablespace dm
temporary tablespace temp;
c.给用户授权
grant connect,resource,dba to kaifa;
2013-07-16
java线程池使用说明
线程的使用在java中占有极其重要的地位,在jdk1.4极其之前的jdk版本中,关于线程池的使用是极其简陋的。在jdk1.5之后这一情况有了很大的改观。Jdk1.5之后加入了java.util.concurrent包,这个包中主要介绍java中线程以及线程池的使用。为我们在开发中处理线程的问题提供了非常大的帮助。
2013-07-16
xml操作及xml解析
一.xml操作简介:解析xml有sax和dom两种方式,dom方式中有dom4j、jdom、dom三种解析工具,其中dom4j性能最好
1.性能比较:sax效率比dom高(sax省内存,dom占内存)
2.操作比较:dom操作比sax简单(所以dom是最主流最常用的方式,就连大名鼎鼎的Hibernate也用dom4j)
3.使用选择:解析中小数据量的xml最好选dom4j,解析大数据量的xml最好选sax
二.用dom4j操作xml
2013-07-16
java读取配置文件
public class CommonParam {
private String propertyFileName;
private ResourceBundle resourceBundle;
public CommonParam() {
propertyFileName = "com/test/dao/SysConfig";
resourceBundle = ResourceBundle.getBundle(propertyFileName);
}
public String getString(String key) {
if (key == null || key.equals("") || key.equals("null")) {
return "";
}
String result = "";
try {
result = resourceBundle.getString(key);
} catch (MissingResourceException e) {
e.printStackTrace();
}
return result;
}
}
2013-07-16
dom4j解析xml字符串
publicvoid readStringXml(String xml) {
Document doc =null;
try {
// 读取并解析XML文档
// SAXReader就是一个管道,用一个流的方式,把xml文件读出来
//
// SAXReader reader = new SAXReader(); //User.hbm.xml表示你要解析的xml文档
// Document document = reader.read(new File("User.hbm.xml"));
// 下面的是通过解析xml字符串的
doc = DocumentHelper.parseText(xml); // 将字符串转为XML
Element rootElt = doc.getRootElement(); // 获取根节点
System.out.println("根节点:"+ rootElt.getName()); // 拿到根节点的名称
Iterator iter = rootElt.elementIterator("head"); // 获取根节点下的子节点head
// 遍历head节点
while (iter.hasNext()) {
2013-07-16
hibernate配置
二.创建持久化对象和映射文件
1.持久化对象创建
2.映射文件创建格式:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="持久化对象所在的包路径">
<class name="对应的持久化对象名" table="对应数据库中的表名">
<id name="数据库中表的主键名所对应的持久化对象中的属性名" column="对应数据库中表的主键名" type="java.lang.String(数据库中主键字段的数据类型)">
<generator class="assigned"></generator> //数据库中的主键生成策略
</id>
<property name="数据库中表的其它字段所对应的持久化对象中的属性名" column="对应数据库中表的其它字段名" type="java.lang.String(数据库中其它字段的数据类型)"/>
</class>
</hibernate-mapping>
三.配置hibernate.cfg.xml文件:该文件需放在src目录下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration> <!--Hibernate配置的根节点-->
<session-factory> <!--配置SessionFactory-->
<property name="dialect">org.hibernate.dialect.Oracle9Dialect</property> <!--数据库方言(数据库类型)-->
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property> <!--数据库驱动类名-->
<property name="connection.url">jdbc:oracle:thin:@IP:port:数据库名(数据库实例/sid)</property>
<property name="connection.username">数据库用户名</property>
<property name="connection.password">数据库密码</property>
<property name="show_sql">true</property>
<mapping resource="映射文件所在包/?.hbm.xml"/>
</session-factory>
</hibernate-configuration>
2013-07-16
hibernate笔记
课程内容 5
1 HelloWorld 5
2 Hibernate原理模拟 - 什么是O/R Mapping以及为什么要有O/R Mapping 5
3 常见的0/R框架(了解) 5
4 hibernate基础配置(重点) 5
5 ID生成策略(重点 AUTO) 5
6 Hibernate核心开发接口介绍(重点) 5
7 对象的三种状态(了解) 5
8 关系映射(重点) 5
9 Hibernate査询(HQL) 5
10 在Struts基础上继续完善BBS200 5
11 性能优化(重点) 5
12 补充话题 5
风格 5
1 先脉络,后细节 5
2 先操作,后原理 5
3 重Annotation,轻xml配置文件 5
资源 5
1 http://www. hibernate.org 5
2 hibernate zh_CN文档 5
3 hibernate annotation references 5
环境准备 5
1 下载hibernate-distribution-3.3.2.GA-dist 5
2 下载hibernate-annotations-3[1].4.0.GA 5
3 注意阅读hibernate compatibility matrix(hibernate 网站download) 5
4 下载slf4jl.5.8 6
Hibernate HelloWorld 6
1 建立新java 项目,名为hibernate_0100_HelloWorld 6
2 学习建User-library-hibernate,并加入相应的jar包 6
3 引入mysql的JDBC驱动包 6
4 在mysql中建立对应的数据库以及表 6
5 建立hibernate 配置文件hibernate.cfg.xml 6
6 建立Student 类 6
7 建立Student 映射文件 Student.hbm.xml 6
8 将映射文件加入到hibernate.cfg.xml中 6
9 写测试类Main,在Main中对Student对象进行直接的存储测试 6
10 FAQ: 6
2013-07-16
hibernate简介及优缺点
一.持久化:将内存中的瞬时态数据保存成数据库中持久态数据的操作
1.瞬时态:以new命令实例化后从未用session将其与数据库关联(保存)过的对象,如果没有任何变量/方法对其进行引用它将被JVM回收
2.持久态:用session的相关方法将瞬时态对象保存到数据库中与数据库相关联的对象
3.脱管态:将持久态对象所关联的session关闭后,该持久态对象即变为脱管态对象
二.ORM:ORM是对象到关系的映射(Object Relational Mapping),是将数据持久化的过程
1.Hibernate持久化类:Hibernate的持久化类是一个JavaBean(pojo+相应属性的getter和setter方法),该JavaBean最好实现java.io.Serializable接口
2.Hibernate映射文件:Hibernate映射文件是Hibernate与数据库进行持久化的桥梁
2013-07-16
hibernate操作数据库笔记
一.使用Hibernate的Session对象操作数据库
1.初始化Hibernate:在要使用Hibernate的类的方法中实例化Configuration对象并用Configuration对象的configure()方法将hibernate.cfg.xml中的配置加载到内存,即:
Configuration config = new Configuration().configure(); //该方法将到classpath下解析hibernate.cfg.xml中的配置,如果不用Hibernate默认的配置文件名和路径,可在该方法中指定Hibernate配置文件的名称和路径
2.用Configuration对象获取SessionFactory和Session对象:SessionFactory sf = Configuration对象.buildSessionFactory();Session session = SessionFactory对象.openSession();
注:由于SessionFactory是重量级对象,很耗资源,所以在获取SessionFactory对象时最好用单例模式获取,以确保一个应用中只有一个SessionFactory对象存在和线程安全,由于Session对象
是非线程安全的(尽管创建一个Session对象消耗的资源很小),所以在获取Session对象时候也最好用单例模式获取
3.提交并清空Session中缓存的数据后开始一个事务
Session对象.flush(); //将Session中的缓存内容提交到数据库
Session对象.clear(); //清空Session中的所有缓存(彻底清除会话)
Session对象.beginTransaction().begin(); //开始一个事务
4.用Session对象的以下方法操作数据
(1).save(Object obj);
(2).saveOrUpdate(Object obj);
(3).delete(Object obj); //只要删除的对象设置了主键的值就可以删除而无需先获取
(4).update(Object obj); //只要更新的对象设置了主键的值就可以更新而无需先获取
(5).get(Class classes,Serializable pk); //该方法会立即加载/获取数据(只要调用该方法就会立即向数据库发出查询语句),该方法只在内部缓存查找数据,如果内部缓存中没有数据就直接去数据库查询,当数据库中没有要查询的数据时返回null
(6).load(Class classes,Serializable pk); //该方法会延迟加载/获取数据(只有使用该对象中的字段时才会向数据库发出查询语句),该方法会在内部和二级缓存中查找数据,当数据库中没有要查询的数据时报ObjectNotFoundException异常
(7).createQuery(String HQL).list()/iterate()/uniqueResult(); //HQL(Hibernate Query Language)语句查询
2013-07-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人