Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> GWT,HSQLDB, Apache Cayenne 3.0 нужна помощь. 
:(
    Опции темы
stan90
Дата 25.10.2011, 23:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 12.11.2009

Репутация: нет
Всего: нет



здравствуйте.
не могу разобраться.
нужно с помощью GWT,HSQLDB, Apache Cayenne 3.0  сделать добавление в базу,редактирование и сохранение.
БД состоит из одной таблицы TREE, содержащей данные о посаженных деревьях: name – наименование сорта дерева, plant_date – дата посадки дерева и alive (true/false) – живо ли дерево

мне не понятно как вообще подключиться к базе и в нее предавать что-то?
и где этот код вставить?в класс клиента или еще куда?
и где писать создание экранных форм,тоже в клиенте?


вот имеющийся код:

для сервера
Код

package com.nic.test.server;

import java.util.Date;

import org.apache.cayenne.DataObjectUtils;
import org.apache.cayenne.access.DataContext;

import com.nic.test.server.data.Tree;

public class CayenneBenchmark {
    static final DataContext context = DataContext.createDataContext();
    
    public static void main(String[] args) {
        Object id = createTestData();
        updateTestData(id);
        removeTestData(id);
    }
    
    private static Object createTestData() {
        //create and register new object
        Tree tree = context.newObject(Tree.class);
        
        //set properties
        tree.setName("Pine");
        tree.setPlantDate(new Date());
        tree.setAlive(true);
        
        //commit changes
        context.commitChanges();
        
        //return new object's ID
        return DataObjectUtils.pkForObject(tree);
    }

    private static void updateTestData(Object id) {
        //fetch object
        Tree tree = DataObjectUtils.objectForPK(context, Tree.class, id);
        
        //update properties
        tree.setAlive(false);
        
        //commit changes
        context.commitChanges();
    }
    
    private static void removeTestData(Object id) {
        //fetch object
        Tree tree = DataObjectUtils.objectForPK(context, Tree.class, id);
        
        //remove it
        context.deleteObject(tree);
        
        //commit changes
        context.commitChanges();
    }
    
}



для параметров дерева:
Код

package com.nic.test.server.data.auto;

import java.util.Date;

import org.apache.cayenne.CayenneDataObject;

/**
 * Class _Tree was generated by Cayenne.
 * It is probably a good idea to avoid changing this class manually,
 * since it may be overwritten next time code is regenerated.
 * If you need to make any customizations, please use subclass.
 */
public abstract class _Tree extends CayenneDataObject {

    public static final String ALIVE_PROPERTY = "alive";
    public static final String NAME_PROPERTY = "name";
    public static final String PLANT_DATE_PROPERTY = "plantDate";

    public static final String TREE_ID_PK_COLUMN = "tree_id";

    public void setAlive(Boolean alive) {
        writeProperty("alive", alive);
    }
    public Boolean getAlive() {
        return (Boolean)readProperty("alive");
    }

    public void setName(String name) {
        writeProperty("name", name);
    }
    public String getName() {
        return (String)readProperty("name");
    }

    public void setPlantDate(Date plantDate) {
        writeProperty("plantDate", plantDate);
    }
    public Date getPlantDate() {
        return (Date)readProperty("plantDate");
    }

}


и сам скрипт БД:
Код

CREATE SCHEMA PUBLIC AUTHORIZATION DBA
CREATE CACHED TABLE TREE(ALIVE BOOLEAN NOT NULL,NAME VARCHAR(100) NOT NULL,PLANT_DATE TIMESTAMP NOT NULL,TREE_ID BIGINT NOT NULL PRIMARY KEY)
CREATE MEMORY TABLE AUTO_PK_SUPPORT(TABLE_NAME CHAR(100) NOT NULL PRIMARY KEY,NEXT_ID BIGINT NOT NULL)
CREATE USER SA PASSWORD ""
GRANT DBA TO SA
SET WRITE_DELAY 20
SET SCHEMA PUBLIC
INSERT INTO AUTO_PK_SUPPORT VALUES('TREE',200)


буду благодарен за помощь.
или подобный пример и полезные ссылки.


Это сообщение отредактировал(а) stan90 - 25.10.2011, 23:32
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0492 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.