- 浏览: 44233 次
- 性别:
- 来自: 珠海
-
最新评论
文章列表
创建这个简单的Web应用
mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch05 \
-DartifactId=simple-webapp \
-DpackageName=org.sonatype.mavenbook \
-DarchetypeArtifactId=maven-archetype-webapp
packaging 元素包含的值是 war 。这种打包类型配置让 Maven 以 WAR 文件的形式生成一个 web 应用。
配置Jetty插件
<project>
[...]
& ...
首先,用 Maven Archetype 插件创建这个 simple weather 项目的基本轮廓。 运行下面的命令,创建新项目
mvn archetype:create \
-DgroupId=org.sonatype.mavenbook.ch04 \
-DartifactId=simple-weather \
-DpackageName=org.sonatype.mavenbook \
-Dversion=1.0
* 给 archetype:create 目标传入了 version 参数。它覆写了默认值 1.0-SNAPSHOT ...
Hibernate是ORM的解決方案,其底層對資料庫的操作依賴於JDBC,所以您必須先取得JDBC驅動程式,在這邊所使用的是MySQL,所以您必須至 MySQL® Connector/J 取得MySQL的JDBC驅動程式。
接下來至 Hibernate 官方網站 取得Hibernate 3.2、Hibernate Annotations 3.2。
您必須安裝JDK 5.0才可以使用Hibernate Annotations的功能。
解開Hibernate 3.2的zip檔案後,當中的hibernate3.jar是必要的,而在lib目錄中還包括了許多jar檔案,您可以在 H ...
一、创建简单的项目
mvn archetype:create \
-DgroupId="org.sonatype.mavenbook.ch03" \
-DartifactId=simple \
-DpackageName="org.sonatype.mavenbook"
mvn是Maven2的命令
archetype:create 称为一个Maven目标(goal),类似于Ant中的target.这个目标的目的就是通过archetype快速创建一个项目.
*一个archetype被定义为"一个原始的模型或类型,在它之后 ...
一对一关联有(主键关联)单向关联和双向关联和唯一外键关联三种模式
首先了解单向关联.假设有User(客户)和(Accounts )银行帐号管理两个对象.一个用户只可能有一个帐号.说明这个客户持有一个银行帐号.所以Accounts的主键自动生成,而User的主键来源于Accounts.关键点就是User.hbm.xml中的配置,配置细节如下:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//E ...
述User类和Group类,User类中的多个实例是属于Group中的某个实例.这个模型就表现多对一.这种关联我们称为many2one.因为是多个用户属于一个组,那肯定这个用户知道自己是哪个组的,所以,这个用户就应该持有这个组.先建立Group这个对象.因为这个Group不知道用户的存在,所以这个对象里面的属性都是常规属性.
考虑到测试方便,把这个id改成int类型,因为uuid是32位字符串看不清楚.以后使用还是建议用uuid.
package net.knight.hibernate;
public class Group {
private int id;
pr ...
Query接口主要实现使用HQL或SQL语句查询数据列表.
public void testByQuery() {
Session session = null;
Transaction ts = null;
try {
session = HibernateUtils.getSession();
ts = HibernateUtils.getTransaction(session);
// 创建一个Query,这个参数就是HQL语言.
// form User的意思就是查询User这个对象.
Query query = s ...
实际上前面已经实现了怎么insert数据,怎么update数据.现在了解怎么查询数据.在hibernate中叫加载数据.有两个方法,分别是get和load.
package net.knight.hibernate.test;
import net.knight.hibernate.User;
import net.knight.hibernate.utils.HibernateUtils;
import org.hibernate.Session;
import org.hibernate.Transaction;
import junit.framework.Test ...
因为SessionFactory是一个重量级对象,最好是只创建一次,所以,将SessionFactory做一个封装,先建立一个工具类把它封装起来.工具类名称设置为HibernateUtils
package net.knight.hibernate.utils;
import org.hibernate.Session;
import org.hibernate.SessionFactory; ...
1.从User.java这个对象来看,这里没有任何和Hibernate相关的类,这个对象就是一个纯粹的POJO对象.所以说Hibernate是没有侵入性了,我们完全可以写多个dao,一个Hibernate实现,还可以写一个JDBC实现,相互之间都不会有影响.
2.关注对象,而不是关注表.hibernate会自动帮我们处理表中的事务.
3.Hibernate正确的开发方式是先建立对象模型,也可以称为领域模型.建立起来后建立映射关系,再到出表到数据库,再开发应用.如果先设计数据库,在感觉上开发并不是那么OO了.对象更能体现显示世界中事务之间的关系.
4.Configurati ...
Hibernate持久层框架的使用 首先建立一个Java Project,Hibernate的测试非常简单,没有环境要求,只需要几个Hibernate的jar包就可以测试,所以Hibernate没有侵入性,称为轻量级框架. 现在将步骤列举如下,供复习使用,: 一、配置Hibernate环境 1.拷贝Hibernate需要的jar包: *Hibernate_HOME/Hibernate.jar *Hibernate_HOME/lib/*.jar *MySQL jdbc驱动(这里使用MySQL作为数据库) 2.创建hibernate.cfg. ...