CodeVerge.Net Beta


   Explore    Item Entry   Register  Login  
Microsoft News
Asp.Net Forums
IBM Software
Borland Forums
Adobe Forums
Novell Forums




Can Reply:  No Members Can Edit: No Online: Yes
Zone: > NEWSGROUP > Asp.Net Forum > starter_kits_and_source_projects.microsoft_application_blocks Tags:
Item Type: NewsGroup Date Entered: 11/14/2004 9:07:36 PM Date Modified: Subscribers: 0 Subscribe Alert
Rate It:
NR
XPoints: N/A Replies: 5 Views: 41 Favorited: 0 Favorite
6 Items, 1 Pages 1 |< << Go >> >|
jekatz
Asp.Net User
Search for a persistence framework11/14/2004 9:07:36 PM

0

Hello,
I'm buiding a web application with an Oracle DataBase. I have the defined the database sheme and the business objects classes. Is there a solution to generate for each business object the methods to retrieve data, to create, update and delete. In fact in my application I would like to use only Load, Create, Remove, Save methods on objects to interact with the database. I have heard from persitence framework. Has somebody already used this type of solution ? Or has somebody already written generic code that avoids to have to cope with data acccess in each business class. Is there a design pattern for this need ?
Thanks a lot for your help and suggestion.
parmarkanaiya
Asp.Net User
Re: Search for a persistence framework12/14/2004 12:35:23 PM

0


Hi there,

Well, in my organization, we have created custom tool. What it does - It generates DAL classes for each database table and on top of it, it creates BLL classes which internally inherits DAL classes. And in this way, basic BLL & DAL structure gets ready. Now, once you are ready with this, you can build further on top of this as per the requirements.

Hope this makes sense to you. If you want me to explain more in detail, please let me know.

Cheers !

Kanaiya Parmar
MCP, MCAD, MCSD

latticesoft
Asp.Net User
Re: Search for a persistence framework12/19/2004 6:07:02 PM

0

Basically, there are two approaches regarding persistence framework:

1. Code Generation: generate whole DAL based on metadata either from RDBMS or other source
2. O/R Mapping: either use dynamic SQL or Static SQL map objects to RDBMS

There are a lot of hot debates about which approach is better, IMO it all depends, it should be study case by case which approach you will be used to build your persistence framework.

There are some good open source and commeical code generation framework and O/R mapper, such as CodeSmith, NHiberate, LLBGen Pro, Entity Broker etc.

Our Persistence framework, Lattice.DataMapper(http://www.latticesoft.com), which support both Oracle and SQL Servere, is kind of mixing two approachs together, we have a XML/XSLT template based tool to generate stored procedures, data transfer object and xml mapping files as well as a persistence framework to map objects to RDBMS using external XML mapping files. So you do not need to write your CRUD operation for each business object again and again, below is code snippet to create a new employee record in Oracle SCOTT calling stored procedure Insert_EMP in EMP_PKG package which generated by our XML/XSLT code generator:

IDataMapper mapper = DataManager.GetInstance().Create("Mapping.config", "SCOTT");


EmployeeInfo employeeInfo = new EmployeeInfo();
employeeInfo.Name = "Joe";
....

//Creater a new record and return sequence number
int EmployeeID = mapper.Create("addEmployee", employeeInfo);


Here is XML mapping file layout:

<command name="addEmployee" type="storedprocedure" returnType="Identity">
<commandtext>EMP_PKG.Insert_EMP</commandtext>
<parameter name="ENAME" fieldName="Name" direction="Input" />
<parameter name="JOB" fieldName="Title" direction="Input" />
<parameter name="HIREDATE" fieldName="HireDate" direction="Input" />
<parameter name="EMPNO" fieldName="EmployeeID" dbType="Integer" direction="OutPut" />
</command>


Here is XML configuration file layout:

<dataProviders>
<dataProvider name="SqlClient"
connectionType="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0,

Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>

<dataProvider name="OracleClient"
connectionType="System.Data.OracleClient.OracleConnection, System.Data.OracleClient,

Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
</dataProviders>
<dataSources>
<dataSource name="NORTHWIND"
provider="SqlClient"
connectionString="Server=(local);Database=northwind;User ID=sa;Password="
dataMappingDir="/Map/SQLServer/"
/>
<dataSource name="SCOTT"
provider="OracleClient"
connectionString="Data Source=lattice; User ID=SCOTT; Password=TIGER"
dataMappingDir="/Map/Oracle/"
/>
</dataSources>

Li Xin
Get it Done! Simple is Best!
Lattice.DataMapper Persistence Framework for .NET
publicschoolportal.com
MyGeneration
Asp.Net User
Re: Search for a persistence framework1/14/2005 6:35:39 PM

0

Try MyGeneration's dOOdads architecture, it supports Oracle, it can generate both your C# or VB.NET business entities and your Oracle Stored Procedures, plus you can customize or make your own templates.

MyGeneration for .NET - Code Generator / OR Mapper
See http://www.mygenerationsoftware.com
erdsah88
Asp.Net User
Re: Search for a persistence framework3/21/2005 11:52:01 AM

0

After a while There are "3" kinds MAPPINGS
to entity classes to database tables.

Developer has to these 3 choices.

FIRST CHOICE
----------------------
Map them by hand or use a code generator.
Which seems like building a building on the ground and making it straight when u have finished it.If the requirements change(....they always change).U just have to crash your own building which u have spend your months.it seems like fun in the begining as easy to learn but , it is an horrible architecture...

SECOND CHOICE
----------------------
Using an OR / Mapper tool(can deal with objects or brokers).Which seems cool to some people.But the reality is MS even does not beleive in it.Consider u are building the same building,u are still going to develop the building on the ground but have a "special way to straight up the building"(using XML mapper files or other things).it is really cool when u are building tiny houses.But when the domain logic gets complicated it does not help u any,worse ir has got LIMITATIONS and u have to trust the OR mapper vendor....And the mapping even gets more complicated and u have to learn O/R Mappers way to persist things ....(it is in fact no different than the first method,if the requirements change u still have to crash your building)
By the way did u ever think why MS does not hurry up with objectspaces????

THIRD CHOICE.....the final
--------------------------
this is a way which not many developers are used to.it is called AOM,Adaptive object modelling, some people call it metamodel pattern or Dynamic object modelling(composition of 6 design patterns)....by Yoder&Foote .In this case u never build the on the ground and instead of doing that u build a FACTORY which does all the work for u.
All u need is to undertsnad that u need 4 things (entities,attributes,values and types)(type square pattern).With AOM u have a factory of your entities.
it is not that hard to build a factory .But once u build the factory then u no longer have to worry about mapping it to user interface.it works great with model view controller(MVC).And it is FLEXIBLE.When it comes to develop things it is really easy and u can cuild what ever u want. u CAN CHANGE THE REQUIREMENTS at any time without crashing your own building.The commercial systems always prefer this kind of development as whey will never know what they will sell tommorrow,and the attirbutes,relations and values of the products tomorrow.A developer can easliy start to develop and time to market the software is great.U have runtime entities.Please take a look at SQL yukon CLR integration with Stored procedures and look where MS is going,they are helping us to build a factory they are not giving a way for us to crash our own buildings.

Stop wasting your valuable time doing the first and second choices people do pay developers as they develop not as they crash their own product.

PS: AOM will pay it self in the long run.

PS2: more then %65 of software do not fullfill their requirements
Webmaster:emlak
andreaslev
Asp.Net User
Re: Search for a persistence framework3/25/2005 8:55:02 AM

0

You might consider Genome (http://www.genom-e.com/) in your research, it supports Oracle and has a powerful Object Query Language with reusable queries. The performance is also suitable for Enterprise applications.
6 Items, 1 Pages 1 |< << Go >> >|


Free Download:

Books:
Kylix: The Professional Developer's Guide and Reference Authors: Jon Shemitz, Pages: 943, Published: 2002
Programming Jakarta Struts: Building Web Applications with Servlets & JSPs. Complete Coverage of 1.1 Authors: Chuck Cavaness, Pages: 470, Published: 2004
Better, Faster, Lighter Java Authors: Bruce Tate, Justin Gehtland, Pages: 243, Published: 2004
IBatis in Action Authors: Clinton Begin, Clive Begin, Brandon Goodin, Larry Meadors, Pages: 350, Published: 2007
Beginning JavaServer Pages Authors: Vivek Chopra, Jon Eaves, Rupert Jones, Sing Li, John T. Bell, Pages: 1262, Published: 2005
Agile Database Techniques: Effective Strategies for the Agile Software Developer Authors: Scott W. Ambler, Pages: 447, Published: 2003
Spring: A Developer's Notebook Authors: Bruce Tate, Justin Gehtland, Michael Kosta Loukides, Pages: 184, Published: 2005
Java Persistence for Relational Databases Authors: Richard Sperko, Pages: 337, Published: 2003
Oracle Application Server 10g Web Development: Build and Deploy Web-Based Applications in the Oracle Environment Authors: Chris Ostrowski, Bradley D. Brown, Pages: 747, Published: 2004

Web:
hibernate.org - Hibernate Hibernate Search brings full text queries to Hibernate:. transparent object indexing,; natural API / persistence context integration to Hibernate and JPA ...
Object Persistence Framework - TYPO3Wiki NB: These notes were written in the context of a search for a persistence framework suitable for integrating with the standard extension development ...
Tim Boudreau's Blog: A Little Persistence Framework for Wicket =)I find persistence through object database more appealing than O/R regardless of your framework is not so trivial to understand. ...
Apache::Session - A persistence framework for session data ... Apache::Session is a persistence framework which is particularly useful for tracking session data between httpd requests. Apache::Session is designed to ...
Persistence Framework - struts4php Oct 31, 2007 ... From struts4php. Jump to: navigation, search. Persistence Framework. struts4php provides its own Persistence Framework. ...
Application Generation: What Should a Persistence Framework Do? Jul 14, 2008 ... What a persistence framework needs to do depends heavily on your use ..... Search. Subscribe. Enter your email address to subscribe to this ...
jlynx-persistence-framework - Google Code jlynx-persistence-framework · Thin, lite, fast persistence ... In the text field , you may enter simple search terms, or add any of the search operators ...
Floggy - J2ME persistence framework - Welcome to Floggy Floggy is a free object persistence framework for J2ME/MIDP applications. The main goal of this framework is to abstract the data persistence details from ...
Welcome to IEEE Xplore 2.0: The SPEEDES persistence framework and ... We provide an overview of the SPEEDES persistence framework that is currently used to ... Advanced or Author Search • CrossRef Search • AbstractPlus Records ...
ESRI Training and Education - Library: Search Results: Usage of ... In this paper the authors present the works and research of the persistence framework integration into 3D geodata servers for city and landscape models. ...

Videos:
Jean Louis Leroy - Tangram T-3 Building Object Persistence (and more) Perl Programming Talks at YAPC::Braga You can find more information on the speaker's site: * Talk: http://www.soundobjectlogic.com/FOSDEM2005....
JAVAWUG BOF XX Petstore RIFE Edition Emmanuel Okyere Welcome to the another edition of the JAVAWUG. This is a recording of the Birds-of-a-Feather meetup XX (number 20). Emmanuel Okyere talks about the ...
Correcting Global Imbalances: "Avoiding the Blame Game" Rodrigo de Rato, Managing Director of the International Monetary Fund, addressed members of the Foreign Policy Association and the finance community ...
Using ROSE to Mitigate Performance Trade-offs Google TechTalks April 03, 2006 Daniel Quinlan ROSE is a tool for building source-to-source transformation tools for the optimization of C and C++ ...
Xinjiang – Securing China’s Second Shore 3-D GIS Geovisual Michael Patrick, UW Dept. of Geography The Xinjiang Uygur Autonomous Region is arguably the remotest province of China, sparsely populated, land...
Web Applications and the Ubiquitous Web Google TechTalks February 1, 2006 Dave Raggett Dave Raggett is currently a W3C Fellow from Canon, and W3C Activity Lead for Multimodal Interaction....
Zero Configuration networking with Bonjour Google TechTalks November 2, 2005 Dr. Stuart Cheshire, Apple Computer http://www.stuartcheshire.org/ ABSTRACT The desirability of making IP networ...
django: Web Development for Perfectionists with Deadlines Google TechTalks April 26, 2006 Jacob Kaplan-Moss ABSTRACT Django is one of the premier web frameworks for Python, and is often compared to Ruby-on...
Reversal of Fortune: Casino Gambling in Indian Country Often described by some media writers as the "new buffalo," casino gambling has allowed a few tribes to reverse centuries-long conditions of poverty ...












custom publisher pattern question

help with callback code for beginexecutenonquery

ent lib 2.0 logging block timestamp offset by 4 hours

help setting up exception handling/logging application blocks, and an odd logging issue...

retrieving data for a specific user

login failed for user 'myuser'.

data access application block

database logging using enterprise library 2.0

exception management application block (emab)

graph navigation tool

enterprise library data access and oracle output parameter

dataset query

loking type

genericdatabase not passing parameter to stored proc

methodinvoker?

deploy smart client that uses caching app block

enterprise library data access - close connection...

help! errors in web.config

how to handle decimal precision & scale with daab addoutparameter?

parameter caching

dbcommandwrapper

xmlschemaexception in app.config using uip application block

caching examples and/or articles wanted

enterprise library configuration tool error

microsoft.applicationblocks.exceptionmanagement and caching

sybase and enterprise library

updatedataset method of the new data application block

oracle dataaccess -- executedataset wrong?

worth using??

problem connecting to database using enterprise 3.1

 
Search This Site:

 
  Privacy | Contact Us
All Times Are GMT